天天看点

Linux下zabbix监控 MySQL

zabbix 4.0源码安装参考 我的这篇博文

自从安装完毕 zabbix-4.0.10 之后一直在研究如何添加更多的监控项,完善监控系统,以下提供 监控MySQL方法,供参考

//系统(需要关闭SELinux/iptables打开对应端口或关闭)
CentOS release 6.10 (Final)	2.6.32-754.el6.x86_64
//服务器规划
//zabbix-server		192.168.203.13
//zabbix-agent		192.168.203.17
//zabbix-mysql		192.168.203.15
//client		任意(能够访问zabbix服务即可,需要有浏览器,图形界面)
           
//zabbix-mysql	已经对zabbix进行了授权,如没有,可参考如下示例
mysql> grant all privileges on zabbix.* to 'zabbix'@'%' identified by 'tbBilc48vlATyc7G';
mysql> flush privileges;

//zabbix-agent 操作
//在zabbix_agent服务目录下创建.my.cnf 连接文件
$ cat /usr/local/zabbix/zabbix-agent/etc/.my.cnf
[client]
host=192.168.203.15	//zabbix-mysql地址
user=zabbix
password=tbBilc48vlATyc7G
//配置MySQL的key文件 userparameter_mysql.conf (该文件可以从zabbix源码包中找到(ps.源码包安装完毕之后不要删除))
//cp userparameter_mysql.conf文件 (zabbix_agent服务目录根据实际安装可能不同,按需修改)
$ cp ./zabbix-4.0.10/conf/zabbix_agentd/userparameter_mysql.conf /usr/local/zabbix/zabbix-agent/etc/zabbix_agentd.conf.d/
//查看 userparameter_mysql.conf 文件,看到类似 HOME=/var/lib/zabbix 的路径设置,把路径全都替换为 /usr/local/zabbix/zabbix-agent/etc
$ sudo vim userparameter_mysql.conf
:%s/\/var\/lib\/zabbix/\/usr\/local\/zabbix\/zabbix-agent\/etc/g

//重启zabbix-agent
$ sudo /etc/init.d/zabbix_agentd restart

//zabbix-server 测试
$ /usr/local/zabbix/bin/zabbix_get -s 192.168.203.17 -p 10050 -k "mysql.status[Uptime]"
3877968
//出现一串类似key的数字,说明配置ok,服务端能监控到客户端的mysql数据了
//之后在监控界面增加主机对应的MySQL模板。

//client 以管理员身份登录zabbix监控界面,在“配置”-“模板”里可以查找到自带的mysql监控模板 Template DB MySQL 
//在相应主机监控配置模板中添加该监控模版(zabbix自带的)即可。
           
//以下为zabbix添加MySQL slave 监控部分
//zabbix-mysql-slave 操作
//修改 .my.cnf
# pwd
/usr/local/zabbix/zabbix-agent/etc
# cat .my.cnf 		//添加以下内容
[client]
host=192.168.203.15	//根据实际修改
user=zabbix
password=tbBilc48vlATyc7G		//根据实际修改
[mysql]
host=localhost	
user=zabbix
password=tbBilc48vlATyc7G		//根据实际修改
socket=/var/lib/mysql/mysql.sock		//根据实际修改
[mysqladmin]
host=localhost
user=zabbix
password=tbBilc48vlATyc7G		//根据实际修改
socket=/var/lib/mysql/mysql.sock		//根据实际修改

//在userparameter_mysql.conf文件里添加以下内容
# pwd
/usr/local/zabbix/zabbix-agent/etc/zabbix_agentd.conf.d
# cat userparameter_mysql.conf		//要添加的内容
UserParameter=mysql.replication,HOME=/usr/local/zabbix/zabbix-agent/etc /usr/bin/mysql -e 'show slave status\G' |grep -E "Slave_IO_Running|Slave_SQL_Running"|awk '{print $2}'|grep -c Yes
//注意:HOME=/usr/local/zabbix/zabbix-agent/etc /usr/bin/mysql  部分按实际修改
# /etc/init.d/zabbix_agentd restart		//重启zabbix-agent

//zabbix-server		192.168.203.13 测试
# pwd
/usr/local/zabbix/bin
# ./zabbix_get -s [zabbix-mysql-slave-ip] -k "mysql.replication"		//获取到值为 2 即正常
2

//client 以管理员身份登录zabbix监控界面,创建模版Template App MySQL Replication
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190918135721201.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1NTkwMTk4,size_16,color_FFFFFF,t_70)
//创建监控项 MySQL slave status 键值填 mysql.replication
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190918141014601.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1NTkwMTk4,size_16,color_FFFFFF,t_70)
//创建触发器 MySQL replication error no {HOST.NAME}
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190918141143830.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1NTkwMTk4,size_16,color_FFFFFF,t_70)
//添加图形
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190918141259942.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM1NTkwMTk4,size_16,color_FFFFFF,t_70)
//最后为对应主机添加 	Template App MySQL Replication 模板
(图略)

//到检测→图形可查看对应监控图