美文网首页
nagios监控远程主机并设置自动发送邮件告警

nagios监控远程主机并设置自动发送邮件告警

作者: 大简SimpleSmile | 来源:发表于2018-08-19 16:01 被阅读0次

    nagios监控远程主机并设置自动发送邮件告警

    1. 安装sendmail

      yum install -y sendmail* mailx
      
    2. 添加25端口到防火墙

      firewall-cmd --zone=public --add-port=25/tcp
       firewall-cmd --zone=public --add-port=25/tcp --permanent
      
    3. 重启sendmail服务

      systemctl restart sendmail
      
    4. 测试邮件功能能否正常发送

      echo "I am a mail wroten by yourself" | mail -s "Alert" csujianzhu@163.com
      

      建议使用163邮箱,因为仅测试了163邮箱

    5. 修改 nagios.cfg 插件

      enable_notifications=1          //开启后也就是nagios装的所有插件,出现问题都会报警
      
    6. 修改contracts.cfg的警告邮件发送人

      email                   csujianzhu@163.com ;
      

      将libexec下的check_http 文件修改名字,nagios会因无法执行check而报警。

    7. 其他配置

      如果按上述配置无法接收到邮件,而测试邮件能正常接收,则继续查看以下配置:

      配置 /usr/local/nagios/objects/localhost.cfg
      service定义的该值改为1:
       notifications_enabled           1
      

      如此有可能还是收不到邮件,因为nagios为了快速启动,通常设置了缓存配置:

      precached_object_file=/usr/local/nagios/var/objects.precache
      

      可以注释掉该配置再重启试试。

      还要注意notification_interval通知发送时间间隔的配置,单位为min。

    收到的邮件截图:

    [图片上传失败...(image-75de76-1534665672204)]

    图中显示404,是因为默认的监控http命令参数没有设置正确。

    配置check_http命令监控民生健康保护项目的web页面

    1. 修改commands.cfg

      define command {
      
       command_name    check_http
       command_line    $USER1$/check_http -I $HOSTADDRESS$ $ARG1$ $ARG2$
       }
      
    2. 修改172.16.10.125.cfg中的http service块

      define service{
       use     generic-service
       host_name       172.16.10.125
       service_description     check_http
       check_command           check_http!-u http://172.16.10.125/csfy/index.do
       max_check_attempts 5
       normal_check_interval 1
       notifications_enabled   1
       }
      
    3. 说明

    nagios依靠libexec下的check_http程序进行监控

    ./check_http -h #查看详细信息
    

    相关文章

      网友评论

          本文标题:nagios监控远程主机并设置自动发送邮件告警

          本文链接:https://www.haomeiwen.com/subject/erbciftx.html