cacti真的很强大,可以监控到服务器的流量,cpu,tcp连接量的一些比较重要的信息。但是感觉还是不够,如果能够做到预警就更好了。上网看到了nagios这个东西。感觉很不错,就试着弄了下。
nagios是一款开源的电脑和网络监视工具,能有效监控windows、linux等主机状态,在系统或服务状态异常时发出邮件或短信通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
一、安装epel
跟着老外的教程走,首先安装epel,它是为CentOS、Linux等提供高质量软件包的项目,最好在监控机和被监控机上都装上。
首先下载:
wget
http://epel.mirror.net.in/epel/6/i386/epel-release-6-8.noarch.rpm
rpm -Uvh epel-release-6-8.noarch.rpm
然后安装repolist
yum repolist
安装完后就能安装不在RHEL发行版中包含的软件了。
二、安装LAMP,这个步骤在我们安装cacti的时候已经有了,所以略过
三、安装nagios的插件和代理
yum install nagios*
四、设置防火墙
在/etc/sysconfig/iptables中加入一行,这个我们在配置cacti的时候也做过了
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
service iptables restart
五、配置nagios
加入邮件地址,用于接收nagios服务端的信息,在/etc/nagios/obejects/contacts.cfg中修改
[...]
email ****@****.***;
[...]
修改权限,注释掉第15,16行,然后去掉17,18,19的注释
vim /etc/httpd/conf.d/nagios.conf
[...]
# Order allow,deny
# Allow from all
Order deny,allow
Deny from all
Allow from 127.0.0.1 ***.***.***.***
[...]
加入nagios用户,启动nagios服务,并设置为开机启动,同时启动的还有httpd服务
htpasswd /etc/nagios/passwd nagiosadmin
New password:
Re-type new password:
service nagios start
service httpd start
chkconfig nagios on
chkconfig httpd on
六、配置被监控机
安装nrpe和nagios插件
yum install nrpe nagios-plugins-all openssl
启动nrpe服务,并设置其自启动
service nrpe start
chkconfig nrpe on
七、配置监控机
修改文件
/etc/nagios/nagios.cfg,
去掉第53行的注释
cfg_dir=/etc/nagios/servers
加入被被监控机
mkdir /etc/nagios/servers
vim /etc/nagios/servers/clients.cfg
define host{
use linux-server
host_name client
alias client
address ***.***.***.***
max_check_attempts 5
check_period 24x7
notification_interval 30
notification_period 24x7
}
这个地方要注意一点,24x7中间的符号是'x'不是'*',并且数字和‘x’之间不要加入空格,之前弄错困扰了很久。
service nagios restart
vim /etc/nagios/servers/clients.cfg
define host{
use linux-server
host_name client
alias client
address ***.***.***.***
max_check_attempts 5
check_period 24x7
notification_interval 30
notification_period 24x7
}
加入服务
define service{
use generic-service
host_name client
service_description SSH
check_command check_ssh
notifications_enabled 0
}
service nagios restart
这个时候在浏览器里加入http://yourip/nagios,输入账号密码就能看到页面,监控的信息在这里都能看到
八、排错
查看配置的错误信息,输入下面的命令:
nagios -v /etc/nagios/nagios.cfg
之前在按照上面的过程配置完后,可以正常进入nagios,但是在hosts页面总是出现
It appears as though you do not have permission to view information for any of the hosts you required...
解决方式是修改/etc/nagios/cgi.cfg
将use_authentication = 1 #将1修改为0,保存
重启nagios service nagios restart,下次就能正常访问到监控的主机了。