rpk cluster self-test start

Starts one or more benchmark tests on one or more nodes of the cluster.

Redpanda self-test runs benchmarks that consume significant system resources. Do not start self-test if large workloads are already running on the system.

Available tests to run:

  • Disk tests:

** Throughput test: 512 KB messages, sequential read/write
   *** Uses a larger request message sizes and deeper I/O queue depth to write/read more bytes in a shorter amount of time, at the cost of IOPS/latency.
** Latency and io depth tests: 4 KB messages, sequential read/write, varying io depth
   *** Uses small IO sizes and varying levels of parallelism to determine the relationship between io depth and IOPS
   *** Includes one test without using dsync (fdatasync) on each write to establish the cost of dsync
** 16 KB test
   *** One high io depth test at 16 KB to reflect performance at Redpanda's default chunk size
  • Network tests:

** Throughput test: 8192-bit messages
   *** Unique pairs of Redpanda nodes each act as a client and a server.
   *** The test pushes as much data over the wire, within the test parameters.
  • Cloud storage tests

    • Configuration/Latency test: 1024-byte object.

    • If cloud storage is enabled (cloud_storage_enabled), a series of remote operations are performed:

*** Upload an object (a random buffer of 1024 bytes) to the cloud storage bucket/container.
*** List objects in the bucket/container.
*** Download the uploaded object from the bucket/container.
*** Download the uploaded object's metadata from the bucket/container.
*** Delete the uploaded object from the bucket/container.
*** Upload and then delete multiple objects (random buffers of 1024 bytes) at once from the bucket/container.

This command prompts users for confirmation (unless the flag --no-confirm is specified), then returns a test identifier ID, and runs the tests.

To view the test status, poll rpk cluster self-test status. Once the tests end, the cached results will be available with rpk cluster self-test status.

Usage

rpk cluster self-test start [flags]

Flags

Value Type Description

--cloud-backoff-ms

uint

The backoff in milliseconds for a cloud storage request.

--cloud-timeout-ms

uint

The timeout in milliseconds for a cloud storage request.

--disk-duration-ms

uint

The duration in milliseconds of individual disk test runs.

--network-duration-ms

uint

The duration in milliseconds of individual network test runs.

--no-confirm

bool

Acknowledge warning prompt skipping read from stdin.

--only-cloud-test

bool

Runs only cloud storage verification.

--only-disk-test

bool

Runs only the disk benchmarks.

--only-network-test

bool

Runs only network benchmarks.

--participant-node-ids

intSlice

Comma-separated list of broker IDs that the tests will run on. If not set, tests will run for all node IDs.

Global flags

Value Type Description

--config

string

Redpanda or rpk config file; default search paths are ~/.config/rpk/rpk.yaml, $PWD/redpanda.yaml, and /etc/redpanda/redpanda.yaml.

-X, --config-opt

stringArray

Override rpk configuration settings; -X help for detail or -X list for terser detail.

--ignore-profile

bool

Ignore rpk.yaml and redpanda.yaml; use default settings.

--profile

string

rpk profile to use.

-v, --verbose

bool

Enable verbose logging.

Suggested reading