...
Configuration Key | Deprecated | Removed | Reason |
---|---|---|---|
message.format.version | Kafka 3.0 | Kafka 4.0 | KRaft clusters have always used RecordVersion.V2. This will continue to be true in Kafka 4.0. So there is no need for this configuration any more. If we decide to migrate to a new on-disk format some day, we'll probably use a new mechanism to do so, not a static configuration key. However, no such migration is planned currently. |
inter.broker.protocol.version | Kafka 3.7 | Kafka 4.0 | In KRaft mode, inter.broker.protocol.version is ignored except for when formatting directories. In Kafka 4.0, it will be removed entirely to avoid confusion. The desired metadata version when running the format tool can be selected via the command line. |
leader.imbalance.per.broker.percentage | Kafka 3.7 | Kafka 4.0 | KRaft mode has never implemented leader.imbalance.per.broker.percentage. Instead, if leader balancing is turned on, we try to use the preferred replica for all partitions. Therefore, this configuration is not needed. |
controlled.shutdown.max.retries | Kafka 3.7 | Kafka 4.0 | This is not used in KRaft since the controlled shutdown mechanism relies on heartbeat responses, not RPCs sent from the active controller. |
controlled.shutdown.retry.backoff.ms | Kafka 3.7 | Kafka 4.0 | This is not used in KRaft since the controlled shutdown mechanism relies on heartbeat responses, not RPCs sent from the active controller. |
password.encoder.secret | Kafka 3.7 | Kafka 4.0 | This relates to how secrets are stored in ZK, which is not relevant with KRaft |
password.encoder.old.secret | Kafka 3.7 | Kafka 4.0 | This relates to how secrets are stored in ZK, which is not relevant with KRaft |
password.encoder.keyfactory.algorithm | Kafka 3.7 | Kafka 4.0 | This relates to how secrets are stored in ZK, which is not relevant with KRaft |
password.encoder.cipher.algorithm | Kafka 3.7 | Kafka 4.0 | This relates to how secrets are stored in ZK, which is not relevant with KRaft |
password.encoder.key.length | Kafka 3.7 | Kafka 4.0 | This relates to how secrets are stored in ZK, which is not relevant with KRaft |
password.encoder.iterations | Kafka 3.7 | Kafka 4.0 | This relates to how secrets are stored in ZK, which is not relevant with KRaft |
zookeeper.connect | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.session.timeout.ms | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.connection.timeout.ms | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.set.acl | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.max.in.flight.requests | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.client.enable | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.clientCnxnSocket | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.keystore.location | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.keystore.password | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.keystore.type | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.truststore.location | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.truststore.password | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.truststore.type | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.protocol | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.enabled.protocols | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.cipher.suites | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.endpoint.identification.algorithm | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.crl.enable | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
zookeeper.ssl.ocsp.enable | Kafka 3.57 | Kafka 4.0 | This is a ZK connection configuration which is not relevant with KRaft |
broker.id.generation.enable | Kafka 3.37 | Kafka 4.0 | Related to automatic broker ID generation, which KRaft does not support. (See KIP-631) |
reserved.broker.max.id | Kafka 3.37 | Kafka 4.0 | Related to automatic broker ID generation, which KRaft does not support. (See KIP-631) |
control.plane.listener.name | Kafka 3.37 | Kafka 4.0 | We no longer need to maintain a separate listener for messages from the controller, since the controller does not send messages out any more (it receives them). (See KIP-631) |
zookeeper.metadata.migration.enable | Kafka 4.0 | Kafka 4.0 | This configuration is used to migrate from ZK mode to KRaft. Since ZK mode is no longer supported in AK 4.0, this configuration will no longer be needed. Note that this configuration breaks the usual pattern of being deprecated prior to being removed. This is necesary because we certainly don't intend to deprecate migration in 3.7, but neither do we want to support it once ZK mode is gone. So this is a special case. |
...
The CurrentControllerId
metric shows the ID of the controller, as seen by the node in question. If the current node doesn't think there is an active controller, the value of thisd metric will be -1.
Why create this metric, when ActiveControllerCount
already exists? The answer is that in KRaft mode, ActiveControllerCount
is only exposed on controller nodes, not on broker nodes. That makes it impossible to monitor what the brokers think the current active controller is.
ZkMigrationPhase
Name | Context | Type | Mode | Description |
---|---|---|---|---|
kafka.server:type=ZkMigration,name=ZkMigrationPhase | Broker and Controller | Integer | KRaft and ZK | Outputs the phase of the ZK migration. |
ZkMigrationPhase
indicates the "phase" of the ZK migration.
...