【发布时间】:2021-07-26 20:52:48
【问题描述】:
我正在尝试为 kafka 代理配置 SASL_PLAINTEXT 身份验证,以下是我的配置。
advertised.listeners=SASL_PLAINTEXT://127.0.0.1:9092
listeners=SASL_PLAINTEXT://127.0.0.1:9092
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.mechanism.inter.broker.protocol=PLAIN
sasl.enabled.mechanisms=PLAIN
sasl.jaas.config=/var/lib/kafka/config/kafka_jaas.conf
启动 zookeeper 和 kafka 后,我遇到了异常
java.lang.IllegalArgumentException:要求失败: inter.broker.listener.name 必须是在 广告的听众。基于当前配置的有效选项 侦听器是 PLAINTEXT java.lang.IllegalArgumentException: 要求失败:inter.broker.listener.name 必须是侦听器名称 在adverted.listeners 中定义。基于当前的有效选项 配置的侦听器是 PLAINTEXT 在 scala.Predef$.require(Predef.scala:233) 在 kafka.server.KafkaConfig.validateValues(KafkaConfig.scala:1089) 在 kafka.server.KafkaConfig.(KafkaConfig.scala:1065) 在 kafka.server.KafkaConfig$.fromProps(KafkaConfig.scala:795) 在 kafka.server.KafkaConfig$.fromProps(KafkaConfig.scala:792) 在 kafka.server.KafkaServerStartable$.fromProps(KafkaServerStartable.scala:28) 在 kafka.Kafka$.main(Kafka.scala:58) 在 kafka.Kafka.main(Kafka.scala)
【问题讨论】:
-
inter.broker.listener.name的设置是什么?问题中缺少这一点 -
@cricket_007 我没有按照 kafka 文档 kafka.apache.org/0102/documentation.html#security_sasl_plain 设置它,它建议只设置上述参数。我们需要明确设置吗?我相信如果没有按照文档设置,它将选择 security.inter.broker.protocol 的值。请建议。
-
我只是在阅读错误的内容。
inter.broker.listener.name must be a listener name defined in advertised.listeners
标签: apache-kafka sasl