做完这一步后需要做的就是,将这个监控命令添加到Zabbix Agent中,并与一个Key对应,这样Zabbox Server就能通过这个Key获取MySQL的状态了。我们使用mysql.ping作为MySQL状态的Key。
首先在去除/etc/zabbix/zabbix-agentd.conf中 包含子配置文件路径的注释,并修改
Include=/etc/zabbix/zabbix-agentd.conf.d/ (这里根据自己情况取名就行,别忘了创建这个目录)
其次,在etc/zabbix/zabbix_agentd.conf.d/目录下创建userparameter_mysql.conf文件。在文件中添加如下命令:
linux:/etc/zabbix/zabbix-agentd.conf.d # cat userparameter_mysql.conf
UserParameter=mysql.ping,mysqladmin -uzabbix -p'123456' -h127.0.0.1 ping | grep -c alive
这个命令中”UserParameter”表示这是一个用户自定义的脚本;“=”号后是脚本的内容;“mysql.ping”是Key,“,”号后的命令会在Zabbix Server向Agent发起获取“mysql.ping”这个key的请求时被调用,并将返回值返回给Server。
保存并退出后可以使用下面的命令测试是否正常工作。
linux:/etc/zabbix # /usr/sbin/zabbix-agentd -t mysql.ping -c /etc/zabbix/zabbix-agentd.conf.d/userparameter_mysql.conf (正常工作)
mysql.ping [t|1]
这里zabbix_agentd使用方法可参考:
同时,在Server端也可以使用使用zabbix_get命令来测试从Server端获取指定的Client端的数据,如下:
[root@Zabbixserver alertscripts]# zabbix_get -s192.168.2.6 -p 10050 -k mysql.ping
1
这里如果操作是跟我一样,但你是有错误的
可能跟你安装版本不统一有问题。
也可以参考官网方法:
然后下载安装MySQL监控的模板 (我这里使用脚本监控+zabbix自带MySQL模板)
我这里使用的是zabbix 自带模板 Template App MySQL
创建主机 192.168.2.6
关联模板
创建监控项
创建图形
查看监控图像
设置报警,创建触发器,动作(当STATUS=0时,报警)