/usr/local/zabbix
路径下,其相关配置文件及二进制执行程序都放置其中。
mysql安装在/usr/local/mysql
路径下,其相关配置文件及二进制执行程序也都放置其中。.my.conf
这个文件是zabbix要求的用于存放连接mysql数据库的账户信息的隐藏文件,需要手动创建,其存放位置可以自定义,一般存放 在zabbix安装路径的etc目录中,操作如下:
vim /usr/local/zabbix/etc/.my.conf
[mysql] #mysql程序要使用的账户信息host=localhostuser=zabbixpassword=zabbixsocket=/tmp/mysql.sock #确认mysql的sock文件路径[mysqladmin] #mysqladmin程序要使用的账户信息host=localhostuser=zabbixpassword=zabbixsocket=/tmp/mysql.sock
当zabbix server和agentd,web interface都配置完成以后,在zabbix源码包目录中自带的有一个用于mysql监控的userparameter配置文件,建议将它复制到特定目录中,具体操作如下:
cp ~/softwares/zabbix-3.2.4/conf/zabbix_agentd/userparameter_mysql.conf /usr/local/zabbix/etc/zabbix_agentd.conf.d/
然后修改复制过来的userparameter_mysql.conf
:
HOME=/var/lib/zabbix
改成HOME=/usr/local/zabbix/etc
之所以这样改,在userparameter_mysql.conf
文件的第一行有说明For all the following commands HOME should be set to the directory that has .my.cnf file with password information.
mysql
和mysqladmin
改成绝对路径,文件修改完后最终的样子如下,其它部分涉及到HOME
和mysql
指令的也可以修改:
UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/usr/local/zabbix/etc /usr/local/mysql/bin/mysql -N | awk '{print $$2}' UserParameter=mysql.ping,HOME=/usr/local/zabbix/etc /usr/local/mysql/bin/mysqladmin ping | grep -c alive UserParameter=mysql.version,HOME=/usr/local/zabbix/etc /usr/local/mysql/bin/mysql -V修改mysql服务器上的/usr/local/zabbix/etc/zabbix_agentd.conf
文件:
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/ #根据
# zabbix_agentd.conf.d搜索,然后去掉前面的注释,把路径改成
#和系统实际情况一致即可
service zabbix_agentd restart
给相应的主机调用zabbix自带的mysql监控模板,操作过程如下
monitoring_mysql-1
monitoring_mysql-2
monitoring_mysql-3
在主机属性列表Templates
处出现Template App MySQL
即表示此主机已调用了zabbix这一自带的MySQL监控模板。
mysql监控配置完后,可以在Monitoring
--->Latest data
中根据主机名进行过滤,查看mysql相关状态,包含有mysql慢查询等很多mysql status
可以查看的mysql状态数据的监控,具体操作过程如下:
monitoring_mysql-4
monitoring_mysql-5
monitoring_mysql-6
根据业务实际运行情况,结合监测到的数据,对mysql的监控数据配置相应的trigger和action,默认情况下只有在mysql down的时候会触发一个trigger。具体实现有待后续学习实践。