1. 程式人生 > >使用zabbix自帶的模板監控MySQL

使用zabbix自帶的模板監控MySQL

zabbix

1.系統環境

  • 軟體及其版本
    軟體|版本
    —-|—-
    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路徑下,其相關配置檔案及二進位制執行程式都放置其中。
    mysql安裝在/usr/local/mysql路徑下,其相關配置檔案及二進位制執行程式也都放置其中。

2.mysql伺服器上的操作

2.1 提供.my.conf檔案

.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

2.2 提供mysql的userparameter配置檔案

當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.
  • 將其中的指令部分mysqlmysqladmin改成絕對路徑,檔案修改完後最終的樣子如下,其它部分涉及到HOMEmysql指令的也可以修改:
    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伺服器上的/usr/local/zabbix/etc/zabbix_agentd.conf檔案:

 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/   #根據
 # zabbix_agentd.conf.d搜尋,然後去掉前面的註釋,把路徑改成
 #和系統實際情況一致即可

2.4 重啟zabbix_agentd服務

service zabbix_agentd restart

3. zabbix server上的操作

3.1 給mysql主機應用mysql監控模板

給相應的主機呼叫zabbix自帶的mysql監控模板,操作過程如下

monitoring_mysql-1

monitoring_mysql-2

monitoring_mysql-3

在主機屬性列表Templates處出現Template App MySQL即表示此主機已呼叫了zabbix這一自帶的MySQL監控模板。

3.2 觀察mysql監控結果

mysql監控配置完後,可以在Monitoring—>Latest data中根據主機名進行過濾,檢視mysql相關狀態,包含有mysql慢查詢等很多mysql status可以檢視的mysql狀態資料的監控,具體操作過程如下:

monitoring_mysql-4

monitoring_mysql-5

monitoring_mysql-6

4. 根據業務實際情況配置相應的trigger和action

根據業務實際執行情況,結合監測到的資料,對mysql的監控資料配置相應的trigger和action,預設情況下只有在mysql down的時候會觸發一個trigger。具體實現有待後續學習實踐。

原文來自微信公眾號:馬哥Linux運維