利用自定义监控项的参数功能监控MySQL的存活状态
第一步:
zabbix agent操作
[root@ubuntu2004 ~]#apt -y install mysql-server
进入mysql创建账号
[root@ubuntu2004 ~]#mysql
mysql> create user test@'localhost' identified by '123456';
[root@ubuntu2004 ~]#mysqladmin -utest -p123456 ping
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
mysqld is alive
第二步:客户端自定义监控项,在zabbix agent配置文件添加内容
如:[root@ubuntu2004 ~]#vim /etc/zabbix/zabbix_agent2.d/key1.conf
UserParameter=mysql_ping[*],mysqladmin -u$1 -p$2 ping 2> /dev/null |grep -c alive
[root@ubuntu2004 ~]#systemctl restart zabbix-agent2.service
第三步:
zabbix.server上验证
[root@ubuntu2004 ~]#zabbix_get -s 10.0.0.102 -k "mysql_ping[test,123456]"
1
如果mysql服务停了,抓不到值,返回0
第四步:
自定义模板里面添加该监控项
在web浏览器上操作
配置-模板
选择template-m50模板--监控项
创建监控项
名称:mysql_ping 存活状态
键值:mysql_ping[test,123456] #如果有多个数据库,需要创建多个监控项,并区别开其名称及功能
信息类型:数字
更新间隔:10s
历史数据保留时长:
应用集m50
测试
10.0.0.102 端口:10050
添加
可配合触发器,如果值为0就触发并进行报警
利用脚本自定义监控项的参数功能查看memcached版本
apt -y install memcached
连接memcached
telnet 127.0.0.1 11211
stats #查看状态
取出memcached版本的脚本
[root@ubuntu2004 zabbix_agent2.d]#vim memcached_state.sh
#!/bin/bash
memcached_state(){
port=$1
echo -e 'stats\nquit'| nc 127.0.0.1 $port |awk -v item=$2 '$2==item{print $3}'
}
memcached_state $1 $2
客户端自定义监控项,在zabbix agent配置文件添加内容
[root@ubuntu2004 zabbix_agent2.d]#vim test.conf
UserParameter=memcached_state[*],/etc/zabbix/zabbix_agent2.d/memcached_state.sh "$1" "$2"
[root@ubuntu2004 ~]#systemctl restart zabbix-agent2.service
zabbix.server上验证
取出memcached版本
[root@ubuntu2004 ~]#zabbix_get -s 10.0.0.102 -k "memcached_state[11211,version]"
1.5.22
取出连接数
[root@ubuntu2004 ~]#zabbix_get -s 10.0.0.102 -k "memcached_state[11211,curr_connections]"
2
取出memcached线程数
[root@ubuntu2004 ~]#zabbix_get -s 10.0.0.102 -k "memcached_state[11211,threads]"
4
自定义模板里面添加该监控项
在web浏览器上操作
配置-模板
选择template-m50模板--监控项
创建监控项
名称:memcached_state 线程数
键值:memcached_state[11211,threads]
信息类型:数字
更新间隔:10s
历史数据保留时长:
应用集m50
测试
10.0.0.102 端口:10050
添加