我正在尝试使用将Kafka部署到Openshift的这种方法: https://github.com/mattf/openshift-kafka
部署完成,我可以在容器内设置一个代理和使用者,它们可以正常工作。当我尝试使用控制台用户(使用端口转发到我的本地计算机)访问主题时,出现一条消息,提示代理不可用。
我尝试向yaml文件中添加advertised.listeners=PLAINTEXT://openshiftRoute:80
覆盖,但是现在我得到了Error while fetching metadata with correlation id X : {test=LEADER_NOT_AVAILABLE}
。
当我尝试使用Openshift路由到localhost:9092
kafka-console-consumer.bat --bootstrap-server http://route:80 --topic test --from-beginning
我得到
[2019-05-14 21:58:47,773] ERROR Error processing message, terminating consumer process: (kafka.tools.ConsoleConsumer$)
java.lang.OutOfMemoryError: Java heap space
我在这里缺少什么,如何在Openshift中从外部访问Kafka?
答案 0 :(得分:0)
如果您想简化此方法,可以尝试使用Strimzi项目(https://strimzi.io)在Kubernetes和OpenShift上部署和管理Apache Kafka集群。 它提供了一种非常简单的方法,可以使用路由(甚至支持负载平衡器和节点端口)在OpenShift之外公开Kafka集群。 您可以在此处了解更多信息:https://strimzi.io/docs/latest/#con-kafka-listeners-deployment-configuration-kafka