Nagios服務(wù)器的自我監(jiān)控實(shí)現(xiàn)
Nagios服務(wù)器的自我監(jiān)控實(shí)現(xiàn)有倆種方法,實(shí)現(xiàn)都能簡單!
圖-Nagios
Nagios服務(wù)器的自我監(jiān)控實(shí)現(xiàn)
要實(shí)現(xiàn)資源和服務(wù)兩個(gè)方面的監(jiān)控,需要配置服務(wù)器端(nagios server)及被監(jiān)控端(NRPE-nagios remote plugin
executor).為了能順利地、有條理的部署nagios監(jiān)控平臺,一個(gè)好的工作風(fēng)格是在nagios
server自身實(shí)現(xiàn)服務(wù)和資源的監(jiān)控,然后再在其他監(jiān)控端部署nrpe,從nagios
server端用check_nrpe測試通過后,再在nagios
server配置文件中逐一增加監(jiān)控項(xiàng)目。當(dāng)然如果只是監(jiān)控服務(wù)而不監(jiān)控主機(jī)資源,則被監(jiān)控端不做任何nrpe的安裝。為了方便初學(xué)者更容易上手和成功,
我們就從簡單的步驟開始。
自我監(jiān)控實(shí)現(xiàn):配置郵件發(fā)送功能 因?yàn)閳?bào)警郵件發(fā)送給用戶郵箱后,監(jiān)控系統(tǒng)本身沒有必要接受別的郵件服務(wù)器發(fā)送的郵件,因此只需要使用服務(wù)器本身自帶的sendmail來發(fā)送報(bào)警信息即可。用sendmail的另外一個(gè)目的就是簡便。
如果系統(tǒng)是redhat 或 centos ,只需執(zhí)行 service sendmail start
啟動(dòng)守護(hù)進(jìn)程,然后再用dns服務(wù)器給它一個(gè)合法的域名(即A記錄),馬上就可以用mail命令來發(fā)送測試郵件到你的某個(gè)電子郵箱里了。收到測試郵件,就
說明郵件系統(tǒng)配置結(jié)束,是不是很容易呢?這里給一個(gè)發(fā)送郵件的例子:
mail -s "This is sery's nagios test mail" sery@163.com
#p#
自我監(jiān)控實(shí)現(xiàn):測試短信發(fā)送
正常情況下,沒有任何服務(wù)器能向手機(jī)發(fā)送短消息的,要到達(dá)這個(gè)目的,得花錢購買短信服務(wù)(也有些人運(yùn)用飛信一類的方式來達(dá)到這個(gè)目的,個(gè)人覺得對于運(yùn)營
網(wǎng)站不是太靠譜)。要是在幾年前,自己申請短信通道還是有可能的,2005年以后似乎門檻提高了很多。當(dāng)你付費(fèi)成功后,短信服務(wù)商會給你提供入口及加密關(guān)
鍵字;然后我們自己寫個(gè)腳本就可以發(fā)送短信。以下是我的服務(wù)器用perl寫的腳本:
- #!/usr/bin/perl -w
- use strict;
- use LWP::Simple;
- use URI::Escape;
- use Digest::MD5;
- my ($mobile, $content) = @ARGV;
- my $log_control = 1;
- my $key = 'Ysdbyhd6T';
- my $souce_content = substr($mobile, 0, 8) . substr($mobile, -10, 10) . $key;
- my $md5 = Digest::MD5->new;
- $md5->add($souce_content);
- my $result_conent = uc($md5->hexdigest);
- my
- $url =
- "http://http.asp.sh.cn/MT.do?Username=sery&Password=([-BVG'0&Mobile=$mobile&Content=$content&Keyword=$result_conent";
- my $result = get $url;
- if($log_control) {
- my $fh;
- open($fh, '>> /var/log/sms.log') or die "can't open log: $!";
- print $fh join(' ', time, $result, "n");
- close $fh;
- }
(以上腳本有宇捷提供) 說明: 1、my $key = 'Ysdbyhd6T'' 短信服務(wù)商給的驗(yàn)證關(guān)鍵字?! ?、my $url="….." 短信服務(wù)商給的用戶名、密碼以及短信服務(wù)商的訪問接口(url)全包括在這里了。
我們把這個(gè)文件放在目錄 /usr/local/bin/ 下面,把它命名為 sms_send.pl ,用命令 chomod +x
/usr/local/bin/sms.pl
給與它執(zhí)行權(quán)限。這個(gè)腳本在各種各樣的unix、linux下都可以正常工作,nagios報(bào)警短信發(fā)送就是靠它了。如果讀者也打算拿這個(gè)腳本發(fā)送短信的
話,只要改一下key值和url值就可以直接使用。
接下來就是驗(yàn)證是否可以發(fā)送短信,執(zhí)行命令行
/usr/local/bin/sms.pl 13300108888 "It is a test"
,回車后數(shù)秒鐘,你的手機(jī)應(yīng)該能收到帶有內(nèi)容"It is a
test"的短信息。為了保證短信服務(wù)的可靠性,我做了一個(gè)策略:每天下午6點(diǎn)定時(shí)給我發(fā)一個(gè)通知短信;告訴我短信發(fā)送是正常的,也是該下班回家了。做
法:執(zhí)行 crontab -e 然后輸入行 00 18 * * * /usr/local/bin/sms.pl 13300108888
"It is Ok" 。
通過閱讀文章,我們明白了Nagios服務(wù)器的自我監(jiān)控實(shí)現(xiàn)的兩種途徑:郵箱和手機(jī)短信
【編輯推薦】
- 限制Nagios報(bào)警次數(shù)用escalations
- Nagios監(jiān)控服務(wù)器的配置
- Nagios監(jiān)控Windows客戶端
- Ubuntu下安裝運(yùn)行Nagios
- 運(yùn)維監(jiān)控Nagios:啟動(dòng)服務(wù)
- Nagios遠(yuǎn)程監(jiān)控軟件的裝置與設(shè)置裝備
- nagios報(bào)警通過飛信