让卡夫卡与ip以及服务名称相连 - Openshift

问题描述:

在我们的Openshift生态系统中,我们有一个来自wurstmeister/kafka的卡夫卡实例。截至目前,我能够有withing使用下面的参数Openshift系统访问的卡夫卡,让卡夫卡与ip以及服务名称相连 - Openshift

KAFKA_LISTENERS=PLAINTEXT://:9092 
KAFKA_ADVERTISED_HOST_NAME=kafka_service_name 

而且ofcourse,港口和zookeper的PARAMS是存在的。

我可以从openshift系统中的pod访问kafka。但是我无法从主机访问kafka服务。 Eventhough我能够使用它的IP,并能使用远程登录荚访问卡夫卡荚,telnet Pod_IP 9092

当我试图用卡夫卡生产者从主机,我收到以下错误连接,

2017年8月7日07:45:13925] WARN错误,同时用 相关性id 2获取的元数据:{tls21 = LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient)

而当我尝试从主机上的Kafka客户端连接使用IP,它是空白的。

注:截至目前,它是一个单一的openshift服务器。用例用于开发测试。

+0

“主机”是什么意思? OpenShift集群的主节点?你的个人机器,如果在Minishift或oc下运行这个机器群集? –

+0

@GrahamDumpleton现在只有一个Openshift。用例用于开发测试。 – Kannan

+0

这并不能帮助我理解你在说什么主机。如果您使用非HTTP协议与其进行通信,为了在集群外部访问以进行测试,可以使用“oc端口转发”。否则,您需要使用其中一种方法来配置服务/端口在群集外部可见。 –

也许你想看看这个POC在OpenShift上有卡夫卡吗? https://github.com/EnMasseProject/barnabas