由于原因未知且通常在 生产环境 和测试中每周数次,我们无法与Kafka代理进行通信,并且此消息在日志中重复:WARN无法 Build 与节点nnnn的连接 . 经纪人可能无法使用 . (org.apache.kafka.clients.NetworkClient)
奇怪的是,这反过来阻止了 Kafka 工作(我们不能 生产环境 /消费) .
OpenShift不承认它不起作用, Kafka 也不认识它 .
如果Broker容器中的命令没有执行,我即将向YAML添加一个Livenessprobe来重启Pod,但我们想自然地找到根本原因 .
如果我使用来自另一个Broker或Zookeeper节点的Curl url:hostport命令,您可以从所有其他Broker和Zookeepers获得回复 . 然而,已经“失败”的Kafka节点的卷曲返回“无法解析主机...”,即使我可以进入OpenShift并使用终端 . 我在日志中找不到任何其他错误 .
我不知道这是Kafka还是OpenShift / Kubernetes问题 .
如果其他人有这个并解决了它,我会感激一些指示 .
1 回答
配置kafka时我遇到了这样的错误 . 这是因为经纪人无法在他们之间进行沟通 .
这里是我的StatefulSet的片段(我使用kubernetes):
选项
--override zookeeper.connect=zookeeper-0.zookeeper:2181
非常重要,您需要列出所有zookeeper节点 .因为我为Zookeeper定义了一个服务,并且只为zookeeper定义了一个StatefulSet,所以在我写的abode选项中
zookeeper-0.zookeeper
如果您有更多,请列出所有 .
我以前的帖子是:
Kafka + Zookeeper: Connection to node -1 could not be established. Broker may not be available
Kubernetes service not working as expected with kafka
您可以在其中找到有用的信息 . 我希望这有帮助 .