以我花了好几天时间,重装了三次的经验来说,新人一定要找一个纯净的LINUX系统安装,不要把nagios安装在EMOS,XENSERVER类似这样的系统上,不然,哼哼,后果只有自己知道!!!
我最后用的是CentOS6.3才成功了
安装必要的组件,如果没有安装的话
yum install php httpd gcc glibc glibc-common gd gd-devel php-devel(最后这两个centos6.3本地光盘里没有,可能是我没有下载CD2的原因,也可能是我内存给的小了,只有512M,所以它安装的功能也就相应的少了,给768M或1G的话可能就不存在这种情况了)
所以要改一下它的源
vi /etc/yum.repos.d/Centos-Base.repo---这个是网络源
:% s/centos.org/163.com/g
把地址改一下就可以从网上下载了
vi /etc/yum.repos.d/Centos-Media.repo是本地源
用本地源的话要把光盘挂载上
mount /dev/dvd /media
vi /etc/yum.repos.d/Centos-Media.repo里面的baseurl=后面紧跟file:///media
因为nagios可以在服务器监控到问题的时候给管理员发邮件,所以我们这里就先看一下邮件服务是不是已经安装好了,当然现在一般的都默认安装好sendmail了,看下它正常启动就行了!
如果没有安装,就自己安装一下
添加nagios用户
不创建密码,因为它不用来登陆系统
默认生成nagios组
把apache用户添加到nagios组里,因为apache这个用户是apache运行用户
创建安装目录/usr/nagios
看目录权限和所有者
修改目录权限和所有者为nagios用户和nagios组
chown -R nagios.nagios /usr/nagios有的系统是chown -R nagios:nagios /usr/nagios
配置httpd.conf
DirectoryIndex 这一行加index.php
添加AddType application/x-httpd-php .php
注意.php前面有空格
不然后面启动服务的时候会提示错误
启动httpd服务
提示没有DNS,我开始看成是没有设置计算机名了,所以有了下面设置计算机名的过程
我们来设置一个计算机名
这个是设置网上邻居看到的名字
这个是设置本地计算机名
设置当前计算机名
重启后还是一样
其实应该是在httpd.conf前面加一行
vi /etc/httpd/conf/httpd.conf
添加
ServerName localhost:80
服务正常
下载nagios,我这里用的是4.0
下载插件1.4.16,插件版本不用和主程序一致
解压主程序
生成一个nagios目录
进入目录,可以看到很多文件
编译,指定安装目录
make命令需要调用当前目录下的Makefile的文件,执行make时不能离开现在这个目录
如果提示没有这个命令,就安装它,我的Centos也没有安装这个,还要手动安装一次!!
make install用来安装nagios的主程序,CGI和HTML文件
make install-init命令可以在/etc/rc.d/init.d目录下创建nagios启动脚本
make install-commandmode命令来配置目录权限
make install-cofig命令用来安装nagios示例配置文件,这里安装的路径是/usr/local/nagios/etc
make install-webconf用来为nagios web接口安装apache配置文件
默认的配置文件在/usr /nagios/etc目录下
objects目录下还有
详情请参阅http://ixdba.blog.51cto.com/2895551/752870
增加一个nagios的web登陆用户nagiosadmin,这个是默认用户,新人最好先按默认的来,不然出了问题麻烦的很,指定这个文件生成目录,输入两次密码
htpasswd -c /usr/nagios/etc/htpasswd nagiosadmin
解压插件
编译,指定安装目录到nagios主程序安装目录
安装
chkconfig --add nagios 把nagios加入到启动服务选项中
chkconfig nagios on 默认在3,5runlevel的级别,开机启动该服务
检查配置文件是否正确
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
其实这一步如果有错,在执行启动nagios服务
/etc/rc.d/init.d/nagios start或者service nagios start
的时候也会提示
还可以将nagios加入守护进程
/usr/local/nagios/bin/nagios -d /usr/local/nagios/etc/nagios.cfg
这一步不知道和chkconfig nagios on有什么区别,貌似都是开机启动,以后再研究吧!
记得关闭SELINUX和IPTABLES
setenforce 0
service iptables stop
这是临时关闭,重启后又会开启的!
重启apache服务
打开web界面,不过登陆不上去
先别急,继续
为了安全其间,一般情况下要让nagios的web监控界面必须经过授权才能访问,这需要增加验证配置,即在httpd.conf文件最后添加如下信息:
#sett for nagios
ScriptAlias /nagios/cgi-bin "/usr/nagios/sbin"
<Directory "/usr /nagios/sbin">
AuthType Basic
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
AuthName "Nagios Access"
AuthUserFile /usr /nagios/etc/htpasswd
Require valid-user
</Directory>
Alias /nagios "/usr /nagios/share"
<Directory "/usr /nagios/share">
AuthType Basic
Options None
AllowOverride None
Order allow,deny
Allow from all
AuthName "nagios Access"
AuthUserFile /usr/ nagios/etc/htpasswd
Require valid-user
</Directory>
启动nagios
/etc/rc.d/init.d/nagios start
重启apache,有提示,不过不用管它
期待已久的界面终于出现了!
如果是新手,不要用xenserver安装nagios,squid这些应该,因为我第一次用它安装后的网页打开的时候会提示没有权限访问!!所以我又在EMOS里安装了一遍,终于可以进入上面的界面了!
当然界面也可以汉化
下载汉化插件
解压
进入目录
编译
安装
重启服务,如果不重启服务刷新一下页面也是可以显示成中文,但有错误
编辑文件
注释掉第299行
再检查一次
注释掉第1014行
所以重启服务是必要的,因为可以查看到错误提示!或者/usr/nagios/bin/nagios -v /usr/nagios/etc/nagios.cfg检查配置文件
熟悉的中国字!
不过如果你准备要汉化,最好在nagios主程序装完后就接着装汉化插件,如果先装plugin,再装cn,后面可能用有问题,提示插件丢失什么的!
但因为我第二次是在EMOS里安装的所以出现了下面这个问题!!!而且没有statusmap.cgi
但配置文件是正确的啊,GOD!!!
服务一切正常啊有木有!
最后改用centos6.3
按上面做的操作后,终于成功了