本文基于crust status 命令后输出的chain等的三种状态 running stop exited进行监控
- 客户端监测脚本
#!/bin/bash
status=$(crust status |grep -E -o 'stop|exited'|wc -l)
if [ $status -eq 0 ];then
echo '0'
else
echo '1'
fi
- 开启zabbix——agentd的root运行权限
cat /etc/zabbix/zabbix_agentd.conf |grep AllowRoot #Allow要为1 用ansible 和sed命令可以进行批量修改 sed过程中忘记收录了
- 下载mikusss.com上的crutest.sh监测脚本
wget sh.mikusss.com/crutest.sh
- 拷贝至scripts目录,没有该目录则新建
cp crutest.sh /scripts/
- 赋予权限
chmod 777 /scripts/crutest.sh
- 修改zabbix_agentd.conf文件,开启agentd 字符传递功能(批量ansible实现)
sed -i '284s/# UnsafeUserParameters=0/UnsafeUserParameters=1/' /etc/zabbix/zabbix_agentd.conf
- 批量用ansiblie检查 是否成功开启
cat /etc/zabbix/zabbix_agentd.conf |grep UnsafeUserParameters
- 开启agentd的key以及执行监测脚本的路径 “/”前面加“\”进行转义(批量ansible实现)(key=cru,在web调用也使用该字符)
sed -i '288s/# UserParameter=/UserParameter=cru,\/scripts\/crutest.sh/' /etc/zabbix/zabbix_agentd.conf
- 批量用ansiblie检查 是否成功设置路径以及key
cat /etc/zabbix/zabbix_agentd.conf |grep crutest.sh
- 杀掉zabbix进程
pkill zabbix
- 重启zabbix进程
zabbix_agentd
- 在服务端用zabbix get检查即可
zabbix_get -s 172.0.1.247 -k cru

发表回复