docker - OpenShift - 创建新应用程序时何时创建服务?

标签 docker apache-kafka openshift strimzi

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

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

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

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

Kafka Dockerfile
Zookeeper Dockerfile

最佳答案

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

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

关于docker - OpenShift - 创建新应用程序时何时创建服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58212933/

相关文章:

python - 如何升级 docker 中使用的默认 python 版本?

Docker-Compose 在数据库创建时卡住

docker - 如何在DC/OS上将JDBC驱动程序添加到Kafka Connect?

openshift - 我可以在 OpenShift Origin 构建中生成增量构建名称吗?

docker - 如何使用Terraform将ulimit参数传递给Docker?

haskell - 如何将 Haskell Stack 与 Docker Compose 结合使用?

java - Kafka Utils 类路径错误 : org. apache.kafka.common.utils.Utils

apache-kafka - 如何确保日志在 Kafka 中永久保留?

ruby - rhc 安装程序给出错误 `no such file dl/import`

docker - 多种选项可将应用程序部署到OpenShift