開源監(jiān)控利器nagios之監(jiān)控mysql服務(wù)器
開源監(jiān)控利器nagios,很強大很好用,例如用來監(jiān)控mysql服務(wù)器。
監(jiān)控mysql需要在nagios和mysql服務(wù)器這兩個部分做處理:mysql服務(wù)器安裝nrpe、創(chuàng)建mysql監(jiān)控用戶;配置nagios及用htpasswd創(chuàng)建瀏覽器驗證帳號。下面分步描述。
一、在mysql服務(wù)器安裝nrpe.
這個操作與nagios服務(wù)器安裝nrpe基本相同,唯一不同的是nrpe.cfg文件server_address,把它改成mysql服務(wù)器的ip地址即可。檢查無誤后啟動nrpe服務(wù).
二、創(chuàng)建mysql訪問用戶nagios。這個賬號僅僅是nagios監(jiān)控程序用來訪問mysql數(shù)據(jù)庫所用,與其它帳號毫無關(guān)系。為了安全起見,nagios這個賬號的權(quán)限應該特別低,僅僅有數(shù)據(jù)庫的select權(quán)限即可。再進一步,我們創(chuàng)建一個空的數(shù)據(jù)庫nagdb,然后讓nagios賬號訪問這個空庫,就可以通過check_mysql插件測試和監(jiān)控mysql數(shù)據(jù)庫。
1、創(chuàng)建空的數(shù)據(jù)庫(需mysql root權(quán)限): mysql > create database nagdb;
2、創(chuàng)建mysql賬號nagios: mysql > GRANT select ON nagdb.* TO ‘nagdb@’%’;
3、用插件檢查配置:
- [root@mysql /usr/local/nrpe/libexec]# ./check_mysql -H 192.168.0.102 -u nagios -d nagdb
- Uptime: 189145 Threads: 2 Questions: 3501834 Slow queries: 0 Opens: 67 Flush tables: 1 Open tables: 57 Queries per second avg: 18.514
4、從nagios服務(wù)器上再檢查一次:
- [root@nagios /usr/local/nagios/libexec]# ./check_mysql -H 192.168.0.102 -u nagios -d nagdb
- Uptime: 189664 Threads: 2 Questions: 3501836 Slow queries: 0 Opens: 67 Flush tables: 1 Open tables: 57 Queries per second avg: 18.463
一切正常以后,mysql服務(wù)器這邊的配置和測試就算完成了。
#p#
三、nagios服務(wù)器上的操作.即在nagios配置文件后面追加內(nèi)容。
(一)、主機配置文件追加mysql主機定義,聯(lián)系組contactgroups 的值為sagroup,dbgroup,具體步驟參照前面的操作。
(二)、聯(lián)系人配置文件(contacts.cfg)追加數(shù)據(jù)庫管理員定義(dba1),具體步驟參照前面的操作。
(三)、聯(lián)系組配置文件(contactgroups.cfg)追加數(shù)據(jù)庫管理員組定義(dbgroup),其成員為聯(lián)系人配置文件(contacts.cfg)定義的數(shù)據(jù)庫管理員(dba1)。
(四)、服務(wù)配置文件(services.cfg)追加mysql服務(wù)監(jiān)控,除了mysql服務(wù)監(jiān)控而外,其他幾個對象都于前面的類似,只不過聯(lián)系組多了一個dbgroup。這里列出mysql服務(wù)這個定義:
- define service {
- host_name nagios-server
- service_description check_mysql
- check_period 24×7
- max_check_attempts 4
- normal_check_interval 3
- retry_check_interval 2
- contact_groups sagroup,dbgroup
- notification_interval 10
- notification_period 24×7
- notification_options w,u,c,r
- check_command check_mysql
- }
(五)、命令配置文件(command.cfg)追加檢查mysql的定義,其追加內(nèi)容為:
- define command {
- command_name check_mysql
- command_line $USER1$/check_mysql –H $HOSTADDRESS$ -u nagios –d nagdb
- }
(六)、檢查并啟動nagios
- cd /usr/local/nagios
- bin/nagios –v etc/nagios.cfg
- bin/nagios –d etc/nagios.cfg
(七)增加apache驗證帳號
- /usr/local/apache/bin/htpasswd /usr/local/nagios/etc/htpasswd db1
輸入兩次密碼后,從別的計算機的瀏覽器地址欄輸入 http://59.26.240.63/nagios ,再輸入用戶名db1及剛才設(shè)定的密碼,進入頁面后,點擊左上方的鏈接“Service Detail”,就可以看到mysql服務(wù)器當前的運行狀態(tài)(db1用戶只能看到mysql服務(wù)器狀態(tài),而管理員sery賬號則可以看所有被監(jiān)控對象的狀態(tài))。
通過文章的介紹,我們清楚的知道了Nagios用來監(jiān)控mysql服務(wù)器還是很給力!
【編輯推薦】
- 部署nagios服務(wù)
- 開源監(jiān)控利器nagios之場景描述
- nagios監(jiān)控WIN2003
- nagios安裝三劍客
- Nagios驗證配置文件
- nagios作用
- nagios 布署配置筆記