1005 linux系統報警軟件nagios與飛信結合
版權聲明:原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。http://shawonline.blog.51cto.com/304978/165370 |
1005 linux系統報警軟件nagios與飛信結合
內容概要:
nagios快速安裝
nrpe linux/windows被監控端配置
安裝飛信機器人並實現短信報警
關於Nagios相關可參考以下站點:
安裝軟件之前先要安裝操作系統(這裏以CentOS 5.2爲例),搭建lamp環境(可以參考http://shawonline.blog.51cto.com/304978/162882其中至php安裝結束部分)。
系統監控報警軟件nagios
前面已經介紹過cacti的安裝與配置,這裏是把nagios與cacti安裝在同一臺服務器上的,使用同樣的環境設置。
1.1 nagios快速安裝
各平臺的快速安裝指南 http://nagios.sourceforge.net/docs/3_0/quickstart.html
useradd nagios ;echo "nagios" |passwd nagios --stdin
groupadd nagcmd
usermod -a -G nagcmd nagios
usermod -a -G nagcmd apache
mkdir ~/src
cd ~/src
wget http://osdn.dl.sourceforge.net/sourceforge/nagios/nagios-
wget http://osdn.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-
tar -xzvf nagios-
cd nagios-
./configure --with-command-group=nagcmd --with-httpd-conf=/usr/local/apache2/conf/extra/ --enable-embedded-perl
make all
make install
make install-init
make install-config
make install-commandmode
make install-webconf
cd ~/src
tar -xzvf nagios-plugins-
cd nagios-plugins-
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make ;make install
chkconfig --add nagios
chkconfig --level 3 nagios on
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
/usr/local/apache2/bin/htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
由於我們是使用編譯方式安裝的apache,所以在httpd.conf最後添加一行:
Include /usr/local/apache2/conf/extra/nagios.conf
service nagios start
service httpd restart
測試:
Cortona的在線安裝地址爲:http://www.cortona3d.com/install/iexplore.php
1.2 nrpe安裝與配置
安裝nrpe-2.8
cd ~/src
tar -xzvf nrpe-2.8.tar.gz
cd nrpe-2.8
./configure
make all
make install-plugin
如果不作爲被監控端可以不運行以下兩行:
make install-daemon
make install-daemon-config
vi /usr/local/nagios/etc/objects/commands.cfg添加如下幾行:
define command{
command_name nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
useradd nagios ;echo "nagios" |passwd nagios --stdin
tar -xzvf nagios-plugins-
cd nagios-plugins-
./configure --with-nagios-user=nagios --with-nagios-group=nagios
make ;make install
chown nagios.nagios /usr/local/nagios/
chown -R nagios.nagios /usr/local/nagios/libexec/
cd ..
tar -xzvf nrpe-2.8.tar.gz
cd nrpe-2.8
./configure
make all
make install-daemon
make install-daemon-config
vi /usr/local/nagios/etc/nrpe.cfg
server_address=192.168.3.1 #被監控網卡IP
allowed_hosts=192.168.3.119 #充許監控服務器IP地址,多個IP用","分隔
啓動nrpe:
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
netstat -atn |grep 5666
tail /var/log/messages
echo "/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d" >> /etc/rc.d/rc.local
重啓nrpe:
kill -9 `pidof nrpe` &&/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
以下是我的/usr/local/nagios/etc/nrpe.cfg文件:
pid_file=/var/run/nrpe.pid
server_port=5666
nrpe_user=nagios
nrpe_group=nagios
allowed_hosts=127.0.0.1,192.168.0.119
dont_blame_nrpe=0
debug=0
command_timeout=60
connection_timeout=300
command[check_load]=/usr/local/nagios/libexec/check_load -w 20,18,15 -c 30,25,20
command[check_hda1]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda1
command[check_hda2]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda2
command[check_hda3]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda3
command[check_hda4]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda4
command[check_hda5]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda5
command[check_hda6]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda6
command[check_hda7]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda7
command[check_hda8]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda8
如果還有其他服務器需要安裝nrpe linux被監控端程序,首先需要創建nagios用戶:
useradd nagios ;echo "nagios" |passwd nagios –stdin,其次需要將已安裝nrpe服務器的/usr/local/nagios文件夾打包,並解壓到目標服務器即可。
安裝NSClient++-Win32-
開始-運行-services.msc-NSClientpp (Nagios)
修改C:\NSClient++\NSC.ini
重啓服務
在監控端測試nrpe:
/usr/local/nagios/libexec/check_nrpe -H 192.168.3.104
NRPE v2.8
/usr/local/nagios/libexec/check_nt -H 192.168.3.36
I (
1.3 安裝飛信機器人並實現短信報警
nagios監控端的詳細配置這裏不作介紹,我們主要來測試飛信報警的功能。
下載FetionRobot:
安裝FetionRobot:
tar -xzvf library_linux.tar.tar
cp libACE-
cp libACE_SSL-
cp libcrypto.so.
cp libssl.so.
tar -xzvf fetion20090327018-linux.tar.tar
mv install /usr/local/nagios/fetion
chown –R nagios.nagios /usr/local/nagios/fetion
/usr/local/nagios/fetion/fetion –h會列出詳細幫助信息
可以用下面一行命令進行測試:
/usr/local/nagios/fetion/fetion --mobile=15812345678 --pwd=FetionPWD --msg-utf8="信息內容" --msg-type=1 --to=15812345678,15912345678
當然,你得先開通你的飛信服務呵!
修改/usr/local/nagios/etc/objects/commands.cfg,在文件開始部分添加如下幾行:
# 'notify-host-by-fetion' command definition
define command{
command_name notify-host-by-fetion
command_line /usr/local/nagios/fetion/fetion --mobile=15812345678 --pwd=FetionPWD --msg-utf8="*$NOTIFICATIONTYPE
$:$HOSTADDRESS$ is $HOSTSTATE$ at $SHORTDATETIME$*" --msg-type=1 --to=15812345678,15912345678
}
# 'notify-service-by-fetion' command definition
define command{
command_name notify-service-by-fetion
command_line /usr/local/nagios/fetion/fetion --mobile=15812345678 --pwd=FetionPWD --msg-utf8="$NOTIFICATIONTYPE$
:*$HOSTADDRESS$/$SERVICEDESC$ is $SERVICESTATE$ at $SHORTDATETIME$*" --msg-type=1 --to=15812345678,15912345678
}
另外,我們不知道這個版本的飛信機器人哪天會突然出問題(我就遇到過這樣的問題),所以寫個每天定時使用飛信機器人發送nagios進程號的信息。
vi /usr/local/nagios/fetion/test_everyD
#!/bin/bash
msg=`service nagios status`
/usr/local/nagios/fetion/fetion --mobile=15812345678 --pwd=FetionPWD --msg-utf8="*$msg \n$(date +%D\ %H:%M)*" --msg-type=1 --to=15812345678,15912345678
chown nagios.nagios /usr/local/nagios/fetion/fetion
chmod 644 /usr/local/nagios/fetion/fetion
echo '00 21 * * * nagios /usr/local/nagios/fetion/test_everyD' >>/etc/crontab
至此我們就可以在各被監控機的配置文件裏定義報警閥值,由nagios監控機監測併發出報警信息。
By Shaw
本文出自 “ShawOnline” 博客,請務必保留此出處http://shawonline.blog.51cto.com/304978/165370 |