Broker Configuration Properties

Broker configuration properties are applied individually to each broker in a cluster.

After you change a broker-level property setting, you must restart the broker for the change to take effect.

To learn how to set these properties from studying a sample configuration file, see the broker configuration sample.

Required properties

You must include this property in your configuration for Redpanda to start.


Path to the directory for storing Redpanda’s streaming data files.

Optional properties


IP address and port of the admin server.



Path to the admin API documentation directory.

Default: /usr/share/redpanda/admin-api-doc


TLS configuration for the Admin API.

Default: null


Addresses of Kafka API published to clients.

Default: empty array


Address of the RPC endpoint published to other cluster members.

Default: null


The directory where the cache archive is stored. This property is mandatory when cloud_storage_enabled is set to true.

Default: null


IP address and port for supervisor service.



A limit on the number of consecutive times a broker can crash within one hour before its crash-tracking logic is reset. This limit prevents a broker from getting stuck in an infinite cycle of crashes.

If null, the property is disabled and no limit is applied.

The crash-tracking logic is reset (to zero consecutive crashes) by any of the following conditions:

  • The broker shuts down cleanly.

  • One hour passes since the last crash.

  • The broker configuration file, redpanda.yaml, is updated.

  • The startup_log file in the broker’s data_directory is manually deleted.

Units: number of consecutive crashes of a broker

Default: 5


Path to the directory where the HTTP dashboard is located.

Default: null


Enabling developer_mode isn’t recommended for production use.

Flag to enable developer mode, which skips most of the checks performed at startup.

Default: false


Controls how a new cluster is formed. This property must have the same value in all brokers in a cluster.

If true, an empty seed_servers list denotes that this broker should form a cluster. At most, one broker in the cluster should be configured with an empty seed_servers list. If no such configured broker exists, or if configured to be false, then all brokers denoted by the seed_servers list must be identical in their configurations, and those brokers form the initial cluster.

This is set to true by default for backward compatibility, but Redpanda recommends setting empty_seed_starts_cluster to false.

Default: true


IP address and port of the Kafka API endpoint that handles requests.



Transport Layer Security (TLS) configuration for the Kafka API endpoint.

Default: null


Enables log warning messages for memory allocations greater than the given threshold size, in bytes.

If set to null, the property is disabled, so no log messages are enabled.

If enabled, the log warnings are rate limited: the first warning will be for any allocation greater than or equal to the configured threshold, then for every subsequent warning the threshold is increased by 1.618x the current threshold.

Units: bytes per memory allocation

Default: null


A number that uniquely identifies the broker within the cluster. If null (the default value), Redpanda automatically assigns an ID. If set, it must be non-negative value.

The node_id property must not be changed after a broker joins the cluster.

Default: null

Range: [0, …​]


A label that identifies a failure zone. Apply the same label to all brokers in the same failure zone. When enable_rack_awareness is set to true at the cluster level, the system uses the rack labels to spread partition replicas across different failure zones.

Default: null


IP address and port for the Remote Procedure Call (RPC) server.



TLS configuration for the RPC server.

Default: null


List of seed servers used to join an existing cluster.

If a cluster does not already exist:

  • When empty_seed_starts_cluster is true, if the seed_servers list is empty, this broker will be the cluster root to form a new cluster that other brokers subsequently join. Exactly one broker in the cluster should set seed_servers to be empty when first bootstrapping a cluster. For brokers that are not the root broker, this is the list of brokers used to join the cluster.

  • Otherwise, when empty_seed_starts_cluster is false, this refers to the list of brokers that initially bootstrap the cluster. In this case, seed_servers cannot be empty, and seed_servers must be identical for all brokers in that list. For brokers not in the seed_servers list, this is the list of brokers used to join the cluster.

Default: null