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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

实验环境:

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

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1月前
|
小程序 JavaScript
微信小程序之input组件及其获取用户输入信息
微信小程序之input组件及其获取用户输入信息
54 1
|
1月前
|
JavaScript 小程序 开发者
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
316 0
|
2月前
|
Linux Perl
Nagios 邮件及短信报警
Nagios可通过139邮箱实现短信报警:配置Nagios向139邮箱发送信息,再由139自动转发至绑定手机。也可用短信猫设备。需修改`contacts.cfg`文件设置邮件收件人为139邮箱地址。Kickstart结合PXE等技术实现Linux系统的自动化安装,大幅减少手动安装的时间,适用于需要统一版本的大规模部署场景。配置涉及DHCP、TFTP等服务安装与设置。
27 0
|
3月前
|
人工智能 搜索推荐 安全
从零到一:微信机器人开发的实战心得
从零到一:微信机器人开发的实战心得
236 2
|
4月前
|
小程序 安全 搜索推荐
【微信小程序开发实战项目】——个人中心页面的制作
本文介绍了如何设计和实现一个网上花店的微信小程序,包括个人中心、我的订单和我的地址等功能模块。个人中心让用户能够查看订单历史、管理地址和与客服互动。代码示例展示了`own.wxml`、`own.wxss`和`own.js`文件,用于构建个人中心界面,包括用户信息、订单链接、收藏、地址、客服和版本信息。我的订单部分展示了订单详情,包括商品图片、名称、销量、价格和订单状态,用户可以查看和管理订单。我的地址功能允许用户输入和编辑收货信息,包括联系人、性别、电话、城市和详细地址。每个功能模块都附有相应的WXML和WXSS代码,以及简洁的样式设计。
209 0
【微信小程序开发实战项目】——个人中心页面的制作
|
3月前
|
缓存 JavaScript 前端开发
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)
微信 JS-SDK Demo “分享信息设置” API 及数字签名生成方法(NodeJS版本)更新时间(2020-10-29)
|
4月前
|
小程序 开发者
uniapp实战 —— 开发微信小程序的调试技巧
uniapp实战 —— 开发微信小程序的调试技巧
429 1
|
4月前
|
前端开发 小程序
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
408 0
|
4月前
|
算法 安全 数据安全/隐私保护
支付系统---微信支付09------数字签名,现在Bob想要给Pink写一封信,信件的内容不需要加密,怎样能够保证信息的完整性,使用信息完整性的主要手段是摘要算法,散列函数,哈希函数,H称为数据指纹
支付系统---微信支付09------数字签名,现在Bob想要给Pink写一封信,信件的内容不需要加密,怎样能够保证信息的完整性,使用信息完整性的主要手段是摘要算法,散列函数,哈希函数,H称为数据指纹
|
1月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
477 7