# yum groupinstall -y "Development Tools" 安装开发包
# yum -y install httpd gd gd-devel php mysql-devel 安装nagios需要的环境,但不是必须的。
#groupadd nagcmd
#useradd –G nagcmd nagios
#passwd nagios
#usermod –G nagcmd apache 把apache加入到nagcmd组
# vim /etc/httpd/conf/httpd.conf
DirectoryIndex index.html index.html.var index.php 这一行添加index.php
# vim /var/www/html/index.php 编辑测试页面
<?php
phpinfo();
?>
启动httpd
# service httpd start
在浏览器输入你的IP出现下面图片,则说明apache和php结合成功
所有需要的软件包都放在 /usr/local/src下
#cd /usr/local/src
# tar zxf nagios-3.3.1.tar.gz
# cd nagios-3.3.1
# ./configure --with-command-group=nagcmd
# make all
# make install
# make install-init
/usr/bin/install -c -m 755 -d -o root -g root /etc/rc.d/init.d
/usr/bin/install -c -m 755 -o root -g root daemon-init /etc/rc.d/init.d/nagios
*** Init script installed ***安装启动脚本 可以用service 控制nagios服务
# make install-commandmode 安装外部命令
# make install-config 生成配置文件 /usr/local/nagios/etc
Nagios的默认安装路径是 /var/local/nagios/*
bin etc include libexec sbin share var
/bin : nagios的主程序 执行程序 /etc :nagios 的配置文件
/include : 头文件的所在目录 /libexec : 安装插件产生的命令
/sbin: cgi 文件所在目录 /share 网页文件所在目录
/var 日志文件 锁文件等目录
为email指定您想用来接收nagios警告信息的邮件地址,默认是本机的nagios用户:
# vi /usr/local/nagios/etc/objects/contacts.cfg
email nagios@localhost #这个是默认设置 根据自己的情况修改
在httpd的配置文件目录(conf.d)中创建Nagios的Web程序配置文件:
# make install-webconf
/usr/bin/install -c -m 644 sample-config/httpd.conf /etc/httpd/conf.d/nagios.conf
*** Nagios/Apache conf file installed ***
创建一个登录nagios web程序的用户,这个用户帐号在以后通过web登录nagios认证时所用:
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin
以上过程配置结束以后需要重启httpd:
# service httpd restart
Nagis的所有工作都是通过插件完成的,因此,在启动nagios前先安装插件
# tar zxf nagios-plugins-1.4.15.tar.gz
# cd nagios-plugins-1.4.15
# ./configure --with-nagios-user=nagios --with-nagios-group=nagios
# make
# make install
# chkconfig --add nagios
# chkconfig nagios on
出现这样的信息 说明配置文件没有错误 可以启动
如果有错误,可以根据上面的提示修改,哪里出错误了提示很详细的。很容易就可以找出错误。
我们也可以为上面的检测命令添加别名,这样会很方便
#alias check=’ /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg’
# service nagios start
如果您的系统开启了selinux服务,则默认为拒绝nagios web cgi程序的运行。您可以通过下面的命令来检查您的系统是否开启了selinux:
#getenforce
#setenforce 0 关闭selinux
# /etc/rc.d/init.d/iptables stop 关闭iptables
http://ip/nagios
输入用户名密码
这就是nagios的主页面 很丑陋的 默认已经监控本机,并监控本机的负载均衡,当前用户等8个服务。
Ndoutils 主要用来将nagios的配置信息和event产生的数据存入数据库以方便实现数据的快速检索和处理。因此要先安装mysql,mysql-server,php-mysql
# yum -y install php-mysql mysql mysql-server
# tar zxf ndoutils-1.4b9.tar.gz
# cd ndoutils-1.4b9
#./configure --prefix=/usr/local/nagios --enable-mysql --disable-pgsql --with-mysql-inc=/usr/include --with-mysql-lib=/usr/ lib
#make
# cp ./src/ndomod-3x.o /usr/local/nagios/bin
# cp ./src/ndo2db-3x /usr/local/nagios/bin
# cp ./src/log2ndo /usr/local/nagios/bin
# cp ./src/file2sock /usr/local/nagios/bin
# chown nagios:nagios /usr/local/nagios/bin/*
# cp ./config/ndo* /usr/local/nagios/etc/ 复制配置文件
# chown nagios:nagios /usr/local/nagios/etc/*
Initializing MySQL database: Installing MySQL system tables...
OK
Filling help tables...
OK
。。。。。。。。。。。 中间部分省略
Support MySQL by buying support/licenses at http://shop.mysql.com
[ OK ]
Starting MySQL: [ OK ] 启动成功
# mysql 进入mysql
mysql> create database ndodb; 创建nagios需要的数据库
mysql> GRANT SELECT,INSERT,UPDATE,DELETE ON ndodb.* TO ndouser@localhost IDENTIFIED BY '123456'; 给ndouser 用户授权 密码为“123456”
mysql> flush privileges;
mysql> \q
# cd db
# ./installdb -undouser -p123456 -hlocalhost -d ndodb
数据库初始化成功,也可以连到mysql数据库里面,此时ndodb库中已经有59张表。
# mv /usr/local/nagios/etc/ndo2db.cfg-sample /usr/local/nagios/etc/ndo2db.cfg
# vi /usr/local/nagios/etc/ndo2db.cfg
socket_type=tcp //**line 33
db_servertype=mysql //**line 78
db_host=localhost //**line 86 链接的数据库 这里是本机
db_port=3306 //**line 95 链接端口
db_name=ndodb 数据库的名字
db_prefix=nagios_ //**line 111
db_user=ndouser //** line 121 用户名(就是数据库那边授权的用户 )
db_pass=123456 //**line 122 密码
# mv /usr/local/nagios/etc/ndomod.cfg-sample /usr/local/nagios/etc/ndomod.cfg
#vim/usr/local/nagios/etc/ndomod.cfg
output_type=tcpsocket //** line 26
output=127.0.0.1 //**line 39
# vi /usr/local/nagios/etc/nagios.cfg
# 复制下面内容粘贴到#broker_module=...下面。
broker_module=/usr/local/nagios/bin/ndomod-3x.o config_file=/usr/local/nagios/etc/ndomod.cfg
此外,请确保您的/usr/local/nagios/etc/nagios.cfg中有如下行出现,否则,请自行添加:
event_broker_options=-1 //为Nagios开启event broker
# /usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg
# echo '/usr/local/nagios/bin/ndo2db-3x -c /usr/local/nagios/etc/ndo2db.cfg' >> /etc/rc.local 开机自动启动
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg 检查配置文件
# service nagios restart
#tail -20 /usr/local/nagios/var/nagios.log
确保日志中出现此三行 ,第一行是和mysql的数据连接正常,第二行是ndomod模块加载成功,
第三行是nagios程序启动正常PID是31836
到此,nagios基本安装成功。