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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介:

实验环境:

    物理主机    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连接,所以是私有网段)

wKioL1gS54fgXcNwAAA4L3e-zyA225.png

1.添加网段

ip addr show

ip addr add 172.25.254.1/24 dev eth0

wKiom1gS6WHgahbsAAAjCHK04Vs157.png

2.添加网关

route -n

route add default gw 172.25.254.6   ##物理主机IP

wKiom1gS6j6QZ_-hAAAnR6FMRgg769.png

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


wKioL1gS79WQTtQdAADvTAyTVc8933.png


wKiom1gS8EOC8ce5AAB5OT7947w248.png


    4.2发送邮件测试

wKiom1gS8Pzg8gvoAAAp8HoVCNw620.png

    4.3 查看邮件是否发送成功

wKioL1gS8UjTUqr2AAA7u39IcJg387.pngwKiom1gS8UjRs-fIAABGz31Od5Y387.png


       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/

wKioL1gTBfzwRAwiAAziEdALolE380.png

    5.2  登陆之后

        1.配置 --> 添加应用 --> 添加nagios应用(会得到一个应用key)

wKioL1gTBfbzK0SYAACzYL1xiZk041.png

        2.通知策略 --> 添加##就好咯!!

wKiom1gTBfWgxfYTAADwYUag1zM346.png

        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,如需转载请自行联系原作者

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
3月前
|
缓存 小程序 前端开发
商城/点餐/家政类小程序源码合集_微信抖音小程序源码开发从入门到精通实战
本文系统讲解如何利用现有源码快速开发商城、点餐、家政类微信/抖音小程序,涵盖环境搭建、核心功能实现、多平台部署与优化,提供完整技术方案。实战导向,助力开发者高效入门与落地。
|
3月前
|
小程序 PHP 图形学
热门小游戏源码(Python+PHP)下载-微信小程序游戏源码Unity发实战指南​
本文详解如何结合Python、PHP与Unity开发并部署小游戏至微信小程序。涵盖技术选型、Pygame实战、PHP后端对接、Unity转换适配及性能优化,提供从原型到发布的完整指南,助力开发者快速上手并发布游戏。
|
7月前
|
JSON 监控 小程序
微信百度字节小程序包过大解决方案(实战经验总结)-优雅草卓伊凡|果果|小无
微信百度字节小程序包过大解决方案(实战经验总结)-优雅草卓伊凡|果果|小无
600 14
微信百度字节小程序包过大解决方案(实战经验总结)-优雅草卓伊凡|果果|小无
|
10月前
|
小程序 测试技术 数据安全/隐私保护
微信公众号接口测试实战指南
微信公众号接口测试是确保系统稳定性和功能完整性的重要环节。本文详细介绍了测试全流程,包括准备、工具选择(如Postman、JMeter)、用例设计与执行,以及常见问题的解决方法。通过全面测试,可以提前发现潜在问题,优化用户体验,确保公众号上线后稳定运行。内容涵盖基础接口、高级接口、微信支付和数据统计接口的测试,强调了功能验证、性能优化、安全保护及用户体验的重要性。未来,随着微信生态的发展,接口测试将面临更多挑战和机遇,如小程序融合、AI应用和国际化拓展。
|
小程序 JavaScript
微信小程序之input组件及其获取用户输入信息
微信小程序之input组件及其获取用户输入信息
325 2
|
JavaScript 小程序 开发者
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
2050 0
|
缓存 JavaScript 前端开发
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)更新时间(2020-10-29)
|
3月前
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
4月前
|
小程序 JavaScript API
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
这篇文章介绍了使用uni-halo框架进行微信小程序开发的过程,包括选择该框架的原因、开发目标以及项目配置和部署的步骤。
176 0
uni-halo + 微信小程序开发实录:我的第一个作品诞生记

热门文章

最新文章