Nagios是一款開源的計算機系統(tǒng)和網(wǎng)絡(luò)監(jiān)視工具,能有效監(jiān)控Windows、Linux主機的服務(wù)和狀態(tài),并且在系統(tǒng)異常時進行郵件報警,本文主要講述實現(xiàn)郵件報警的操作過程,其它內(nèi)容請參閱官方文檔。
創(chuàng)新互聯(lián)是一家專注于網(wǎng)站設(shè)計、成都網(wǎng)站制作與策劃設(shè)計,紫金網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:紫金等地區(qū)。紫金做網(wǎng)站價格咨詢:18982081108
Nagios郵件報警的實現(xiàn)方式有很多種,在此僅以sendEmail為例(個人認為sendEmail是一款非常方便實用的免費軟件,推薦大家使用)。
sendEmail下載地址:http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
備注:以下所有操作均在監(jiān)控服務(wù)器上進行。
一 安裝sendEmail:
tar -zxf sendEmail-v1.56.tar.gz
cd sendEmail-v1.56
mv sendEmail /usr/local/bin
chown nagios:nagios /usr/local/bin/sendEmail (nagios是安裝nagios程序的用戶)
郵件測試:
/usr/local/bin/sendEmail -f abc@sina.com -t 111111111@qq.com -s smtp.sina.com -u "ab" -xu abc -xp abcdefg -m abcdefgaaaaa
說明:
-f:指定郵件的發(fā)件人
-t:指定收件人
-s:指定郵件服務(wù)器
-u:發(fā)送郵件的主題
-xu:發(fā)件人的用戶名
-xp:發(fā)件人的密碼
-m:郵件要發(fā)送的內(nèi)容(此項的內(nèi)容在nagios配置文件通常被指定)
二 修改命令配置文件:
vim commands.cfg
define command{
command_name notify-service-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n" | /usr/local/bin/sendEmail -o fqdn=FQDN -f abc@sina.com -t 111111111@qq.com -s smtp.sina.com -u"** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" -xu abc -xp abcdefg
}
以上配置當(dāng)服務(wù)異常時會發(fā)郵件
define command{
command_name notify-host-by-email
command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/local/bin/sendEmail -o fqdn=FQDN -f abc@sina.com -t 111111111@qq.com -s smtp.sina.com -u "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" -xu abc -xp abcdefg
}
以上配置當(dāng)主機宕機時發(fā)郵件
三 修改主機配置文件(我為每臺被監(jiān)控端單獨設(shè)置了配置文件,如有其它主機或服務(wù)要實現(xiàn)郵件報警,可按如下模板配置,其優(yōu)先級會高于templates.cfg文件)
define service{
use generic-service
host_name www
service_description MySQL
check_command check_nrpe!check_my
notifications_enabled 1
contact_groups admins
max_check_attempts 3
normal_check_interval 2
retry_check_interval 2
check_period 24x7
notification_interval 3
notification_period 24x7
notification_options w,u,c,r
}