说明:根据企业的业务内容来自定义合适的模板,所有主机都可以使用这个定义模板,这样方便管理。
1、首先创建个人模板
配置---------模版---------创建模版(名字随意。不过最好方便认识,比如我给的名字,主机名+监控的服务+状态)
dep5_httpd_status
2、在被监控定义KEY和脚本
#vim /usr/local/zabbix/alertscripts/httpd_status.sh
#!/bin/bash
aa=`/etc/init.d/httpd status |grep "pid" |wc -l` #如果htttp服务正常这个值为1,不为1表示错误
echo $aa
# chownzabbix:zabbix–R /usr/local/zabbix/scripts
3、在被监空开始定义KEY的使用
#[root@dep5 bin]# cat /usr/local/zabbix/etc/zabbix_agentd.conf|grep UserParameter
# Does not support UserParameters or aliases.
### Option: UnsafeUserParameters
# UnsafeUserParameters=0
UnsafeUserParameters=1
### Option: UserParameter
# Format: UserParameter=<key>,<shell command>
# UserParameter=
UserParameter=check.http.serivces,/usr/local/zabbix/alertscripts/httpd_status.sh
#key值为check.http. services应用脚本为:/usr/local/zabbix/scripts/httpd.sh
#语法为:UserParameter=KEY, <脚本/命令>脚本或者命令都可以,以上应用是脚本
4、重启被监控端的agent服务
service zabbix_agentd restart
5、回到主Zabbix服务器命令测试
[root@dep5 zabbix]# service httpd status
httpd 已停
#因为httpd服务是停的,已经得到的返回值应该是0,如下
[root@dep5 zabbix]# /usr/local/zabbix/bin/zabbix_get -s 192.168.1.5 -p 10050 -k "check.http.serivces"
0
如果返回值不对,在agetn被监控端,切换zabbix用户尝试执行这个脚本,看看到底哪里出问题了。
比如:su - zabbix
bbix@slave scripts]$ /etc/init.d/httpd status
httpd已死,但是subsys被锁
解决:在监控端agent,将apache组加入到zabbix
usermod–G apache zabbix
6、回WEB界面自己定义模板添加应用集
配置-------模版------前面创建的模版(比如说我要监控server_httpd_status)------点击应用集------
--------输入名字(我这里是:监控Http服务)
7、为应用集添加一个监控项目
配置-------模版------前面创建的模版(比如说我要监控server_httpd_status)------点击监控项目----右上角创建监控香项目
检查Http服务状态
键值就是:
[root@dep5 zabbix]# cat /usr/local/zabbix/etc/zabbix_agentd.conf|grep alertscripts
UserParameter=check.http.serivces,/usr/local/zabbix/alertscripts/httpd_status.sh
#其中的键值(KEY)就是:check.http.serivces
查看值:server status (可自行点击值映射= = )
应用集:就是前面创建的应用集
8、为项目添加一个触发报警器
配置-------模版------前面创建的模版(比如说我要监控server_httpd_status)------点击监控项目----右上角创建触发器
(1)开始创建
(2)定义项目值
名称随意,然后点击添加
7.9、为主机dep5增加一个自定义模板
配置-------主机------要监控的主机(server_dep5)------点击进去
(1)添加一个自定义模板
看到差别了,dep5比mini10的应用集、监控项、触发器都要多1
(2)、验证自定义模板是否成功
^_^- - 、、、、、、、半成功
,不支持的item key,。。,,应该是在定义监控项目那里出了点问题..............