0

我创建了两个应用程序wurstmeister/kafkazookeeper如下所示。

oc new-app wurstmeister/kafka
oc new-app zookeeper

虽然我可以zookeeper在我的项目中看到该服务,但我没有看到 Kafka 服务。如何让我的其他 pod 连接到 Kafka?通过 pod IP 地址?但是,这不是service豆荚相互连接的方式吗?

为什么没有自动创建 Kafka 服务?

Kafka Dockerfile Zookeeper Dockerfile

4

1 回答 1

2

这与 Zookeeper Dockerfile 包含暴露端口的 EXPOSE 行有关,但 Kafka Dockerfile 中没有这样的行,它实际上没有暴露默认的 9092 端口。new-app 命令仅在您实际通过 EXPOSE 公开端口的情况下才通过服务公开声明的端口。

因为您正在尝试在 OpenShift 上部署 Kafka,我建议您看一下 Strimzi 项目 ( https://strimzi.io/ ),它会让您的生活更轻松。它提供了一个集群算子安装在 OpenShift 集群中,然后通过 Kafka 资源描述一个 Kafka 集群;运营商将为您部署集群。

于 2019-10-03T07:51:03.570 回答