Команда получить список брокеров Кафки от zookeeper
Я пишу сценарий оболочки для мониторинга брокеров Кафки. Я прошелся по некоторым ссылкам и обнаружил, что если ZooKeeper содержит список брокеров, и если в этом списке присутствует IP-адрес, то работает брокер Кафки.
Мне нужна команда, которую я могу использовать в своем скрипте оболочки, чтобы получить список брокеров и проверить, работает ли kafka.
Существует ли какая-либо команда curl
для получения статуса кластера Кафки, например elasticsearch?
5 ответов:
Эта команда даст вам список активных брокеров между скобками:
./zookeeper-shell.sh localhost:2181 <<< "ls /brokers/ids"
Альтернативный способ использования Zk-клиента:
Если вы не хотите передавать аргументы в
./zookeeper-shell.sh
и хотите видеть детали брокера от ZooKeeper CLI, вам нужно установить автономный Zookeeper (так как традиционный Кафка не придумывает jline JAR).Как только вы установите (распакуете) автономный Zookeeper, то:
Бегите в зоопарк Кли:
$ zookeeper/bin/zkCli.sh -server localhost:2181
#Make sure your Broker is already running
Если это успешно, вы можете увидеть, что клиент Zk работает как:
WATCHER::
WatchedEvent state:SyncConnected type:None path:null [zk: localhost:2181(CONNECTED) 0]
- Здесь вы можете изучить детали брокера, используя различные команды:
$ ls /brokers/ids
# Gives the list of active brokers
$ ls /brokers/topics
#Gives the list of topics
$ get /brokers/ids/0
#Gives more detailed information of the broker id '0'