There is a batch java program that does a health check:

validateZookeeperService.validateZookeeperService()


which basically runs the ruok command. You could run the stat command and parse 
out the response but I think 99% of what you want could be simply looking for 
'imok' in the response to the ruok command.

philip_smith@st11p00td-devlog001:~ 2 $ alias zkok
alias zkok='for idx in 1 2 3 4 5 ; do export 
zkserver="st11p00td-zookeeper00${idx}" ; echo "$zkserver $( echo ruok | nc  
$zkserver 2181 )" ; done'
philip_smith@st11p00td-devlog001:~ 3 $ zkok
st11p00td-zookeeper001 imok
st11p00td-zookeeper002 imok
st11p00td-zookeeper003 imok
st11p00td-zookeeper004 imok
st11p00td-zookeeper005 imok
philip_smith@st11p00td-devlog001:~ 4 $ 


On Jan 23, 2012, at 1:45 PM, Natarajan Suresh wrote:

> I am trying to write a small health check script for the zookeeper instances. 
> The "stat" command gives me an output like this:
> ===========================Zookeeper version: 3.3.3-1073969, built on 
> 02/23/2011 22:27 GMTClients: /127.0.0.1:38929[0](queued=0,recved=1,sent=0) 
> /17.155.7.152:37603[1](queued=0,recved=474752,sent=474752)
> Latency min/avg/max: 0/0/35Received: 1113675Sent: 1113706Outstanding: 0Zxid: 
> 0x2000e2925Mode: followerNode count: 71===========================
> How do I know that the server is ok ? I do not have a bad instance with me to 
> checkout what the output will be in that case.
> If anyone has already written a health check script, can you please share 
> with me ?
> Thanks
> |Suresh|


Regards, Philip

Philip Smith
Senior Software Engineer
[email protected]
408 862-1360 office
530 574-1659 mobile

Reply via email to