实验环境:
物理主机 redhat7.0 内核版本 3.10.0-123.el7.x86_64
虚拟机 redhat6.5 内核版本 2.6.32-431.el6.x86_64
服务器端: server1.example.com 172.25.254.1
客户端: server2.example.com 172.25.254.2
本次实验基于前面的实验之上,服务器端已经配置完成了nagios+ganglia服务,且让虚拟机(服务器server1)联网(注意PREFIX子网掩码一定要有),联网后的ip如图所示,iP地址为192.168.122.248(因为是NAT连接,所以是私有网段)
1.添加网段
ip addr show
ip addr add 172.25.254.1/24 dev eth0
2.添加网关
route -n
route add default gw 172.25.254.6 ##物理主机IP
3.添加DNS(西安)
vim /etc/resolv.conf
nameserver 192.168.1.253
或者:218.30.19.50
4.给QQ邮箱发送邮件测试
4.1在自己的QQ邮箱上将服务器server1添加为白名单: nagios@server1.example.com
4.2发送邮件测试
4.3 查看邮件是否发送成功
4.4 mailq查看邮件队列,如果发送不成功,执行以下操作
yum install bind-utils -y
postqeue -f 重新发送邮件队列里的邮件
postqeue -p查看邮件队列
4.5.邮箱编辑
cd /usr/local/nagios/etc/objects/
vim contacts.cfg##使得当客户端的某服务器发生宕机时,自动发邮件给我的邮箱
35 email willis_sun@foxmail.com
4.6.测试
可以尝试将server2上的mysql服务关掉,测试一下
在server2上: /etc/init.d/mysqld stop##等待5分钟后报警
##实验的话,建议vim /usr/local/nagios/etc/objects/templates.cfg改写为:
186 max_check_attempts 3 ; Re-check the service up to 4 time s in order to determine its final (hard) state
187 normal_check_interval 3 ; Check the service every 5 minutes under normal conditions
188 retry_check_interval 1 ; Re-check the service every minute until a hard state can be determined
189 register 0 ; DONT REGISTER THIS DEFINITION - I TS NOT A REAL SERVICE, JUST A TEMPLATE!
5. 110云报警
5.1 申请一个110云告警帐号
5.2 登陆之后
1.配置 --> 添加应用 --> 添加nagios应用(会得到一个应用key)
2.通知策略 --> 添加##就好咯!!
3.帮助 --> 文档 --> 详细文档 --> 安装应用 --> nagios --> 通用型安装##然后按照文档就可以做咯,也可以参照我下面的笔记!
4.安装Agent
《1》tar xvf alert-agent-4.0.1-RC1.tar.gz
《2》cp -R alert-agent /usr/local/nagios/libexec/
《3》cp alert-agent/plugin/nagios-plugin/nagios /usr/local/nagios/libexec/
《4》chmod +x /usr/local/nagios/libexec/nagios
《5》cp alert-agent/plugin/nagios-plugin/110monitor.cfg /usr/local/nagios/etc/objects/
5.修改配置
《1》修改/usr/local/nagios/etc/objects/110monitor.cfg,设置pager为上面应用的appkey:6e913287-d03b-22f4-9f4c-7e0fa0f83671
vim /usr/local/nagios/etc/objects/110monitor.cfg
18 pager 6e913287-d03b-22f4-9f4c-7e0fa0f83671 ; your appl ication key, http://www.110monitor.com
《2》修改/usr/local/nagios/etc/objects/contacts.cfg,新增110monitor到默认联系组
vim /usr/local/nagios/etc/objects/contacts.cfg
51 define contactgroup{
52 contactgroup_name admins
53 alias Nagios Administrators
54 members nagiosadmin,110monitor
55 }
《3》修改/usr/local/nagios/etc/nagios.cfg,将110monitor.cfg新增到nagios.cfg中
vim /usr/local/nagios/etc/nagios.cfg
36 cfg_file=/usr/local/nagios/etc/objects/110monitor.cfg
《4》可选为了让告警信息显示更友好,建议修改nagios.cfg由原先us更改为iso8601
vim /usr/local/nagios/etc/nagios.cfg##我这个版本本来就是这个值
1091 date_format=iso8601
6.重启nagios
《1》重启前检查下配置是不是正确
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
《2》/etc/init.d/nagios reload
7.测试:
在server2上关掉mysql试试咯!
/etc/init.d/mysqld stop
静待邮件短信来!!
PS:在nagios的web界面中,当无法启用该服务的通知时:
cd /usr/local/nagios/var/rw
chmod o+w nagios.cmd就好了!
本文转自willis_sun 51CTO博客,原文链接:http://blog.51cto.com/willis/1866809,如需转载请自行联系原作者