使用Zabbix监控ZooKeeper服务的健康状态

一 应用场景描述

在目前公司的业务中,没有太多使用ZooKeeper作为协同服务的场景。但是我们将使用Codis作为Redis的集群部署方案,Codis依赖ZooKeeper来存储配置信息。所以做好ZooKeeper的监控也很重要。

二 ZooKeeper监控要点

系统监控

内存使用量    ZooKeeper应当完全运行在内存中,不能使用到SWAP。Java Heap大小不能超过可用内存。

Swap使用量    使用Swap会降低ZooKeeper的性能,设置vm.swappiness = 0

网络带宽占用   如果发现ZooKeeper性能降低关注下网络带宽占用情况和丢包情况,通常情况下ZooKeeper是20%写入80%读入

磁盘使用量    ZooKeeper数据目录使用情况需要注意

磁盘I/O      ZooKeeper的磁盘写入是异步的,所以不会存在很大的I/O请求,如果ZooKeeper和其他I/O密集型服务公用应该关注下磁盘I/O情况

ZooKeeper监控

zk_avg/min/max_latency    响应一个客户端请求的时间,建议这个时间大于10个Tick就报警

zk_outstanding_requests        排队请求的数量,当ZooKeeper超过了它的处理能力时,这个值会增大,建议设置报警阀值为10

zk_packets_received      接收到客户端请求的包数量

zk_packets_sent        发送给客户单的包数量,主要是响应和通知

zk_max_file_descriptor_count   最大允许打开的文件数,由ulimit控制

zk_open_file_descriptor_count    打开文件数量,当这个值大于允许值得85%时报警

Mode                运行的角色,如果没有加入集群就是standalone,加入集群式follower或者leader

三 编写Zabbix监控ZooKeeper的脚本和配置文件

四 制作Zabbix监控ZooKeeper的模板并设置报警阀值

参考文档:

https://blog.serverdensity.com/how-to-monitor-zookeeper/

时间: 2024-10-12 16:39:52

使用Zabbix监控ZooKeeper服务的健康状态的相关文章

zabbix 监控zookeeper篇

zabbix 监控zookeeper篇 安装依赖包 yum install -y nc yum install -y zabbix-sender nc 命令 echo ruok|nc 127.0.0.1 2181 imok echo mntr|nc 127.0.0.1 2181 zk_version 3.4.6-1569965, built on 02/20/2014 09:09 GMT zk_avg_latency 0 zk_max_latency 6 zk_min_latency 0 zk_

使用Zabbix监控windows服务

要监控的Windows服务如下: Zabbix中的主机配置(原主机己添加到了Zabbix中):先在这台host下添加一个 Items: 确认添加完成后,如果有多个服务需要添加,可以将当前Items进行Clone. 添加完成后,再将添加的服务状态的阈值监控起来,如果出现异常能及时报警提醒: 点击:Create trigger:配置Trigger的内容:内容中Expreesion可以通过Add进行添加,这里启用监控这个服务的状态(Running(0).Stopped(6) 服务状态码可以到zabbi

Zabbix监控nginx服务进程状态

zabbix监控nginx需要开启nginx status,要确认nginx编译http_sub_module模块! 1.检查当前nginx是否安装配置http_sub_module模块 # nginx -V Tengine version: Tengine/1.5.2 (nginx/1.2.9) built by gcc 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) TLS SNI support enabled configure arguments: --p

zabbix监控crond服务

zabbix对一个服务进行监控,例如crond,zabbix本身没有此模板,需要手动书写脚本场景介绍:192.168.10.10: zabbix server192.168.10.11: zabbix client2:脚本内容如下:[[email protected] scripts]# pwd/etc/zabbix/scripts[[email protected] scripts]# cat check_process_running #!/bin/sh###################

Zabbix监控Tengine 后端服务器健康检查

一 应用场景描述: 前端使用Tengine作为负载均衡器,需要对监控Tengine到后端服务器的健康状况,利用Tengine提供的接口可以获取每一个后端主机的状态,是up还是down等. 二 编写Zabbix监控脚本 Tengine的ngx_http_upstream_check_module 模块提供后端监控检查功能.可以使用html,csv,json三种格式查看后端主机状态,这里我们使用json格式便于编写脚本 /status?format=html /status?format=csv /

【zabbix告警监控】配置zabbix监控nginx服务

zabbix监控nginx,nginx需要添加--with-http_stub_status模块 使用zabbix监控nginx,首先nginx需要配置开启ngx_status.但是我这边nginx安装成功了并且也没有添加sub模块,需要重新编译添加该模块.配置如下: # 在添加之前需要查看是否有sub的模块(--with-http_sub_module 这个模块),如果没有就需要重新编译 # 使用nginx -V可以查看 [[email protected]_0_10_centos thy]#

Zabbix监控Zookeeper健康状况

首先最简单的是监听服务端口,在zabbix界面直接添加监控项 item: zookeeper.status key: net.tcp.listen[2181] ZooKeeper监控要点: 内存使用量    ZooKeeper应当完全运行在内存中,不能使用到SWAP.Java Heap大小不能超过可用内存. Swap使用量    使用Swap会降低ZooKeeper的性能,设置vm.swappiness = 0 网络带宽占用   如果发现ZooKeeper性能降低关注下网络带宽占用情况和丢包情况

zabbix监控zookeeper

1.监控脚本如下:check_zookeeper.sh #!/bin/bash echo mntr | nc 127.0.0.1 2182 | grep "$1" |awk '{print $2}' 2.编辑zabbix_agentd.conf #Monitor zookeeper UserParameter=zookeeper[*],/usr/bin/sh    /etc/zabbix/scripts/check_zookeeper.sh  $1 3.编辑item 4.或者上传附件模

zabbix监控vsftp服务,发生故障并自动恢复

最近老大有个需求,就是想把一些服务监控起来,发生故障并能够自动重启,这里我就拿ftp练了一下手 1.修改zabbix系统自带的模板 注意:key 这里可以使用监控服务的方式,也可以使用监控端口的方式net.tcp.listen[port] 2.创建触发动作 3.在agent上面创建调用脚本 [[email protected] alertscripts]# cat ftp_recovery.sh  #!/bin/bash sudo service vsftpd start 修改agent配置文件