分类: BSD
2015-05-12 15:05:51
A. 安裝完zabbix後,默認的監控mysql模板是不能用的,即使添加上去了,也是顯示為紅色的unsupper,因此我們需要做一些配置.首先需要在想要監控的mysql server上新建授權用戶,讓zabbix_agent對數據庫有查詢,以及狀態監測等權限.
mysql -uroot
-p
mysql -uroot
-p
mysql -uroot
-p
B. 測試授權用戶是否創建成功以及是否有相應權限.
mysql –uzabbix –pzabbix –e “status”
如果出現下面輸出就是OK了.
Connection id: 9561
Current database:
Current user: zabbix@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 5.1.72-2 (Debian)
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
UNIX socket: /var/run/mysqld/mysqld.sock
Uptime: 4 days 23 hours 50 min 4 sec
Threads: 1 Questions: 153764 Slow queries: 25 Opens: 1746 Flush tables: 1
C. 進入zabbix_agent的配置目錄,如我這裡是/usr/local/etc/zabbix24, 新建一個文件用來保存登錄mysql的用戶以及密碼, 文件名字為 .my.cnf (注意前面有個小點)
[mysql]
user=zabbix
password=zabbix
[mysqladmin]
user=zabbix
password=zabbix
D. 在配置文件目錄內還有一個配置目錄,用來加載其他自定義配置的zabbix_agentd.conf.d ,在此目錄裡新建配置文件userparameter_mysql.conf ,添加如下內容
UserParameter=mysql.status[*],echo "show global status where Variable_name='$1';" | HOME=/usr/local/etc/zabbix24 mysql -N | awk '{print $$2}'
UserParameter=mysql.size[*],echo "select sum($(case "$3" in both|"") echo "data_length+index_length";; data|index) echo "$3_length";; free) echo "data_free";; esac)) from information_schema.tables$([[ "$1" = "all" || ! "$1" ]] || echo " where table_schema='$1'")$([[ "$2" = "all" || ! "$2" ]] || echo "and table_name='$2'");" | HOME=/usr/local/etc/zabbix24 mysql –N
UserParameter=mysql.ping,HOME=/usr/local/etc/zabbix24 mysqladmin ping | grep -c alive
UserParameter=mysql.version,mysql –V
一共4行,如果你的zabbix_agent配置目錄不是這裡,請替換上面內容的HOME 後面為正確的路徑.
E. 修改zabbix_agentd.conf ,啟用自定義配置.
EnableRemoteCommands=1 #啟用遠程執行命令
UnsafeUserParameters=1 #啟用不安全的用戶參數,可以在參數後直接加密碼
Include=/usr/local/etc/zabbix24/zabbix_agentd.conf.d/*.conf #去掉註釋,修改正確路徑
F. 重啟zabbix_agentd 服務.然後在zabbix server上對需要監控的server添加mysql模板.
添加好後轉到items項看看MYSQL 項,沒有出現紅色的unsupper, 而是變成了綠色的enabled 就是成功了.
備註:
此文是根據一個老外的博客完成的.因為老外寫的東西沒有寫完整,導致我也摸索了好久.有興趣的朋友也可以去看看.原文在這裡:
http://blog.themilkyway.org/2013/12/zabbix-mysql-monitoring-notes/
這篇筆記僅能配置為zabbix自帶的監控模板功能,如果需要更高級的其他監控,得自己寫key .這個不深究了.有興趣的自己去研究下. 網上找到的各種教程,不是錯亂不對,就是多年前的zabbix 2.0時候的東西,剛開始弄的時候也是各種不行,所以寫了這篇筆記,給眾多像我一樣的新手幫助,少走點彎路.