針對主機監控的配置項都是怎樣的呢?一般對于主機的監控配置都會寫在一個名字為hosts.cfg的配置文件中,以下是定義一臺主機可以用到的定義參數:
define host{ host_name
host_name #簡短的主機名稱 alias
alias #別名,可以更詳細的說明主機 address
address #ip地址,當然你如果足夠信任你的DNS的話,也可以寫名稱。如果你不定義這個值,nagios將會用host_name去尋找主機。 parents host_names #上一節點的名稱,也就是指從nagios服務器到被監控主機之間經過的節點,可以是路由、交換機、主機等等。當然,這個節點也要定義,并且要被nagios監控。 hostgroups hostgroup_names #主機組名稱,簡短的 check_command command_name #檢查命令的簡短名稱,如果此項留空,nagios將不會去判斷該主機是否alive。 max_check_attempts 整數 #當檢查命令的返回值不是“OK”時,重試的次數 check_interval 數字 #循環檢查的間隔時間。 active_checks_enabled [0/1] #是否啟用“active_checks” passive_checks_enabled [0/1] #是否啟用“passive_checks”,及“被動檢查” check_period timeperiod_name #檢測時間段簡短名稱,注意這個只是個名稱,具體的時間段要寫在其他的配置文件中哦! obsess_over_host [0/1] #是否啟用主機操作系統探測。 check_freshness [0/1] #是否啟用freshness測試。freshness測試是對于啟用被動測試模式的主機而言的,其作用是定期檢查該主機報告的狀態信息,如果該狀態信息已經過期,freshness將會強制作主機檢查。 freshness_threshold 數字 #fressness的臨界值,單位為秒。 如果定義為0,則為自動定義。 event_handler command_name #當主機發生狀態改變時,采用的處理命令的簡短的名字(可以在commands.cfg中對其定義) event_handler_enabled [0/1] #是否啟用event_handler low_flap_threshold 數字 #抖動的下限值。這里我簡單解釋一下抖動的含義,它定義了這樣一種現象:在一段時間內,主機(或服務)的狀態值頻繁的發生變化,類似一個問題風暴或者一個網絡問題。 high_flap_threshold 數字 #抖動的上限值 flap_detection_enabled [0/1] #是否啟用抖動檢測 process_perf_data [0/1] #是否啟用processing of performance data retain_status_information [0/1] #程序重啟時,是否保持主機狀態相關的信息 retain_nonstatus_information [0/1] #程序重啟時,是否保持主機狀態無關的信息 contact_groups
contact_groups #聯系人組(這個組會在contactgroup.cfg文件中定義),在此組中的聯系人都會受到該主機的告警提醒信息。 notification_interval 整數 #告警臨界值。達到此次數之后,才會發送該機的報警提醒信息。 notification_period timeperiod_name #該機的告警時間段 notification_options [d,u,r,f] #該機告警包括的狀態變化結果 notifications_enabled [0/1] #是否啟用告警提醒功能 stalking_options [o,d,u] #持續狀態檢測參數,o = 持續的UP狀態, d = 持續的DOWN狀態, and u = 持續的UNREACHABLE狀態. } |
呵呵,看了上面那么長的配置說明是否有點頭暈,一般我們對主機的監控需求是很簡單的,如:
在 任何時間內,只要用ping命令判斷是否可以ping通主機即可。連續出現5次ping不通,則斷定其出現問題。連續出現3次問題發通知到mygroup 組。發送提醒包括以下狀態改變:DOWN(ping不通) UNREACHABLE(不可達) RECOVERY(恢復正常,可以ping通了)
根據以上需求,其監控主機的配置如下即可:
define host {
host_name test.1
alias test.1
address 192.168.0.1
contact_groups mygroup
check_command check-host-alive
max_check_attempts 5
notification_interval 3
notification_period 24x7
notification_options d,u,r
}