1. 實驗環境
1.1 伺服器均為centos7作業系統
1.2 伺服器ip位址
zabbix-server ip:192.168.153.183
mysql-master ip: 192.168.153.134
msyql-slave ip: 192.168.153.135
在mysql-slave上配置agent服務
1.3 均關閉防火牆和selinux
關閉防火牆
systemctl stop firewalld
關閉selinux
setenforce 0
2. 搭建mysql主從架構
3. 配置zabbix服務端
4. 配置mysql-slave端
4.1 上傳zabbix yum源

4.2 安裝zabbix-agent
yum -y install zabbix-agent
4.3 修改配置檔案
vim /etc/zabbix/zabbix_agentd.conf
修改以下内容 将server端的IP位址設為實驗中的192.168.153.183
98 Server=192.168.153.183
139 ServerActive=192.168.153.183
修改完成後儲存退出
4.4 啟動agent服務
systemctl start zabbix-agent
4.5 監聽端口驗證服務啟動成功
[[email protected] ~]# netstat -nltp|grep 10050
tcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTEN 2297/zabbix_agentd
tcp6 0 0 :::10050 :::* LISTEN 2297/zabbix_agentd
4.6 建立工作目錄,編寫監控主從狀态的腳本
[[email protected] ~]# mkdir /etc/zabbix/scripts
[[email protected] ~]# cd /etc/zabbix/scripts/
[[email protected] scripts]# vim mysql_slave.sh
#!/bin/bash
IO=$(mysql -uroot -e "show slave status\G;" |grep Slave_IO_Running|awk '{print $2}')
SQL=$(mysql -uroot -e "show slave status\G;" |grep Slave_SQL_Running|awk '{print $2}')
if [ $IO = "Yes" -a $SQL = "Yes" ];then
echo "1"
else
echo "0"
fi
給腳本增加執行權限
chmod +x mysql_slave.sh
執行測試腳本
[[email protected] scripts]# ./mysql_slave.sh
1
4.7 修改agent配置檔案
4.7.1 修改配置檔案
vim /etc/zabbix/zabbix_agentd.conf
4.7.2 修改以下内容
288 UnsafeUserParameters=1
297 UserParameter=check.slave,/etc/zabbix/scripts/mysql_slave.sh
4.7.3 修改完成之後儲存退出重新開機agent服務
systemctl restart zabbix-agent
5. 在server端測試
擷取mysql主從狀态成功
[[email protected] ~]# zabbix_get -s 192.168.153.135 -k check.slave
1
6. 在zabbix web 端添加主機和監控項
6.1 建立主機
6.2 配置主機
6.3 建立監控項
1)
2)
3)
4) 添加成功
6.4 建立圖形
1)
2)
3)
4)添加成功
6.5 檢視建立的圖形