企業監控利器nagios應用終結篇

1.nagios告警

這一篇我們聊聊nagios監控告警,我們知道nagios特點就是強大的告警功能,這也是它最大的特色,雖然有人說配置基於文本,不好維護,
不像zabbix可以web端添加主機信息,但如果善用腳本,批量配置千百臺主機和服務也是很容易的事,nagios支持多種告警模式,如郵件、微信、短信和電話告警。
這也是比較常用的告警方式。
nagios監控告警配置文件contacts.cfg
define contact{
contact_name nagiosadmin
use generic-contact
alias Nagios Admin
email [email protected]
}

         也可以配置http短信網管報警
         command.cfg中定義

模板中定義
http短信網關報警
define contact{
contact_name nagiosadmin
use generic-contact
alias Nagios Admin
email [email protected]
pager xxxxxxxxx
}
在本次測試環境中,我選用的是110告警,配置短信郵件微信及電話告警,免費服務會有次數限制,企業監控環境建議根據實際情況購買服務。

http://www.110monitor.com/ 手機註冊登陸,創建nagios應用,該平臺可以配置nagios、zabbix等主流監控平臺。
企業監控利器nagios應用終結篇

根據配置步驟進行配置,然後設置通知策略。關閉一臺主機服務,收到短信等告警信息如下圖。
企業監控利器nagios應用終結篇

企業監控利器nagios應用終結篇

企業監控利器nagios應用終結篇
當然還可以設置電話告警,該場景特別適用緊急業務和晚上告警通知。
也可以通過該平臺的協作策略,採用釘釘機器人告警,還可以認領指派。配置過程該平臺有說明。實現的效果如下圖。

企業監控利器nagios應用終結篇

2.nagios補充

每次修改過你的配置文件,你應該運行一次檢測程序來驗證配置的正確性。在運行你的Nagios程序之前這是很重要的,否則的話會導致Nagios服務因配置的錯誤而關閉。
爲驗證你配置,運行Nagios帶命令行參數 -v,象這樣:
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
初始化腳本:最簡單的啓動Nagios守護進程的方式是使用初始化腳本,象這樣:
/etc/rc.d/init.d/nagios start
手工方式:你可以手動地啓動Nagios守護進程,用命令參數-d,象這樣:
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
快速啓動選項
介紹
只有很少幾件事可以減少Nagios的啓動或重啓總時間。加速啓動方法包括有移除些負擔還包括加快配置文件處理過程。
利用這些技術在如下一種或幾種情況時特別有效:

大型安裝配置
複雜地配置(過度地利用模板特性)
需要進行頻繁重啓動的安裝模式
背景
每次Nagios啓動和重啓時,在它着手進行監控工作之前必須要處理配置文件。啓動過程中的配置處理包括如下幾步:

讀入配置文件
解析模板定義
重粘連("Recombobulating")對象(是我想到的應做各種工作)
複製對象定義
繼承對象屬性
對象定義排序
驗證對象關聯關係的完整性
驗證迴路
和其他...
當有很大的或是很複雜的配置文件要處理時有幾步非常消耗時間的。有沒有加快這些的辦法?當然有!

評估啓動時間
在做讓啓動速度更快的事情之前,需要看看可能性有多少和是否有必要涉足此事。這個比較容易-只是用-s命令行開關啓動Nagios以取得計時和調度信息。

下面是個輸出樣例(做過精減,只是顯示了有關部分),在這個例子中,假定Nagios配置爲對25個主機和超過10,000個服務進行監控。

/usr/local/nagios/bin/nagios -s /usr/local/nagios/etc/nagios.cfg
Nagios 3.0-prealpha
Copyright (c) 1999-2007 Ethan Galstad (http://www.nagios.org)
Last Modified: 01-27-2007
License: GPL

Timing information on object configuration processing is listed
below. You can use this information to see if precaching your
object configuration would be useful.

Object Config Source: Config files (uncached)

OBJECT CONFIG PROCESSING TIMES (* = Potential for precache savings with -u option)

Read: 0.486780 sec
Resolve: 0.004106 sec
Recomb Contactgroups: 0.000077 sec

Recomb Hostgroups: 0.000172 sec
Dup Services: 0.028801 sec

Recomb Servicegroups: 0.010358 sec
Duplicate: 5.666932 sec

Inherit: 0.003770 sec
Recomb Contacts: 0.030085 sec

Sort: 2.648863 sec
Register: 2.654628 sec
Free: 0.021347 sec
TOTAL: 11.555925 sec
= 8.393170 sec (72.63%)
estimated savings
Timing information on configuration verification is listed below.
CONFIG VERIFICATION TIMES (* = Potential for speedup with -x option)

Object Relationships: 1.400807 sec
Circular Paths: 54.676622 sec *
Misc: 0.006924 sec

TOTAL: 56.084353 sec * = 54.676622 sec (97.5%) estimated savings

OK,看看發生了什麼。先看彙總信息,大概有11.6秒用於處理配置文件有56秒來驗證配置。這意味着每次用這個配置啓動或重啓Nagios時,它大約會有68秒來做啓動事項而不會做任何監控的事情!如果是在定製配置Nagios過程中也是不可容忍的。

那麼怎麼辦?看一下輸出內容,如果運用了優化選項,Nagios將可以在配置讀取過程節省大約8.4秒而在驗證過程可節省63秒。

哇!從68秒到只有5秒?!是的!看看下面是怎麼做到的。

預緩存對象配置
Nagios可在解析配置文件過程中做些加速,特別是當配置中使用了模板來做繼承等的時候。爲降低Nagios解析配置文件的處理時間可用Nagios預處理與預緩存配置文件的功能。

當用-p命令參數來運行Nagios時,Nagios將讀入配置文件,處理後將配置結果寫入預緩存文件(由主配置文件中precached_object_file域指定文件位置)。該預緩存配置文件將包含了預處理後的信息將使Nagios處理配置文件更容易和快捷。必須把-p參數選項與-v或-s命令參數一起使用,如下例。注意要做預緩存配置文件之前配置應是已被驗證過的。

/usr/local/nagios/bin/nagios -pv /usr/local/nagios/etc/nagios.cfg

預緩存配置文件有大小明顯地比原有配置文件大。這是正常的由設計初衷決定的。
一旦預緩存對象配置文件創建,可以啓動Nagios時帶上-u命令行選項以讓它使用預緩存配置文件而不是配置文件本身。
/usr/local/nagios/bin/nagios -ud /usr/local/nagios/etc/nagios.cfg
如果更改了配置文件,必須在Nagios重啓動前要重新驗證和重建預緩存配置文件。如果沒有重構建預緩存配置文件,Nagios將使用舊配置運行因爲是由舊配置生成的預緩存文件,而不是用新的原始配置文件。
跳過迴路檢測
/usr/local/nagios/bin/nagios -xd /usr/local/nagios/etc/nagios.cfg

聯合起來使用
按照下面步驟將會使用預緩存配置文件並且跳過迴路檢測以充分加速啓動。

1、驗證配置文件並生成預緩存配置文件,用如下命令:

/usr/local/nagios/bin/nagios -vp /usr/local/nagios/etc/nagios.cfg

2、如果Nagios正在運行,停掉它;

3、啓動Nagios,讓其使用預緩存配置文件而且跳過迴路檢測:

/usr/local/nagios/bin/nagios -uxd /usr/local/nagios/etc/nagios.cfg

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章