rpk redpanda config set

Set node configuration values, such as the list of seed servers or the ports that various APIs listen on.

This command modifies the redpanda.yaml you have locally on disk. The first argument is the key within the yaml representing a property / field that you would like to set. Nested fields can be accessed through a dot:

rpk redpanda config set redpanda.developer_mode true

All values are parsed as yaml and, since yaml is a superset of json, you can also format your input as json. Individual specific fields or full structs can be set:

rpk redpanda config set rpk.tune_disk_irq true \
rpk redpanda config set redpanda.rpc_server '{address: 3.250.158.1, port: 9092}'

You can set an entire array by wrapping all items with braces, or by using one struct:

rpk redpanda config set redpanda.advertised_kafka_api '[{address: 0.0.0.0, port: 9092}]' \
rpk redpanda config set redpanda.advertised_kafka_api '{address: 0.0.0.0, port: 9092}' # same

Indexing can be used to set specific items in an array. You can index one past the end of an array to extend it:

rpk redpanda config set redpanda.advertised_kafka_api[1] '{address: 0.0.0.0, port: 9092}'

You may also use <key>=<value> notation for setting configuration properties:

rpk redpanda config set redpanda.kafka_api[0].port=9092
This command is only available on Linux.

Usage

rpk redpanda config set <key> <value> [flags]

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.