rpk redpanda tune

Sets the OS parameters to tune system performance.

Available tuners:

  • all.

  • aio_events

  • ballast_file

  • clocksource

  • coredump

  • cpu

  • disk_irq

  • disk_nomerges

  • disk_scheduler

  • disk_write_cache

  • fstrim

  • net

  • swappiness

  • transparent_hugepages

To learn more about a tuner, run rpk redpanda tune help <tuner name>.

This command is only available on Linux.
Do not use this command in Azure self-managed environments.
  • When running rpk redpanda tune, make sure that your current Linux user has root privileges. The autotuner requires privileged access to the Linux kernel settings.

  • To run rpk redpanda tune all on a Redpanda broker automatically after broker or host restarts, configure the service redpanda-tuner, which runs rpk redpanda tune all, to run at boot-up:

    • For RHEL, after installing the rpm package, run systemctl to both start and enable the redpanda-tuner service:

      sudo systemctl start redpanda-tuner
      sudo systemctl enable redpanda-tuner
    • For Ubuntu, after installing the apt package, run systemctl to start the redpanda-tuner service (which is already enabled):

      sudo systemctl start redpanda-tuner

Usage

rpk redpanda tune [list of elements to tune] [flags]

Subcommands

Command Description

rpk redpanda tune help

Display detailed information about the tuner.

rpk redpanda tune list

List available redpanda tuners and check if they are enabled and supported by your system To enable a tuner it must be set in the redpanda.yaml configuration file under rpk section, e.g: [,yaml] ---- rpk:

Flags

Value Type Description

--cpu-set

string

Set of CPUs for tuners to use in cpuset(7) format; if not specified, tuners will use all available CPUs.

-r, --dirs

stringSlice

List of data directories or places to store data (for example, /var/vectorized/redpanda/); usually your XFS filesystem on an NVMe SSD device.

-d, --disks

stringSlice

Lists of devices to tune f.e. sda1.

-m, --mode

string

Operation Mode. Acceptable values: (sq, sq_split, mq).

-n, --nic

stringSlice

Network Interface Controllers to tune.

--node-tuner-state-path

string

Alternative path to write the tuner state file to (default: /var/run/redpanda_node_tuner_state.yaml).

--output-script

string

If a filename is provided, it will generate a tuning file that can later be used to tune the system.

--reboot-allowed

bool

Allow tuners to tune boot parameters and request system reboot.

--timeout

duration

The maximum time to wait for the tune processes to complete (for example, 300ms, 1.5s, 2h45m).

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.

Examples

This section provides examples of how to use rpk redpanda tune.

This section provides examples of using the autotuner.

  • To enable a predetermined set of tuners for production, run the rpk redpanda mode prod command. This command modifies settings in the redpanda.yaml configuration file.

  • To list the available tuners and to see whether they’re enabled or supported (and a reason for if they’re unsupported), run the rpk redpanda tune list command.

  • To enable or disable a tuner, run the rpk redpanda config set, as the tuner flags are configurable node properties.

    • Each tuner has a YAML key flag for enabling/disabling itself in redpanda.yaml. Most are formed by prepending rpk.tune_ to the name of the tuner listed by rpk redpanda tune list. See the Tuners reference for the exact key for a tuner. For an example of enabling a tuner, the key for the aio_events tuner is rpk.tune_aio_events, and it can be enabled with the following command:

      rpk redpanda config set rpk.tune_aio_events true
  • To run all available tuners, use the rpk redpanda tune command for all:

    rpk redpanda tune all
  • To run a specific tuner, use the rpk redpanda tune command for the tuner:

    rpk redpanda tune <tuner>
  • To learn more about a tuner, use the rpk redpanda tune help command for the tuner:

    rpk redpanda tune help <tuner>

    See also the Tuners reference for descriptions about each tuner.