无法使用 kubectl 命令获取代理 ID

Unable to fetch broker ID using kubectl command

我想使用 kubectl exec 命令获取集群中的代理 ID 列表。

我能够 运行 从 pod 内部执行命令并获取代理 ID 列表,但是我需要在不进入内部的情况下找到该列表。

我正在使用 kafka helm charts from incubator 和 Kubernetes 发行版,它与 docker 一起用于 Mac。

kubectl exec hissing-warthog-kafka-1 -- /usr/bin/zookeeper-shell hissing-warthog-zookeeper:2181 <<< "ls /brokers/ids"

预期结果: 欢迎来到动物园管理员! JLine 支持已启用

观察者::

WatchedEvent state:SyncConnected type:None path:null [zk: hissing-warthog-zookeeper:2181(CONNECTED) 0] ls /brokers/ids [0, 1, 2]

实际结果: 连接到 hissing-warthog-zookeeper:2181 欢迎来到动物园管理员! JLine 支持已启用

观察者::

WatchedEvent state:SyncConnected type:None path:null [zk: hissing-warthog-zookeeper:2181(CONNECTED) 0]

它应该按以下方式工作:

kubectl exec hissing-warthog-kafka-1 -- /usr/bin/zookeeper-shell hissing-warthog-zookeeper:2181 -c ls /brokers/ids

希望对您有所帮助。