一 zabbix 自定义监控
1自定义监控进程
2自定义监控配置流程
3写脚本,脚本放到统一位置
4修改被监控机上的zabbix_agentd.conf配置文件
UnsafeParameters=1
UserParameter=,
5重启zabbix_agent服务
6在web界面配置监控项和触发器
二 监控httpd
// 安装httpd
[root@zabbix ~]# yum -y install httpd
[root@zabbix ~]# systemctl start httpd
[root@zabbix ~]# ss -antl
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
LISTEN 0 128 0.0.0.0:10050 0.0.0.0:*
LISTEN 0 128 *:80 *:*
LISTEN 0 128 [::]:22 [::]:*
三 监控httpd进程
[root@zabbix ~]# ps -ef | grep httpd
root 2038 1 0 02:54 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2040 2038 0 02:54 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2041 2038 0 02:54 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2042 2038 0 02:54 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
apache 2043 2038 0 02:54 ? 00:00:00 /usr/sbin/httpd -DFOREGROUND
root 2257 1536 0 02:56 pts/0 00:00:00 httpd
root 2259 1536 0 02:56 pts/0 00:00:00 grep --color=auto httpd
四 监控进程之前先修改agentd配
置/usr/local/etc/zabbix_agentd.conf
[root@zabbix etc]# vim zabbix_agentd.conf
UnsafeUserParameters=1 // 取消注释并将0修改为1
UserParameter=<key>,<shell command> //将此行复制到末尾,key是自定义监控值的key,shell command 是获取值的方式
五 编写进程然后再进行测试
// 创建脚本目录
[root@zabbix ~]# mkdir /scripts
[root@zabbix scripts ]# cat check_process.sh
#! /bin/bash
web=$( ps -ef | grep -Ev "grep|$0" | grep -c "$1" )
if [ $web -eq 0 ];then
echo '1'
else
echo '0'
fi
//修改/usr/local/etc/zabbix_agentd.conf
[root@zabbix ~]# vim /usr/local/etc/zabbix_agentd.conf
UserParameter=check_process[*],/scripts/check_process.sh $1
//修改完配置文件重启服务
[root@zabbix ~]# pkill zabbix
[root@zabbix ~]# zabbix_agentd
六 web界面配置监控项和触发器
七 监控项多功能监控(自选)
八 添加触发器
九 验证触发器报警
#(客户端)在日志文件内加错误的信息
[root@zabbix-agent scripts]# echo 'Error' >> /var/log/httpd/error_log