十個(gè)Nagios故障解決技巧
Nagios問(wèn)題處理如下所述:
1、監(jiān)控狀態(tài)不正常怎么辦?
答、建議從本機(jī)手動(dòng)check看看結(jié)果,檢查防火墻等防止端口被阻止訪問(wèn),造成監(jiān)控失誤。
2、nrpe在 ./configure時(shí)提示:
checking for SSL... configure: error: Cannot find ssl libraries
答、把openssl-devel裝上就可以了.
3、nagios web界面提示:
It appears as though you do not have permission to view information for any of the services you requested...
答、打開cgi.cfg配置文件, use_authentication=1
為了保障系統(tǒng)的安全性,nagios設(shè)置了這個(gè)參數(shù),默認(rèn)為1,改為0即可。
4、如果NSClient設(shè)置了連接需要密碼或者改變了端口,哪么服務(wù)器應(yīng)該怎么連接?
答、$USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s PASSWORD -v $ARG1$ $ARG2$
-p 指定 port -s 指定 password
5、Service Commands 中Enable notifications for this service時(shí)報(bào)錯(cuò):
Sorry Dave, I can't let you do that...
It seems that you have chosen to not use the authentication functionality of the CGIs.
答、修改cgi.cfg文件
修改use_authentication=1 (默認(rèn)) ,如果沒(méi)有添加,重啟nagios服務(wù)。
6、監(jiān)控mysql的時(shí)候提示錯(cuò)誤:is not allowed to connect to this MySQL server
Server (nagios服務(wù)端192.168.0.132)
#/usr/local/nagios/libexec/check_mysql -H 192.168.0.207 -u root -p xukixu
此時(shí)可能會(huì)出現(xiàn)錯(cuò)誤:Host '192.168.0.132' is not allowed to connect to this MySQL server
答、在客戶端client(192.168.0.207)做個(gè)mysql授權(quán)用戶訪問(wèn)即可:
mysql>grant all privileges on *.* to root@192.168.0.132 identified by '123456';
mysql>flush privileges;
7、如何添加一臺(tái)監(jiān)控 38101 端口的Linux服務(wù)器?
答、首先需要在 command.cfg 里邊定義 check_tcp (默認(rèn)已經(jīng)定義)
然后在拷貝 localhost 配置文件,修改主機(jī)名,ip,別名等信息,添加服務(wù)項(xiàng),check_tcp!38101
然后在 nagios.cfg 主配置文檔里添加該主機(jī)配置文件路徑;
檢查配置文件正確性,并重啟 nagios 使配置生效。
8、怎么樣比較清晰的管理盡千臺(tái)主機(jī)?
答、建議每個(gè)配置文件單獨(dú)管理一臺(tái)主機(jī),然后將所有主機(jī)的配置文件單獨(dú)放在通一個(gè)目錄底下,做好定期備份,這樣,可以方便修改不同主機(jī)上的不同服務(wù),而且可以很方便的臨時(shí)增加和刪除一個(gè)主機(jī)節(jié)點(diǎn)。
9、如何添加一個(gè)管理插件的配置?
答、在 command.cfg 配置文件里可以添加插件,要添加的插件必須存在于主機(jī)的 libexec/* 目錄下,否則,在檢測(cè)配置文件的時(shí)候會(huì)報(bào)錯(cuò)!
10、我裝了nagios-plugin沒(méi)有check_mysql check_snmp 等插件都沒(méi)有,為什么?
答、check_mysql在nagios-plugin的高版本中(nagios-plugins-1.4.13.tar)已經(jīng)帶了check_mysql插件,如果需要check_snmp,請(qǐng)安裝 net-snmp-devel 之后再重新編譯nagios來(lái)實(shí)現(xiàn)!
11、能舉例說(shuō)明一下配置文件參數(shù)的意義么?
監(jiān)控windows服務(wù)器運(yùn)行的時(shí)間:
check_command check_nt!UPTIME
監(jiān)控Windows服務(wù)器的CPU負(fù)載,如果5分鐘超過(guò)80%則是warning,如果5分鐘超過(guò)90%則是critical
check_command check_nt!CPULOAD!-l 5,80,90
監(jiān)控Windows服務(wù)器的內(nèi)存使用情況,如果超過(guò)了80%則是warning,如果超過(guò)90%則是critical
check_command check_nt!MEMUSE!-w 80 -c 90
監(jiān)控Windows服務(wù)器C:\盤的使用情況,如果超過(guò)80%已經(jīng)使用則是warning,超過(guò)90%則是critical, -l 后面接的參數(shù)用來(lái)指定盤符
check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90
監(jiān)控Windows服務(wù)器D:\盤的使用情況,如果超過(guò)80%已經(jīng)使用則是warning,超過(guò)90%則是critical
check_command check_nt!USEDDISKSPACE!-l d -w 80 -c 90
監(jiān)控Windows服務(wù)器的W3SVC服務(wù)的狀態(tài),如果服務(wù)停止了,則是critical
check_command check_nt!SERVICESTATE!-d SHOWALL -l W3SVC
監(jiān)控Windows服務(wù)器的Explorer.exe進(jìn)程的狀態(tài),如果進(jìn)程停止了,則是critical
check_command check_nt!PROCSTATE!-d SHOWALL -l Explorer.exe
command.cfg 里 command_line $USER1$/check_tcp -H $HOSTADDRESS$ -p $ARG1$ $ARG2$ 中,-p 后$ARG1$ $ARG2$ 表示在 host.cfg 配置文件中 check_tcp 可以跟兩個(gè)端口參數(shù),比如:check_tcp!20!21
nagios問(wèn)題解決辦法就為讀者介紹完了,如果讀者有不明白的地方可以閱讀:安裝配置nagios、修改Apache配置?、監(jiān)控Linux服務(wù)器?、Nagios 3.0初步安裝配置和監(jiān)控Windows服務(wù)器