一.安装
1.准备软件包
yum install httpd
yum install gcc
yum install glibc glibc-common
yum install gd gd-devel
yum install mysql mysql-server mysql-devel
yum install gnutls
2.建立用户
#切换到root用户
/usr/sbin/useradd nagios
passwd nagios
#创建一个用户组名为nagcmd用于从Web接口执行外部命令。将#nagios用户和apache用户都加到这个组中。
/usr/sbin/groupadd nagcmd
/usr/sbin/usermod -G nagcmd nagios
/usr/sbin/usermod -G nagcmd apache
3.下载Nagios和插件程序包
nagios-3.3.1.tar.gz
nagios-plugins-1.4.16.tar.gz
4.安装nagios
tar xzfnagios-3.0.6.tar.gz
cd nagios-3.0.6.tar.gz
运行Nagios配置脚本并使用先前开设的用户及用户组:
./configure--with-command-group=nagcmd
编译Nagios程序包源码
make all
安装二进制运行程序、初始化脚本、配置文件样本并设置运行目录权限
make install
make install-init
make install-config
make install-commandmode
现在还不能启动Nagios-还有一些要做的...
5.客户化配置
修改/usr/local/nagios/etc/objects/contacts.cfg中的邮箱地址为
[email protected]。该邮箱设置了过滤规则,所有信件转发到[email protected]
6.配置web接口
安装Nagios的WEB配置文件到Apache的conf.d目录下
makeinstall-webconf
创建一个nagiosadmin的用户用于Nagios的WEB接口登录。记下你所设置的登录口令,一会儿你会用到它。
htpasswd -c/usr/local/nagios/etc/htpasswd.users nagiosadmin
重启Apache服务以使设置生效。
service httpd restart
7.编译并安装Nagios插件
展开Nagios插件的源程序包(nagios-plugins-1.4.16.tar.gz)
./configure--with-nagios-user=nagios --with-nagios-group=nagcmd
make
make install
8.启动nagios
chkconfig --add nagios #将nagios添加到服务中
chkconfig nagios on #开启该服务
chkconfig --list nagios #查看服务启动状态
#检查脚本正确性
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
service nagios start
现在已经可以访问http://ip/nagios/
9.安装nrpe
在被测主机上先安装nagios plugins,然后添加nagios用户。
tar xzvf nrpe-2.12.tar.gz
cd nrpe-2.12
./configure
make all
make install-plugin
10.安装daemon
make install-daemon
make install-daemon-config
make install-xinetd
安装完毕后,可修改配置文件/usr/local/nagios/etc/nrpe.cfg,例如端口等
编辑/etc/xinetd.d/nrpe
service nrpe
{
flags = REUSE
socket_type = stream
port = 5666
wait = no
user = nagios
group = nagios
server = /usr/local/nagios/bin/nrpe
server_args = -c /usr/local/nagios/etc/nrpe.cfg --inetd
log_on_failure += USERID
disable = no
only_from = 192.168.30.200 #监控主机(nagios-core地址)
}
编辑/etc/services,在最后一行加上
nrpe5666/tcp # NRPE
重启xinetd服务
servicexinetd restart
检查服务是否启动正常,执行如下命令
netstat-nltp |grep 5666
测试远程:
在监控主机(200)上执行:
/usr/local/nagios/libexec/check_nrpe-H 192.168.30.150 #安装nrpe的被监控主机
如果成功会显示:
NRPE v2.13
11.编写测试代码(监控150负载均衡)
在监控主机上(200)编辑/usr/local/nagios/etc/objects/commands.cfg,加入如下命令:
# 'check_nrp' command definition
define command{
command_name check_nrpe
command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
}
在/usr/local/nagios/etc/objects中添加文件150.cfg,对于每一台机器可以添加一个文件
define host{
use generic-host
host_name 150
alias 150
address 192.168.30.150 ;被测试机ip
max_check_attempts 10
check_command check-host-alive ; Default command to check if servers are "alive"
}
define service{
use generic-service
host_name 150
service_description nrpe_load
check_command check_nrpe!check_load
}
修改/usr/local/nagios/etc/nagios.cfg,大概在30行左右,添加如下代码,主要是为了导入刚才写的文件
cfg_file=/usr/local/nagios/etc/objects/150.cfg
检测配置是否正确后,重启nagios
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
service nagios restart
即可看到如下界面:
150 为新添加的监控项。