一.在被监控端(lvs主机)上安装nrpe以及nagios-plugins,具体如下:
10年积累的成都网站建设、网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先做网站设计后付款的网站建设流程,更有广西免费网站建设让你可以放心的选择与我们合作。
1)安装nagios-plugins
groupadd nagios
useradd -g nagios nagios
wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.16.tar.gz
tar -zxf nagios-plugins-1.4.16.tar.gz
cd nagios-plugins-1.4.16
./configure --enable-redhat-pthread-workaround
make && make install
chown nagios.nagios /usr/local/nagios
chown -R nagios.nagios /usr/local/nagios/libexec
2)安装nrpe
wget http://prdownloads.sourceforge.net/sourceforge/nagios/nrpe-2.12.tar.gz
tar -zxf nrpe-2.12.tar.gz
./configure
make all
make install-plugin
make install-daemon
make install-daemon-config
make install-xinetd
二.修改/etc/xinetd.d/nrpe的文件
1)在only_from参数里加入nagios服务器的IP地址(中间用英文逗号隔开)
vi /etc/xinetd.d/nrpe
only_from = 127.0.0.1,xxx.xxx.xxx.xxx #监控服务器的可信IP
2),在/etc/services中添加NRPE
vi /etc/services
nrpe 5666/tcp #NRPE
3),service xinetd restart
检查NRPE 是否运行
#netstat -at | grep nrpe
tcp 0 0 *:nrpe *:* LISTEN
4).修改nrpe.cfg文件
vi /usr/local/nagios/etc/nrpe.cfg
找到allowed_hosts=127.0.0.1
allowed_hosts=127.0.0.1,xxx.xxx.xxx.xxx #监控服务器的可信IP
添加
command[check_conn]=/usr/local/nagios/libexec/check_lvs
5)运行nrpe
/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
6)运行check_nrpe脚本
/usr/local/nagios/libexec/check_nrpe -H localhost
若出现NRPE版本信息则表示成功,若出现openssl表示openssl没有被安装,安装openssl yum -y install openssl*
7)修改/etc/sudoers
找到 #Defaults requiretty 并取消注释,另外新增一行。表示nagios用户不需要登陆终端就可以调用命令。
Defaults requiretty
Defaults:nagios !requiretty
#添加nagios 请求sudo,允许特定指令时(可跟参数),不需要密码(如)。
nagios ALL=(ALL) NOPASSWD: ALL
三.建立check_lvs脚本并将其保存至/usr/local/nagios/libexec/目录下:
#!/bin/bash
#Author: uxin
ACT_COUNT=0
Inactive_count=0
stat1=`sudo ipvsadm | grep http |wc -l`
if [ $stat1 -ne 0 ];then
for NUM in `sudo ipvsadm | grep http | awk '{print $5}'`
do
ACT_COUNT=$(($ACT_COUNT+ $NUM))
done
for NUM in `sudo ipvsadm | grep http | awk '{print $6}'`
do
Inactive_count=$(($Inactive_count+ $NUM))
done
else
echo "LVS CRITICAL, "LVS is Down""
exit 2
fi
if [ $ACT_COUNT == 0 ];then
echo "LVS ok, "0 active connection""
exit 1
else
echo "LVS OK - LVS is running (conn: $ACT_COUNT active, $Inactive_count inactive)|active=$ACT_COUNT;80000;99999;0; inactive=$Inactive_count;80000;99999;0;"
fi
OK ,在监控端运行
/usr/local/nagios/libexec/check_nrpe -H xxx.xxx.xxx.xxx -c check_conn,好了配置成功