開源監控利器nagios manifold補充版

2021-09-05 03:12:28 字數 2958 閱讀 2682

網友

manifold

的補充  

nagios支援對主機與服務所對應聯絡人通知的物件擴充套件。主機與服務中有關通知的物件擴充套件是由物件定義檔案裡的主機擴充套件物件和服務擴充套件物件來宣告的。

注意下面例子裡只給出了服務擴充套件物件定義,其實主機擴充套件物件定義也是一樣的,當然,主機擴充套件是給主機物件的,而服務擴充套件只給服務物件。 :-)

8.9.2. 什麼時候做通知擴充套件?

通知擴充套件將會且僅會在乙個或多個擴充套件物件與當前要送出的通知相匹配時才做。如果主機與服務的通知與物件擴充套件不匹配任何乙個合法的物件擴充套件,不會有主機或服務的物件擴充套件被應用於當前的通知過程中。見下面的例子:

define serviceescalation

define serviceescalation

要注意有乙個通知的物件擴充套件定義的「孔洞」(空白區間)。也就是第1與第2個通知不會被擴充套件物件處理,對於超出10的通知也不會處理。對於第1和第2次通知,與全部的通知一樣將使用服務物件裡的預設聯絡人組裡的聯絡人做物件通知。在例子中,假定服務物件定義裡的預設的聯絡人組是名為nt-admins的聯絡人組。

8.9.3. 聯絡人組

當定義了通知相關的物件擴充套件,很重要的一點是要記得「低級別」物件擴充套件裡的聯絡人組一定要出現在「高階別」物件擴充套件裡的聯絡人組。這樣才會確保每乙個將要收到故障通知的人在故障不斷擴張的情況下會持續地收到通知。例如:

define serviceescalation

define serviceescalation

第乙個("低級別")檔次的擴充套件包括了nt-admins和managers兩個聯絡人組。後乙個("高階別")檔次的擴充套件包括了nt-admins、managers和everyone等三個聯絡人組。注意,nt-admins這個聯絡人組被包含在兩個檔次的擴充套件裡,這樣做可以使這個聯絡人組的成員可以在前兩個通知送達後仍舊可以接到後序的通知。managers聯絡人組最初是在第乙個檔次("低級別")的擴充套件裡出現-裡面的成員會在第三個通知開始送出時收到通知。肯定是希望managers組裡的聯絡人可持續地收到之後的通知(如果第5次故障通知還在的話),因而這個組也加到了第2("高階別")檔次的擴充套件定義裡了。

8.9.4. 擴充套件範圍的覆蓋

關於通知的物件擴充套件可以被覆蓋,見下面的例子:

define serviceescalation

define serviceescalation

在上例中,

nt-admins和managers兩個聯絡人組將在第3次通知開始時收到通知;

全部的三個聯絡人組將在第4和第5次通知時收到通知;

僅僅是on-call-support聯絡人組會在第6次及之後的通知送出時收到通知。

8.9.5. 恢復的通知

當通知被擴充套件的時候,恢復通知會因故障通知狀態不同而稍有不同,見下例:

define serviceescalation

define serviceescalation

如果在第3次故障通知之後服務檢測後要送出乙個恢復通知,那麼誰會收到通知?事實上,這個恢復通知應該算是第4個通知,然而nagios的通知擴充套件**會「聰明地判斷出」其實只有收到第3次通知的聯絡人組才應該收到這個恢復通知。這時,nt-admins和managers聯絡人組將收到這個恢復通知。(譯者注:那個on-call-support組裡的聯絡人不會收到!)

8.9.6. 通知間隔

還可以修改對指定主機與服務通知的送出頻度,用主機擴充套件與服務擴充套件物件定義裡的notification_interval域來指定不同的頻度。如下例:

define serviceescalation

define serviceescalation

這個例子中,這個服務的預設通知送出間隔是240分鐘(該值是在服務物件定義裡設定的)。當該服務的通知被擴充套件到第3、第4和第5次時,每次通知的間隔將是45分鐘。在第6次及之後,通知間隔將變成60分鐘,這個是在第2個的服務擴充套件物件裡定義的。

既然主機與服務的物件擴充套件有可能覆蓋,而且某個主機事實上有可能從屬於多個主機組,那麼nagios就不得不就在通知間隔有覆蓋的情況下取哪個通知間隔做個決定。當對於乙個服務通知存在有多個合法有效的物件擴充套件定義時,nagios將會取其中最小的通知間隔來做為間隔。見下例:

define serviceescalation

define serviceescalation

該例中有針對第4和第5次通知,有兩個物件擴充套件相互覆蓋。這兩次通知間隔裡,nagios的通知間隔將是45分鐘,因為當這幾次通知要送出時在現有的合法有效的服務物件擴充套件裡這個值最小。

define serviceescalation

define serviceescalation

define serviceescalation

在上例中,故障通知的最大次數是在4。這是因為第二檔次的服務物件擴充套件裡的通知間隔值是0,因而(當第4次通知將要被送出時)只會送出乙個通知而之後通知被抑制。因此,在第4次通知送出後第三個服務擴充套件物件無論如何也不會起作用了。

8.9.7. 時間週期的限制

通常的情況下,對通知的物件擴充套件可以用於任意想要送出主機與服務通知的時刻。這個"通知時間視窗"取決於主機與服務物件定義裡的notification_period域值。

可以用主機擴充套件與物件擴充套件裡的escalation_period域來指定乙個特定時間週期使得擴充套件被限定只處於某個特定時間段內。使用escalation_period域來指定某個時間週期裡物件擴充套件是可用的,物件擴充套件將只是在指定的時間裡可用。如果沒有在escalation_period域裡指定時間週期,主機擴充套件與服務擴充套件將會在"通知時間視窗"內的任意時間裡是可用的。

注意通知擴充套件依舊會受限於主機與服務物件定義裡的notification_period域所指定的時間週期,因而特定的物件擴充套件裡的時間週期是乙個更大範圍"通知時間視窗"的子集。

8.9.8. 狀態限制

如果想只是想用特定的主機與服務的狀態限定針對通知的擴充套件,可以用主機擴充套件和服務擴充套件物件裡的escalation_options域來指定。如果沒有指定escalation_options域,針對通知的擴充套件將作用於主機與服務的任何狀態之上。

開源監控利器nagios manifold補充版

manifold 的補充 nagios支援對主機與服務所對應聯絡人通知的物件擴充套件。主機與服務中有關通知的物件擴充套件是由物件定義檔案裡的主機擴充套件物件和服務擴充套件物件來宣告的。注意下面例子裡只給出了服務擴充套件物件定義,其實主機擴充套件物件定義也是一樣的,當然,主機擴充套件是給主機物件的,而...

開源監控利器nagios manifold補充版

manifold 的補充nagios支援對主機與服務所對應聯絡人通知的物件擴充套件。主機與服務中有關通知的物件擴充套件是由物件定義檔案裡的主機擴充套件物件和服務擴充套件物件來宣告的。注意下面例子裡只給出了服務擴充套件物件定義,其實主機擴充套件物件定義也是一樣的,當然,主機擴充套件是給主機物件的,而服...

運維監控利器nagios

nagios的概念和功能 nagios是一款開源的免費網路監視工具,其功能強大,靈活性強。能有效監控windows linux和unix的主機狀態,交換機 路由器等網路設定,印表機等,在系統或服務狀態異常時發出郵件或簡訊報警第一時間通知 運維人員,在狀態恢復後發出正常的郵件或簡訊通知。nagios可...