设为首页 收藏本站
查看: 871|回复: 0

Nagios监控平台搭建

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-7-20 08:58:52 | 显示全部楼层 |阅读模式
Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
Nagios和cacti有什么区别呢?简单的来说cacti主要监控流量,服务器状态页面展示;nagios主要监控服务,邮件及短信报警灯,当然也有简单的流量监控界面,二者综合使用效果更好。(附Nagios工作简单逻辑图)
Nagios监控客户端需要借助插件及NRPE软件来实现,NRPE作为中间的代理程序,接收Nagios服务器端发来的请求,另一端在远程主机上指定的相关的监控信息。
QQ截图20150720085907.png
下面简单说下nagios平台搭建
1. 准备工作
    nagios-3.2.1.tar.gz

    nagios-plugins-1.4.14.tar.gz
    nrpe-2.14.tar.gz
2. 服务端环境搭建

    useradd -s /sbin/nologin nagios
    mkdir /usr/local/nagios
    chown -R nagios.nagios /usr/local/nagios
    tar zxvf nagios-3.2.1.tar.gz
    cd nagios-3.2.1
    ./configure  --prefix=/usr/local/nagios  --with-command-group=nagios
    make all
    make install;
    make install-init;
    make install-config;
    make install-commandmode;
    make install-webconf;
注:
    make install //来安装主程序,CGI和HTML文件
    make install-init //在/etc/rc.d/init.d安装启动脚本
    make install-config //来安装示例配置文件,安装的路径是/usr/local/nagios/etc
    make install-commandmode //来配置目录权限
    make install-webconf // 配置nagios跟apache整合



    安装Nagios-plugins
    tar zxvf nagios-plugins-1.4.14.tar.gz
    cd nagios-plugins-1.4.14
    ./configure --prefix=/usr/local/nagios --with-nagios-user=nagios --with-nagios-   group=nagios
    make && make install
    nagios访问控制设置
    htpasswd  -c  /usr/local/nagios/etc/htpasswd.users nagiosadmin
    输入两次密码即可,登录页面的时候会用到这个密码.
    Nagios测试访问
    重启nagios
    /etc/init.d/nagios restart ;
    /etc/init.d/httpd restart ;
    http://IP/nagios/

3. 添加一个客户端监控的步骤:
    cp localhost.cfg  192.168.2.99.cfg
    把默认配置文件里面的locahost、127.0.0.1、check_local替换成最新
    因为没有在客户端安装nagios插件及NRPE,
    需删掉配置文件里disk、swap、process、user、cpu等监控配置段(这里根据个人需求修改)

    cd /usr/local/nagios/etc
    vi nagios.cfg
    在nagios.cfg 36行后加入cfg_file=/usr/local/nagios/etc/objects/192.168.2.99.cfg
    最后执行:/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg没有报错即可。


4. Nagios客户端插件安装
    Nagios客户端安装需要安装两个软件,nagios-plugins-1.4.14.tar.gz和nrpe-2.14.tar.gz
    安装方法如下:
    useradd nagios ;
    tar -xzf  nagios-plugins-1.4.14.tar.gz
    cd nagios-plugins-1.4.14
    ./configure --prefix=/usr/local/nagios
    make &&make install
    tar -xzf nrpe-2.14.tar.gz
    cd nrpe-2.14
    ./configure --enable-ssl --with-ssl-lib
    make all && make install-plugin && make install-daemon && make install-daemon-config
    chown -R nagios:nagios /usr/local/nagios/

5. Nrpe客户端配置
    修改vi /usr/local/nagios/etc/nrpe.cfg 修改默认配置段的内容如下,
     allowed_hosts=192.168.2.91(这里是改为服务器监控机的IP)
    command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
    command[check_load]=/usr/local/nagios/libexec/check_load -w 15,10,5 -c 30,25,20
    command[check_disk]=/usr/local/nagios/libexec/check_disk -w 20 -c 10 -p /dev/sda2
    command[check_procs]=/usr/local/nagios/libexec/check_procs -w 50 -c 100
    command[check_swap]=/usr/local/nagios/libexec/check_swap -w 20 -c 10
    启动nrpe客户端命令:
    /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
    Nagios服务器nrpe配置
    Nagios 服务器端也需要安装nrpe,同时需要定义nrpe监控命令,写command.cfg末尾即可:
    define command{
         command_name check_nrpe
          command_line $USER1$/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
      }

    在服务器端对应IP的配置文件中,加入需要监控的项目:
    define service{
            use                             local-service        
            host_name                       192.168.2.99
            service_description             Users_Monitor
            check_command                   check_nrpe!check_users
            notifications_enabled           1
            }
    其他同理,添加的方法一样。只要在客户端nrpe.cfg里面添加的监控命令,都可以在服务端引用。

    Nagios监控端HTTP关键词

    在真实的线上环境中,如果要监控HTTP、web、tomcat某个URL关键词,监控网站关键词是否被篡       改,如果来实现呢?
    这里可以使用默认监控命令check_http命令+相关的参数来实现,如下:
    在command.cfg添加如下关键词监控命令:check_http_word,参数解析:-I指定IP或者主机名,-u     指定URL,-p指定端口,-s指定关键词。
    vim commands.cfg (这里是在监控服务器上的修改)

    definecommand{
        command_name    check_http_word
        command_line  $USER1$/check_http -I $HOSTADDRESS$ -u$ARG1$ -p $ARG2$ -s  $ARG3$   
            }
    然后在服务器端监控主机的配置文件里面引用即可,引用的方法如下:  
    define service{
        use                             local-service
        host_name                       192.168.2.99
        service_description             Discuz
        check_command                   check_http_word!/forum.php!80!Discuz
        notifications_enabled           1
        }
    通常在修改配置文件的时候最好是在外边命令测试一下 比如:
     /usr/local/nagios/libexec/check_http -I 192.168.2.99 -u /index.php -p 80 -s "Discuz"

    Nagios监控Mysql主从报警


    监控Mysql可以用个nagios mysql插件,首先在command.cfg中定义如下配置:
    define command{
            command_name   check_mysql_slave
            command_line  $USER1$/check_mysql -H $HOSTADDRESS$ -S -uroot -p123456
         }
    然后在主机配置文件中定义监控项目:
    define service{
            use                             local-service         
            host_name                       192.168。2.99
            service_description             MYSQL_Slave_Monitor
            check_command                   check_mysql_slave
        }
    配置完毕后 重启nagios服务  查看监控状态

    Nagios邮件及短信报警
安装邮件服务:
    [iyunv@linux objects]# yum  install sendmail* mailx -y
    Loaded plugins: fastestmirror
    说明fastestmirror不能使用 可以禁用这个插件
  • 1.修改插件的配置文件
  • # vi  /etc/yum/pluginconf.d/fastestmirror.conf  
  • enabled = 1//由1改为0,禁用该插件
  • 2.修改yum的配置文件
  • # vi /etc/yum.conf
  • plugins=1//改为0,不使用插件

    重新安装即可

    重启服务

    service sendmail  restart;
    chkconfig  sendmail on
    邮件测试:

    echo "test" |mail  -s  "test"  123456789@139.com
   测试OK后
    修改配置文件:
    vi /usr/local/nagios/etc/objects/contacts.cfg  修改为需要发送的邮箱即可
    最后重启nagios服务,可以测试关闭某个服务,过一会就会收到nagios发来的报警邮件。



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-88435-1-1.html 上篇帖子: 新手一枚 自己安装的nagios 安装pnp+rrdtool 想显示数据图片,但是没有成功。 下篇帖子: nagios监控iptables状态(二) 监控
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表