我尝试配置我的kafka代理在ssl下工作。我在所有代理中都有以下配置:
listeners=PLAINTEXT://0.0.0.0:9092, SSL://0.0.0.0:9093
advertised.host.name=my_host_ip
port=9092
ssl.truststore.location=/opt/kafka/kafka.server.truststore.jks
ssl.keystore.location=/opt/kafka/kafka.server.keystore.jks
ssl.key.password=123456
ssl.keystore.password=123456
ssl.truststore.password=123456
以及其他一些与我的ssl配置无关的定义。
在客户机配置中,我有以下内容:
security.protocol=SSL
ssl.truststore.location=/opt/kafka_2.12-0.10.2.0/config/ssl/kafka/client.truststore.jks
ssl.truststore.password=123456
对于端口9092(无ssl),一切正常,但当我尝试使用端口9093时-出现以下错误,无法将消息发布到kafka主题:
2017-04-25T16:59:19.945801000Z [2017-04-25 16:59:19,857] ERROR [KafkaApi-2] Error when handling request {topics=null} (kafka.server.KafkaApis)
2017-04-25T16:59:19.945991000Z kafka.common.BrokerEndPointNotAvailableException: Broker `2` does not have listener with name `ListenerName(SSL)’
我有机器之间的ssl连接(用openssl检查)
原因是什么?
1条答案
按热度按时间aamkag611#
我认为您正在公开端口9092,但是您的ssl配置为侦听9093。如果我没记错的话,
advertised.host.name
是kafka 0.10.x中已弃用的参数我建议你评论一下
advertised.host.name=my_host_ip
以及port=9092
把advertised.listeners=PLAINTEXT://<ip>:9092, SSL://<ip>:9093