监控MySQL实战
标签(linux): zabbix & mysql
笔者Q:972581034 交流群:605799367。有任何疑问可与笔者或加群交流
percona为MySQL制作了专用插件,监控项,模版,图形。
zabbix server端版本为3.0.7,之前已经介绍过安装步骤,这里不再做说明,请参考 http://www.cnblogs.com/Csir/p/6753412.html
主机
#agent端
[root@db02 ~]# hostname ;hostname -I
db02
10.0.0.52 172.16.1.52
#server端
[root@zabbix ~]# hostname;hostname -I
zabbix
10.0.0.120 172.16.1.120
环境
[root@db02 ~]# cat /etc/redhat-release
CentOS release 6.8 (Final)
[root@db02 ~]# /etc/init.d/iptables status
iptables: Firewall is not running.
[root@db02 ~]# getenforce
Disabled
zabbix-agent
1.安装zabbix-agent以及percona相关包
yum install zabbix-agent php php-mysql -y
rpm -ivh https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.7/binary/redhat/6/x86_64/percona-zabbix-templates-1.1.7-2.noarch.rpm
#CentOS7
rpm -ivh https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.7/binary/redhat/7/x86_64/percona-zabbix-templates-1.1.7-2.noarch.rpm
percona相关文件如下
[root@db02 percona]# pwd
/var/lib/zabbix/percona
[root@db02 percona]# tree
.
├── scripts
│ ├── get_mysql_stats_wrapper.sh
│ └── ss_get_mysql_stats.php
└── templates
├── userparameter_percona_mysql.conf
└── zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml
2.复制配置文件
chown -R zabbix.zabbix /var/lib/zabbix/percona/
mkdir -p /var/lib/mysql
ln -s /application/mysql/data/mysql.sock /var/lib/mysql/mysql.sock
cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
/etc/init.d/zabbix-agent restart
3.在Agent节点上配置和验证与127.0.0.1的MySQL连接
sed -i 's#HOST=localhost#HOST=127.0.0.1#g' /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg
#注意:这里填写的用户和密码必须有localhost登录权限,否则获取不到key值,如果是用的中间件,如atlas,那么在atlas配置文件中要填写相对应的用户
4.测试脚本
#返回任何数字则表式连接成功
[root@db02 scripts]# /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg
40
#错误可能如下
[root@db02 scripts]# /usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host localhost --items gg
ERROR: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)[root@db02 scripts]#
#这样可以手动运行命令来查看错误所在
/usr/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host 127.0.0.1 --items gg
# 成功后修改文件权限
chmod 600 /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php.cnf
#同时也需要注意/tmp/下zabbix创建的文件权限
zabbix-server
1.导入模版
xml文件我这里帮大家提供了。链接:http://pan.baidu.com/s/1i5zGPhj 密码:s5vw
2.添加主机
# 执行这个可以在服务端重新获取数据
zabbix_server -R config_cache_reload
[root@zabbix ~]# zabbix_server -R config_cache_reload
zabbix_server [4031]: command sent successfully
OK,搞定收工!
未完待续...
zabbix之自动化监控-部署篇(一):http://www.cnblogs.com/Csir/p/6753412.html
zabbix之自动化监控-自定义监控与报警(二) http://www.cnblogs.com/Csir/p/6759747.html