首页 > 代码库 > 实战Nagios+Ganglia发送警告信息,短信,微信等

实战Nagios+Ganglia发送警告信息,短信,微信等

实验环境:

    物理主机    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云告警帐号

          网址:http://www.onealert.com/

技术分享

    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就好了!

本文出自 “技术人生,简单不简单” 博客,请务必保留此出处http://willis.blog.51cto.com/11907152/1866809

实战Nagios+Ganglia发送警告信息,短信,微信等