apache-kafka - 是否可以访问在 OpenShift 上安装了 Route 侦听器类型的 Strimzi Kafka 中的 Zookeeper?
问题描述
我在 OpenShift 上有 Strimzi Kafka 集群,配置如下所述:
https://strimzi.io/blog/2019/04/30/accessing-kafka-part-3/
基本上是这样的:
kind: Kafka
metadata:
name: ...
spec:
kafka:
version: 2.7.0
replicas: 2
listeners:
plain: {}
tls:
authentication:
type: tls
external:
type: route
tls: true
authentication:
type: tls
authorization:
type: simple
根据上面的文章,我只能通过 port 访问引导服务器443
。基本上,这个设置有效并且可以满足我的需要。
我想知道我是否可以通过我的机器上的命令行对 Zookeper 进行外部访问以管理集群?如果是,我应该从存档下载 Kafka 二进制文件并使用 CLI 吗?或者我需要登录 Zookeeper Pod(例如通过 OpenShift UI)并从那里通过 CLI 管理 Kafka 集群?
提前致谢。
解决方案
Strimzi 不提供对 Zookeeper 的任何访问权限。它使用 mTLS 和网络策略锁定。如果你真的需要它,你可以使用这个非官方的项目https://github.com/scholzj/zoo-entrance并自己手动创建一个路线。但它并不安全 - 所以使用它需要您自担风险。在 Zookeeper pod 内打开一个终端也是一种选择。但在大多数情况下,您现在不需要 Zookeeper 访问权限,因为 Kafka 无论如何都在为移除它做准备。
推荐阅读
- java - 解密 .net 中的 PBEWithMD5AndTripleDES 加密字符串
- c++ - 无法打开源文件 mscorlib.tlh
- mongodb - mongodb-community 错误 homebrew.mxcl.mongodb-community.plist
- javascript - Highcharts 热图边框
- php - PHP - JSON 编码输出仅包含 1 个 XML 条目而不是多个
- sql - 如何在此表上使用交叉表?我不明白
- api - 如何在 raml 查询参数中定义 map[string][]string
- testcontainers - 如何重启 testcontainers 容器?
- macos - Automator 中的 Shell 脚本在作为变量传递时显示“找不到命令”
- python - 替换字符串 - 位置上的未知标志