Jakub Scholz created KAFKA-17788:
------------------------------------
Summary: Migration fails in Kafka 3.9.0-RC2 when control plane
listener is used
Key: KAFKA-17788
URL: https://issues.apache.org/jira/browse/KAFKA-17788
Project: Kafka
Issue Type: Bug
Reporter: Jakub Scholz
Attachments: logs-pod-cluster-9833cba6-kafka-1-container-kafka.log
When testing migration with Kafka 3.9.0-RC2, the broker fail to start when they
are first rolled to start the migration with the following error:
{code}
2024-10-11 21:37:04,060 ERROR Exiting Kafka due to fatal exception
(kafka.Kafka$) [main]
java.lang.IllegalArgumentException: requirement failed:
control.plane.listener.name must be a listener name defined in
advertised.listeners. The valid options based on currently configured listeners
are REPLICATION-9091,PLAIN-9092,TLS-9093
at scala.Predef$.require(Predef.scala:337)
at kafka.server.KafkaConfig.validateValues(KafkaConfig.scala:1019)
at kafka.server.KafkaConfig.<init>(KafkaConfig.scala:843)
at kafka.server.KafkaConfig.<init>(KafkaConfig.scala:185)
at kafka.Kafka$.buildServer(Kafka.scala:71)
at kafka.Kafka$.main(Kafka.scala:90)
at kafka.Kafka.main(Kafka.scala)
{code}
This is despite our configuration having the {control.plane.listener.name}
properly configured:
{code}
listener.security.protocol.map=CONTROLPLANE-9090:SSL,REPLICATION-9091:SSL,PLAIN-9092:SASL_PLAINTEXT,TLS-9093:SSL
listeners=CONTROLPLANE-9090://0.0.0.0:9090,REPLICATION-9091://0.0.0.0:9091,PLAIN-9092://0.0.0.0:9092,TLS-9093://0.0.0.0:9093
advertised.listeners=CONTROLPLANE-9090://cluster-9833cba6-kafka-1.cluster-9833cba6-kafka-brokers.test-suite-namespace.svc:9090,REPLICATION-9091://cluster-9833cba6-kafka-1.cluster-9833cba6-kafka-brokers.test-suite-namespace.svc:9091,PLAIN-9092://cluster-9833cba6-kafka-1.cluster-9833cba6-kafka-brokers.test-suite-namespace.svc:9092,TLS-9093://cluster-9833cba6-kafka-1.cluster-9833cba6-kafka-brokers.test-suite-namespace.svc:9093
inter.broker.listener.name=REPLICATION-9091
control.plane.listener.name=CONTROLPLANE-9090
{code}
It looks like 3.9.0-RC2 filters out the control plane listener (maybe because
it is used by the KRaft controllers as well?) and runs into this error. This
worked fine in 3.8.0, so this seems like a regression in 3.9.0 that should be
fixed.
The full log from the broker node is attached. It includes the full
configuration of the broker as well.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)