Nagios 3.2 監控部署(三)

六、啓動nrpe服務並檢查其配置1、以獨立守護進程啓動nrpe服務/usr/local/nrpe/bin/nrpe –c /usr/local/nrpe/etc/nrpe.cfg –d2、查看系統日誌,如果正常啓動可以看到以下輸出:[root@rhel nrpe]# tail /var/log/messages
oct 15 18:01:16 rhel nrpe[11791]: starting up daemon
oct 15 18:01:16 rhel nrpe[11791]: listening for connections on port 5666oct 15 18:01:16 rhel nrpe[11791]: allowing connections from: 127.0.0.1,192.168.0.10查看端口:[root@rhel nrpe]# netstat -an |grep 5666tcp00 0.0.0.0:56660.0.0.0:*listen查看進程:[root@rhel nrpe]# ps aux |grep nrpe |grep -v grepnagios117910.00.14868928 ?ss18:010:00 nrpe -c /usr/local/nrpe/etc/nrpe.cfg –d3、檢查插件功能
1
)檢查nrpe的服務版本[root@rhel nrpe]# /usr/local/nrpe/libexec/check_nrpe -h 192.168.0.10nrpe v2.122)檢查nrpe.cnf裏面定義的命令有沒有錯誤,也就是檢查主機資源:[root@rhel nrpe]# /usr/local/nrpe/libexec/check_nrpe -h 192.168.0.10 -c check_dfdisk ok - free space: / 5245 mb (60% inode=95%); /home 13329 mb (80% inode=99%); /var 843 mb (9% inode=99%); /boot 82 mb (88% inode=99%); /dev/shm 235 mb (100% inode=99%);| /=3495mb;9197;9207;0;9217 /home=3215mb;17426;17436;0;17446 /var=7897mb;9197;9207;0;9217 /boot=10mb;78;88;0;98 /dev/shm=0mb;215;225;0;235[root@rhel nrpe]# /usr/local/nrpe/libexec/check_nrpe -h 192.168.0.10 -c check_loadok - load average: 0.00, 0.00, 0.00|load1=0.000;15.000;30.000;0; load5=0.000;10.000;25.000;0; load15=0.000;5.000;20.000;0;[root@rhel nrpe]# /usr/local/nrpe/libexec/check_nrpe -h 192.168.0.10 -c check_ipsok -connectcounts is 4nrpe.cnf裏面的其它的一些命令也可以測試一下;七、啓動nagios首先檢查一下配置文件有沒有錯誤[root@rhel nrpe]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfgnagios core 3.2.0reading configuration data...read main config file okay...……………省………………read object config files okay...checking misc settings...total warnings: 0total errors:0things look okay - no serious problems were detected during the pre-flight check如果要錯誤的話可以根據提示把錯誤全部改正,像上面輸出total warnings: 0 total errors: 0 都爲0時,說明配置文件沒有問題,下面就可以啓動nagios了;/usr/local/nagios/bin/nagios –d /usr/local/nagios/etc/nagios.cfg正學啓動之後,就可以通過瀏覽器輸入:http://192.168.1.10/nagios,,再輸入前面第三大步2小步那裏設置的密碼,登錄進去後:點擊左邊current status下面的services就可以看到監控服務器所監控的主機項目了;如圖下:200910161255684491789.jpg到這裏就是大功告成了!總結幾點:1、在創建各種配置文件時,注意定義的名稱那裏不要留有空格;2、關於插件的用法,可以通過去–h 來查看,如: check_load –h ;3、關於系統防火牆設置,我的一開始就是因爲防火牆的原因而收不到郵件以及在監控windows主機時會超時的;在這裏所用到的端口有UDP 137:138 TCP258053566612489,還有一個就是ICMP,這些都要用到;注意是雙向,不要搞到給他從本機出去之後回不來(我的剛開始就是這樣)。4、本文部分內容參考田逸的《開源監控利器nagios》以及yahoon的小屋的nagios全攻略5、看文檔吧。6、歡迎點評。以下內容摘自田逸的《開源監控利器nagios》一文,來自Linux/Unix技術交流羣共享。服務器監控的一些策略前段時間有人問我怎麼用nagios監控linux內存使用情況,以及怎麼設置報警閾值?linux運行時,是最大可能的利用內存,監控這個對象沒有現實意義,明顯屬於無效的監控策略.另有一人說:”晚上沒完沒了的收到監控系統的發送的報警短信,受不了…”。不言而喻,這也是一個不好的監控策略,實際上監控已經失去了它的意義。所以要讓監控平臺更有效的發揮作用,好的策略是必須的。那麼怎麼才能算是好的策略,這裏我結合我的實際情況,談談我的一些看法,希望對大家有所幫助。策略一:監控對象選擇在一個規模較大的網絡中,監控的對象可能包括服務器、防火牆、交換機、路由器等等設備,以及運行在各對象上的服務。但是,我們沒必要把所有的對象都放到這個監控系統中來。比如把某些測試系統放到監控中,就會產生如上那位老兄整個晚上收到報警短信的麻煩。因此,選擇正確的監控對象是實施有效監控的前提,個人建議,只有那些重要級別高的,不能隨便停止服務的對象――如在線交易系統――纔是值得監控的對象。當然,服務器的使用者總希望你把它監控上,哪怕它不是那麼重要。策略二:故障報警方式選擇老闆非常希望我們不知疲倦的坐在計算機旁,但是他只是一廂情願而已。對監控系統而言,一定要有合適的故障告警機制。目前常用的告警機制包括:郵件、短信、msnweb頁面顯示等幾種手段,這幾種手段中,短信報警最佳。因爲在夜間睡夢中,我們沒辦法隨時收郵件,但是短信去能喚醒我們,通知我們發生故障了,而且在老闆和用戶發現這個故障以前。對於沒有通道的機構來說,租用sp提供的服務是比較穩妥的方式,其他如用移動飛信等方式都不怎麼考譜,不適合關鍵性業務運營。另外我使用了一個小技巧,讓監控平臺每天下午給我發一條短信,不管有沒有故障都發,這樣以便讓我知道短信接口是否正常。策略三:故障報警時效和間隔的選擇由於網絡通信等不可控因素,因此可能存在故障誤報的情況。如果把報警發送設置成一次探測不成功就發送報警信息就不是個好策略。經驗表明:探測3-4次都失敗再發送信息,並不耽誤我們去處理故障。假如探測一次失敗就報警,即可以很快把手機短信空間塞滿,又會讓你睡不好覺。故障報警開始發送以後,一般會沒完沒了的發送,直到故障排除恢復正常,纔會發一條類似“*** is ok!”的短信。報警發送間隔設置,也是需要費一番心思,設短了,不停的消耗你的短信費用,設長了,恐怕不足以喚醒沉睡的人;如果沒有人去處理故障,也沒有人去停止這個通知,報警信息就會一直髮送下去。那怎麼樣是一個合適的範圍呢?我的做法是:探測4次失敗開始報警,報警間隔10分鐘,總共發送8次,然後停止發送,假如第3次沒有人去處理,我會電話通知,沒回應則取消該對象的監控,並記錄該次事件。策略四:監控平臺地點的選擇對於一個規模比較大的網絡,爲了解決南北互聯問題而採取多個地點建立數據中心的辦法。這時需要對不同地理位置的服務器進行監控,也會遇到訪問慢的問題。解決這個問題有幾種方式:1、選擇一個到各個位置訪問都順暢的數據機房;2、採取分步是監控平臺,各處自己收集監控信息,然後到一處彙總;3、各數據中心單獨建監控平臺。各人可以根據自己的實際情況自行選擇。策略五:流量控制和安全有不少商業解決方案採取snmp和客戶端軟件來監控各個對象,這會引起額外的流量和帶來安全問題。因此儘量不要使用snmp這樣比較佔資源的協議(具稱snmp v3似乎有所改進)。開源解決方案Nagios在這方面做得比較完美,值得推薦一下。它可以以插件方式先收集到各監控對象的信息,然後再傳送到監控服務器上,大大節省網絡帶寬。Nagios內存監控腳本使用方法#!/bin/bash
# check memory script
# sunny 2008.2.15# Total memory
TOTAL=`free -m | head -2 |tail -1 |gawk '{print $2}'`
# Free memory
FREE=`free -m | head -2 |tail -1 |gawk '{print $4}'`# to calculate free percent
# use the expression free * 100 / total
FREETMP=`expr $FREE \* 100`
PERCENT=`expr $FREETMP / $TOTAL`echo "$FREE MB ($PERCENT%) Free Memory"
exit 0#將上面的內容複製到/usr/local/nagios/libexec/check_mem.sh
#並用chmod a+x check_mem.sh 爲這個插件添加執行功能
#在command.cfg中添加一項check_mem的內容如下# 'check_mem' command definition
define command{
command_name check_mem
command_line $USER1$/check_mem.sh -H $HOSTADDRESS$
}#接下來可以在services.cfg文件中添加了一項內存的監控如下
define service{
host_name nagios-server
service_description check_mem
check_command check_mem
max_check_attempts 5
normal_check_interval 3
retry_check_interval 2
check_period 24x7
notification_interval 10
notification_period 24x7
notification_options w,u,c,r
contact_groups sagroup
}記得最後測試一下配置文件/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章