本章去做一个监控ftp服务是否正常启动的监控项目
大概就是先创建一个模板,我们把要做的东西放入这个模板,然后把这个模板应用到某个监控主机上就可以生效
1.准备监控项脚本
其中的核心就是,通过脚本去判断一个东西的数值,通过这个数值得出该服务是否正常运行
我这里监控的监控的是ftp服务,也就是21号端口,可以去检查他的端口是否在正常开启
由于是监控数据所以现在我这个脚本需要在被监控端写(agent)
chmod +s /bin/netstat
cd /etc/zabbix/zabbix_agentd.d/
前往这个目录下,这个就是专门用来写监控脚本的目录
mkdir service
我在这个目录下又创建service用来存放监测服务状态的脚本,等会在/etc/zabbix/zabbix_agentd.d/中写个脚本一调用就行
cd service
cat <<EOF > ftp.sh
netstat -anpt | grep -w 21 &> /dev/null
echo \$?
EOF
cd ..
切换回上一级
cat <<EOF > vsftpd.conf
UserParameter=vsftpd, sh /etc/zabbix/zabbix_agentd.d/service/ftp.sh
EOF
UserParameter= vsftpd
创建这个监控项目,名字就叫vsftpd,再重启一下agent
systemctl restart zabbix-agent.service
2.创建监控项
现在在agent端创建完了,可以回到server端了
yum -y install zabbix-get
先安装一下get插件,进行测试一下
zabbix_get -s 192.168.6.1 -k vsftpd
直接远程测试一下刚刚自定义的监控项目
vsftp就是我们刚刚定义的模块名字
1就是没开服务,0就是开服务了,目前是开服务了
测试现在是可以成功获取到值的,现在进入到zabbix的web界面去配置
现在我去创建一个新的模板组,把等会自己要创建的模板放到这个组里
创建模板组
我这里创建了一个vsftpd的组
创建一个模板
这里的项目名称无法使用中文名字
通过搜索查找到ftp,进入ftp模板
先创建第一个监控项
创建监控项
这样就创建了一个监控项,一个模板中有多个监控项
再去创建一个触发器
创建一个表达式
点击选择
点击监控项
点击<>也就是非0就报警(在刚刚的脚本中当服务正常运行的情况下就是0只要没有启动就是1)
点击插入
点击添加
创建一个图形
现在我已经创建了一个模板,在这个模板中我创建了,监控项目,触发器,图形,现在我要将这个模板应用到我刚刚监控的agent主机上
现在就成功的将我们刚刚创建的模板应用到主机上了
当服务没问题的时候,就是0
现在我到agent关闭vsftpd
立马就变成1了,前台也有报警
如果你配置了,告警媒介,他也可以搭配这个进行告警,这样就自定义监控项目成功了