1.系統(tǒng)環(huán)境
軟件及其版本
軟件|版本
----|----
OS|Centos6.8-2.6.32-642.el6.x86_64
zabbix|zabbix-3.2.4.tar.gz
web|nginx-1.10.3.tar.gz
mysql|mysql-5.5.53-linux2.6-x86_64.tar.gz
php|php-5.5.38.tar.gz軟件安裝路徑
zabbix安裝在/usr/local/zabbix路徑下,其相關(guān)配置文件及二進(jìn)制執(zhí)行程序都放置其中。
mysql安裝在/usr/local/mysql路徑下,其相關(guān)配置文件及二進(jìn)制執(zhí)行程序也都放置其中。
2.mysql服務(wù)器上的操作
2.1 提供.my.cnf文件
.my.cnf這個(gè)文件是zabbix要求的用于存放連接mysql數(shù)據(jù)庫的賬戶信息的隱藏文件,需要手動(dòng)創(chuàng)建,其存放位置可以自定義,一般存放 在zabbix安裝路徑的etc目錄中,操作如下:
vim /usr/local/zabbix/etc/.my.cnf
[mysql] #mysql程序要使用的賬戶信息
host=localhost
user=zabbix
password="zabbix" #此處的密碼強(qiáng)烈建議加上引號(hào)
socket=/tmp/mysql.sock #確認(rèn)mysql的sock文件路徑
[mysqladmin] #mysqladmin程序要使用的賬戶信息
host=localhost
user=zabbix
password="zabbix"
socket=/tmp/mysql.sock
2.2 提供mysql的userparameter配置文件
當(dāng)zabbix server和agentd,web interface都配置完成以后,在zabbix源碼包目錄中自帶的有一個(gè)用于mysql監(jiān)控的userparameter配置文件,建議將它復(fù)制到特定目錄中,具體操作如下:
cp ~/softwares/zabbix-3.2.4/conf/zabbix_agentd/userparameter_mysql.conf /usr/local/zabbix/etc/zabbix_agentd.conf.d/
然后修改復(fù)制過來的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改成絕對(duì)路徑,文件修改完后最終的樣子如下,其它部分涉及到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
2.3 將mysql的userparameter配置文件包含到zabbix_agentd的配置中
修改mysql服務(wù)器上的/usr/local/zabbix/etc/zabbix_agentd.conf文件:
Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/ #根據(jù)
# zabbix_agentd.conf.d搜索,然后去掉前面的注釋,把路徑改成
#和系統(tǒng)實(shí)際情況一致即可
2.4 重啟zabbix_agentd服務(wù)
service zabbix_agentd restart
3. zabbix server上的操作
3.1 給mysql主機(jī)應(yīng)用mysql監(jiān)控模板
給相應(yīng)的主機(jī)調(diào)用zabbix自帶的mysql監(jiān)控模板,操作過程如下



在主機(jī)屬性列表
Templates處出現(xiàn)Template App MySQL即表示此主機(jī)已調(diào)用了zabbix這一自帶的MySQL監(jiān)控模板。
3.2 觀察mysql監(jiān)控結(jié)果
mysql監(jiān)控配置完后,可以在Monitoring--->Latest data中根據(jù)主機(jī)名進(jìn)行過濾,查看mysql相關(guān)狀態(tài),包含有mysql慢查詢等很多mysql status可以查看的mysql狀態(tài)數(shù)據(jù)的監(jiān)控,具體操作過程如下:



4. 根據(jù)業(yè)務(wù)實(shí)際情況配置相應(yīng)的trigger和action
根據(jù)業(yè)務(wù)實(shí)際運(yùn)行情況,結(jié)合監(jiān)測(cè)到的數(shù)據(jù),對(duì)mysql的監(jiān)控?cái)?shù)據(jù)配置相應(yīng)的trigger和action,默認(rèn)情況下只有在mysql down的時(shí)候會(huì)觸發(fā)一個(gè)trigger。具體實(shí)現(xiàn)有待后續(xù)學(xué)習(xí)實(shí)踐。