Как проверить, работает ли ZooKeeper или из командной строки?

Я изучаю несколько вариантов настройки Кафки, и я знал, что владелец зоопарка должен быть запущен, чтобы инициировать Кафку.

Я хотел бы знать, как я могу найти ниже.

1) имя хоста и порт для моего экземпляра zookeeper---я проверил зоопарк.cfg и я могли бы найти только ClientPort не имя хоста, будет ли имя хоста именем хоста моей коробки??

2) чтобы проверить, работает ли ZooKeeper- - - я попытался сделать ps -ef | grep "zoo" Я ничего не смог найти. Может быть Я использую неправильное ключевое слово для поиска??

любая помощь будет действительно оценили?

8 ответов


чтобы проверить, доступен ли Zookeeper. Один из методов-просто telnet к соответствующему порту и выполнить команду stats.

root@host:~# telnet localhost 2181
Trying 127.0.0.1...
Connected to myhost.
Escape character is '^]'.
stats
Zookeeper version: 3.4.3-cdh4.0.1--1, built on 06/28/2012 23:59 GMT
Clients:

Latency min/avg/max: 0/0/677
Received: 4684478
Sent: 4687034
Outstanding: 0
Zxid: 0xb00187dd0
Mode: leader
Node count: 127182
Connection closed by foreign host.

еще один способ-использовать команды из 4 букв для проверки работоспособности службы zookeeper или нет

echo stat | nc <zookeeper ip> 2181
echo mntr | nc <zookeeper ip> 2181
echo isro  | nc <zookeeper ip> 2181

более подробно по ссылке ниже документация https://zookeeper.apache.org/doc/r3.1.2/zookeeperAdmin.html#sc_zkCommands


перейдите в каталог bin Zookeeper и введите

./zkServer.sh status

для получения дополнительной информации перейдите по ссылке ниже:

http://www.ibm.com/developerworks/library/bd-zookeeper/

надеюсь, это может вам помочь.


Я сделал несколько тестов:

когда он работает:

$ /usr/lib/zookeeper/bin/zkServer.sh status
JMX enabled by default
Using config: /usr/lib/zookeeper/bin/../conf/zoo.cfg
Mode: follower

когда он остановился:

$ zkServer status                                                                                                                                
JMX enabled by default
Using config: /usr/local/etc/zookeeper/zoo.cfg
Error contacting service. It is probably not running.

Я не работаю на той же машине, но вы понимаете идею.


echo stat | nc localhost 2181 | grep Mode
echo srvr | nc localhost 2181 | grep Mode #(From 3.3.0 onwards)

выше будет работать в любом режиме Zookeeper работает (автономный или встроенный).

еще один способ

Если zookeeper работает в автономном режиме, его процесс JVM. Итак ... --4-->

jps | grep Quorum

отобразит список процессов jvm; что-то вроде этого для zookeeper с process ID

HQuorumPeer

Zookeeper-это просто процесс Java, и когда вы запускаете экземпляр Zookeeper, он запускает org.apache.zookeeper.server.quorum.QuorumPeerMain класса. Таким образом, вы можете проверить, работает Zookeeper, как это:

jps -l | grep zookeeper

или даже так:

jps | grep Quorum

upd:

по поводу этого: will hostname be the hostname of my box?? - Да.


Я использую:

  jps

в зависимости от вашей установки запущенный Zookeeper будет выглядеть как

  HQuorumPeer

или sth. с zookeeper в его имени.


состояние можно проверить с помощью команды:

sudo service zookeeper status

он должен показывать вывод следующим образом:

zookeeper start/running, process 1046