Zookeeper监控(Zabbix)

 
一直在弄监控,这些个中间件Zookeeper、Kafka……,平时也只知道一点皮毛,也就搭建部署过,没有真正的用过,一般都是大数据的同学在用,作为运维人员我需要对他做一个监控,由于对他不是知根知底,监控哪些指标就真的是一个大头了。经过不断的在网上搜集,看别人是怎么做的,做了以下一个基本的监控。

一、效果图

 

 

二、指标

监控最重要的就是数据,一切皆数据,有了数据想怎么监控就怎么监控。那么哪些数据是重要的?这些数据怎么获取?监控指标尤其重要。
 
Zookeeper的监控指标(通过网上收集,等实际情况中遇到了特殊的,再补充)
 

 

三、实现

实现这些监控指标我是通过Zabbix的自定义脚本实现的,脚本地址:https://github.com/Lemon-le/Zookeeper-Monitor-Zabbix 
 
使用的是Zookeeper的四字命令获取相关的指标,把zookeeper_mntr.sh和zookeeper_ruok.sh两个脚本分别放在有Zookeeper服务的机器上,我的路径为:/etc/zabbix/zabbix_agentd.d/shell-script目录下,把zookeeper.conf放在/etc/zabbix/zabbix_agentd.d/目录下,然后重启Zookeeper服务器上的zabbix-agent
 
t。
 

四、添加到Zabbix

在Zabbix上导入模板,把上面的Zookeeper_template.xml文件导入,然后把模板连接到Zookeeper服务器上
 
 
 
可以看到监控项有:
 
 
 
触发器:
 

 

五、注意事项

在做Zookeeper监控的时候,发现如下问题,使用ps查看zookeeper进程是存在的,端口也是存在的,但是他的状态是错误的,使用四字命令也是错的
[root@ip-10-10-1-2 bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper-3.4.13/bin/../conf/zoo.cfg
Error contacting service. It is probably not running.
 
上面的错误通过排查是Zookeeper的2888,和3888端口安全组没打开,但是不知道为什么只有一台报错,有两台选举出了leader与follower
[root@ip-172-30-36-157 bin]# echo mntr|nc 10.10.1.2 2181
This ZooKeeper instance is not currently serving requests
 
注:监控Zookeeper时,不能只使用监控端口存不存在,得通过状态监控才能真正的知道是否正常
 

六、总结

量变产生质变这句话是有道理的,知识面见识也是一个很大的问题,一直在收集收集监控指标,但是就是不知道哪一些是重要的,看再多,查再多,还是要动手做起来才行。
 
上面的监控只是很基础的一部分,记录下来,一是对自己心路历程的一个总结,而是完成了一件小事情,有结果的完成了会有一点点成就感,会增加自己的信心。

版权声明:本文为lemon-le原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/lemon-le/p/11644777.html