【移動應(yīng)用開發(fā)技術(shù)】自定義nagios插件實現(xiàn)主動被動模式以及nagios基于mail的簡單告警_第1頁
【移動應(yīng)用開發(fā)技術(shù)】自定義nagios插件實現(xiàn)主動被動模式以及nagios基于mail的簡單告警_第2頁
【移動應(yīng)用開發(fā)技術(shù)】自定義nagios插件實現(xiàn)主動被動模式以及nagios基于mail的簡單告警_第3頁
【移動應(yīng)用開發(fā)技術(shù)】自定義nagios插件實現(xiàn)主動被動模式以及nagios基于mail的簡單告警_第4頁
【移動應(yīng)用開發(fā)技術(shù)】自定義nagios插件實現(xiàn)主動被動模式以及nagios基于mail的簡單告警_第5頁
免費預(yù)覽已結(jié)束,剩余2頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

【移動應(yīng)用開發(fā)技術(shù)】自定義nagios插件實現(xiàn)主動被動模式以及nagios基于mail的簡單告警

nagios插件程序提供兩個返回值:一個是插件的退出狀態(tài)碼,另一個是插件在控制臺上打印的第一行數(shù)據(jù)。退出狀態(tài)碼可以被nagios主程序作為判斷被監(jiān)控系統(tǒng)服務(wù)狀態(tài)的依據(jù),控制臺打印的第一行數(shù)據(jù)可以被nagios主程序作為被監(jiān)控系統(tǒng)服務(wù)狀態(tài)的補充說明會顯示在管理頁面里面。 為了管理nagios插件,nagios每查詢一個服務(wù)的狀態(tài)時,就會產(chǎn)生一個子進程,并且它使用來自該命令的輸出和退出狀態(tài)碼來確定具體的狀態(tài)。nagios主程序可識別的狀態(tài)碼和說明如下:OK

退出代碼0--表示服務(wù)正常的工作warning

退出代碼1--表示服務(wù)處于告警狀態(tài)critical

退出代碼2--表示服務(wù)處于緊急,嚴(yán)重狀態(tài)unknown

退出代碼3--表示服務(wù)處于未知狀態(tài)[root@RS1services]#head-7/usr/local/nagios/libexec/utils.sh

#!/bin/shSTATE_OK=0STATE_WARNING=1STATE_CRITICAL=2STATE_UNKNOWN=3STATE_DEPENDENT=4示例一:判斷/etc/passwd文件是否變化,利用nrpe的被動模式原理:利用md5sum進行指紋收集md5sum/etc/passwd>/etc/passwd.md5利用md5sum-c/etc/passwd.md5對指紋進行判別,出現(xiàn)OK則沒有變化,反之則變化了監(jiān)控密碼文件是否被更改:先做指紋庫md5sum/etc/passwd>/etc/passwd.md5在client上創(chuàng)建腳本vim/usr/local/nagios/libexec/check_passwd#!/bin/bashchar=`md5sum-c/etc/passwd.md52>&1|grep"OK"|wc-l`if[$char-eq1];then

echo"passwdisOK"

exit0

else

echo"passwdischanged"

exit2fi######給腳本執(zhí)行權(quán)限chmod+x/usr/local/nagios/libexec/check_passwd#####定義check_passwd命令vim/usr/local/nagios/etc/nrpe.cfgcommand[check_passwd]=/usr/local/nagios/libexec/check_passwd#####重啟nrpe服務(wù)######在nagios主程序先手動抓取數(shù)據(jù)[root@RS1libexec]#./check_nrpe-H1-ccheck_passwdpasswdisOK######在nagios主程序上定義service配置vim/usr/local/nagios/etc/objects/services.cfg(主動模式和被動模式各自的services.cfg配置文件,各自分別管理)defineservice{

use

generic-service

host_name

client02

service_description

check_passwd

check_command

check_nrpe!check_passwd}然后在nagios服務(wù)端進行手動抓取數(shù)據(jù):/usr/local/nagios/libexec/check_nrpe-H1-ccheck_passwd出現(xiàn)數(shù)據(jù),表明基本已經(jīng)沒有問題,重啟服務(wù),觀察web平臺頁面,如下圖:自定義監(jiān)控weburl,用主動模式監(jiān)控[root@RS1~]#curl-I1/index.html2>/dev/null|grep"OK"HTTP/1.1200OK[root@RS1~]#curl-I1/index.html2>/dev/null|grep"OK"|wc-l11、編寫執(zhí)行腳本cd/usr/local/nagios/libexecvimcheck_web_url#!/bin/bashchar=`curl-I1/index.html2>/dev/null|grep"OK"|wc-l`if[$char-eq1];then

echo"theurlisOK"

exit0else

echo"theurliswrong"

exit2fichmod+xcheck_web_url2、添加check_web_url這個命令到commands.cfg配置文件中############definecommandcheck_web_url##########definecommand{

command_name

check_web_url

command_line

$USER1$/check_web_url

}3、編輯servers.cfg文件cd/usr/local/nagios/etc/servicesvimweb_url.cfgdefineservice{

use

generic-service

host_name

client02

監(jiān)控的主機1在hosts.cfg有定義

service_description

web_url

check_period24x7

check_interval5

retry_interval1

max_check_attempts3

check_command

check_web_url

因為是主動模式

notification_period24x7

notification_interval30

notification_options

w,u,c,r

contact_groupsadmins}4、檢測錯誤,重啟服務(wù)[root@RS1services]#/etc/init.d/nagioscheckconfigRunningconfigurationcheck...

OK.[root@RS1services]#/etc/init.d/nagiosreloadRunningconfigurationcheck...Reloadingnagiosconfiguration...done成功截圖:看下整體監(jiān)控效果:實現(xiàn)郵件報警功能:配置告警的步驟:1、添加聯(lián)系人和聯(lián)系組contacts.cfgdefinecontact{

contact_name

huang

use

generic-contact

》這里使用的模板就是模板文件中的contact定義

alias

NagiosAdmin

email

<

}將定義的contact_name添加到一個新組中新增聯(lián)系組:definecontactgroup{

contactgroup_name

mail_users

這里可以定義郵件組,手機短信組,等等

alias

NagiosAdministrators

members

huang

}2、添加報警的命令commands.cfg,這里使用默認(rèn)的命令,當(dāng)然你也可以自己編寫shell腳本或者其他語言腳本3、調(diào)整聯(lián)系人的默認(rèn)模板definecontact{

name

generic-contact

service_notification_period

24x7

host_notification_period

24x7

service_notification_options

w,u,c,r,f,s

host_notification_options

d,u,r,f,s

service_notification_commands

notify-service-by-email

host_notification_commands

notify-host-by-email

如果定義了手機,這里可以加上notify-host-by-email,notify-host-byr,這里使用郵件告警,所以無需設(shè)置

register

0

}4、在hosts、services配置文件中添加報警聯(lián)系人及報警組然后修改模板中service、host的定義,將contact_groups

admins改為contact_groups

mail_users

當(dāng)然也可以不在模板中定義,在hosts、services配置文件中各自定義不同的報警方式和報警組實驗:將網(wǎng)站目錄下面的index.html文件mv到tmp目錄下,使他warning并觸發(fā)告警mv/var/www/html/index.html/tmp可以看見web平臺出現(xiàn)warning狀態(tài),查看nagios日志如圖:然后查看郵件,發(fā)現(xiàn)沒有收到告警郵件

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論