1.安装nagios基本组件运行时的依赖
[root@nagios1 ~]# yum -y install httpd php php-mysql mysql-devel
2.添加nagios运行所需要的用户和组
[root@nagios1 ~]# groupadd -r nagcmd
[root@nagios1 ~]# useradd -G nagcmd nagios
[root@nagios1 ~]# id nagios
uid=501(nagios) gid=501(nagios) groups=501(nagios),498(nagcmd)
3.将运行httpd的用户加入nagcmd组,以便通过web访问nagios时能够具有足够的权限进行某些操作
[root@nagios1 ~]# usermod -a -G nagcmd apache
[root@nagios1 ~]# id apache
uid=48(apache) gid=48(apache) groups=48(apache),498(nagcmd)
4.编译安装nagios core
版本:nagios-4.0.8.tar.gz
#首先和ntp服务器同步时间,否则可能会报错
[root@nagios1 ~]#ntpdate 192.168.4.2
[root@nagios1 ~]# tar xf nagios-4.0.8.tar.gz
[root@nagios1 ~]# cd nagios-4.0.8
[root@nagios1 nagios-4.0.8]# ./configure --sysconfdir=/etc/nagios --with-command-group=nagcmd --enable-event-broker
说明: 编译安装httpd时,可指定httpd的配置文件路径;并且需要启用LoadModule cgid_module modules/mod_cgid.so,否则访问时提示nagios core not running
--with-httpd-conf=<path_to_conf>
sets path to Apache conf.d/extra directory
[root@nagios1 nagios-4.0.8]# echo $?
0
#根据提示执行make all编译主程序和CGIs
[root@nagios1 nagios-4.0.8]# make all
[root@nagios1 nagios-4.0.8]# echo $?
0
#执行make install安装主程序、CGIs和HTML文件
[root@nagios1 nagios-4.0.8]# make install
[root@nagios1 nagios-4.0.8]# echo $?
0
#执行make install-init,在/etc/rc.d/init.d/下生成nagios脚本
[root@nagios1 nagios-4.0.8]# make install-init
[root@nagios1 nagios-4.0.8]# echo $?
0
#配置放置外部命令文件目录的权限
[root@nagios1 nagios-4.0.8]# make install-commandmode
[root@nagios1 nagios-4.0.8]# echo $?
0
#在上面指定的sysconfdir下生成nagios的配置文件
[root@nagios1 nagios-4.0.8]#make install-config
[root@nagios1 nagios-4.0.8]#echo $?
#在/etc/httpd/conf.d/生成nagios.conf文件
[root@nagios1 nagios-4.0.8]#make install-webconf
[root@nagios1 nagios-4.0.8]#echo $?
5.创建登录nagios web程序的用户
默认的nagios认证登录所需要的文件在$sysconfdir/htpasswd.users
[root@nagios1 nagios-4.0.8]# htpasswd -c /etc/nagios/htpasswd.users nagiosadmin
New password:
Re-type new password:
Adding password for user nagiosadmin
6.编译安装nagios plugins
版本:nagios-plugins-2.0.3.tar.gz
[root@nagios1 ~]# tar xf nagios-plugins-2.0.3.tar.gz
[root@nagios1 ~]# cd nagios-plugins-2.0.3
[root@nagios1 nagios-plugins-2.0.3]# ./configure --with-nagios-user=nagios --with-nagios-group-nagios
[root@nagios1 nagios-plugins-2.0.3]# echo $?
0
[root@nagios1 nagios-plugins-2.0.3]# make && make install
[root@nagios1 nagios-plugins-2.0.3]# echo $?
0
7.把nagios、httpd添加为系统服务,并将之加入自动启动服务队列
#配置nagios开机自启动
[root@nagios1 nagios-plugins-2.0.3]# chkconfig --add nagios
[root@nagios1 nagios-plugins-2.0.3]# chkconfig nagios on
[root@nagios1 nagios-plugins-2.0.3]# chkconfig --list nagios
nagios 0:off 1:off 2:on 3:on 4:on 5:on 6:off
#如上配置httpd
[root@nagios1 nagios-plugins-2.0.3]# chkconfig --add httpd
[root@nagios1 nagios-plugins-2.0.3]# chkconfig httpd on
[root@nagios1 nagios-plugins-2.0.3]# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
8.检查nagios主配置文件语法
[root@nagios1 nagios-plugins-2.0.3]# /usr/local/nagios/bin/nagios -v /etc/nagios/nagios.cfg
......
......
Total Warnings: 0
Total Errors: 0
Things look okay - No serious problems were detected during the pre-flight check
9.关闭selinux,并启动httpd、nagios
[root@nagios1 nagios-plugins-2.0.3]# setenforce 0
[root@nagios1 nagios-plugins-2.0.3]# vim /etc/selinux/config
将selinux后面的值force改为disable
[root@nagios1 nagios-plugins-2.0.3]# service httpd start
Starting httpd: [ OK ]
[root@nagios1 nagios-plugins-2.0.3]# service nagios start
Starting nagios: done.
10.通过web访问nagios
登录时提供使用htpasswd创建的用户和密码
至此,nagios的安装已经完成!