设为首页收藏本站

LinuxTone | 运维专家网论坛 - 最棒的Linux运维与开源架构技术交流社区!

 找回密码
 注册

用新浪微博连接

一步搞定

QQ登录

只需一步,快速开始

查看: 8394|回复: 19

配置 Nagios 使用 FetionRobot 短信报警   [复制链接]

Rank: 3Rank: 3

签到
1
注册时间
2008-10-24
最后登录
2011-11-28
在线时间
16 小时
阅读权限
30
积分
261
帖子
34
主题
3
精华
2
UID
436
发表于 2008-11-27 15:27:11 |显示全部楼层
一、概述

  Nagios 是 Linux 环境下使用率最高的监控软件,它善于监控服务,容易进行二次定制。
  Feition Robot 是一款基于移动飞信服务的类 Unix 实现。通过 FetionRobot 可以很方便的在 shell 下发送免费短信。
  本文介绍介绍了如何通过 FetionRobot 使得 Nagios 可以免费发送报警短信。

  平台:CentOS 5.2 x86_64

二、Fetion Robot

  写此文时,使用的 fetion 软件版本为:fetion20080910047-lin64.tar.gz md5sum:9265d8f57556672220ee6a22c77c65af。使用的支持库 library64_linux.tar.gz md5sum 为:2e858e9184c4761bb0d1f9cea14dc49e 。

  安装 Fetion Robot

  下载 Fetion Robot 以及依赖库。
  1. http://www.it-adv.net/fetion/download/fetion20080910047-lin64.tar.gz
  2. http://www.it-adv.net/fetion/library64_linux.tar.gz
复制代码
解压缩 library64_linux.tar.gz 内库文件至
  1. /usr/lib64
复制代码
。完成后记得执行一下
  1. ldconfig
复制代码
刷新一下。

  解压缩 fetion20080910047-lin64.tar.gz 得到二进制文件。直接运行 fetion 即可:

[root@cacti install]# ./fetion -h
************************ IMPORTANT STATEMENT ************************
**                                                                 **
**   PLEASE DON'T USE THIS SOFTWARE TO SEND JUNK SHORT MESSAGES.   **
**   OTHERWISE PLEASE BEAR YOUR OWN CONSEQUENCES.                  **
**                                                                 **
**                                Version:[20080910047-lin64]      **
*********************************************************************
This program is the console version of China Fetion!
It's free for personal user.
Fetion official website: http://www.fetion.com.cn/
This project website: http://www.it-adv.net/

AUTHOR:KelvinH MSN/EMAIL:shichangguo@msn.com

Usage:
    fetion -h
        -h: help
    fetion -u mobile -p pwd [-b batchfile] [-EN] [-d]
    fetion -c [config_file] -id [n]  [-EN] [-d]
        -u: Fetion user account(only supports mobile phone No.)
        -p: Account password
        -b: Batch file name
        -d: Debug on and write logs to [mobile]-debug.log
         -c: config file name, refer to fetion.conf
         -i: id,  refer to fetion.conf
        -EN: English
[root@cacti install]#


  关于 fetionrobot 命令行更具体的使用,请参考此文。这里不再重复。

  可能出现的问题

  在 64 位系统下会出现 libstdc++ 包版本过低的问题。具体表现为:
  1. [root@cacti ~]# fetion -h
  2. fetion: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by /usr/lib64/libACE.so.5.4.7)
复制代码
出现此问题,是由于 gcc 的版本太低,同时导致 libstdc++ 库版本过低。CentOS 5.2 使用 libstdc++-4.1.2-42.el5 版本。而通过 rpm 查询 可以看到,此版本最高只提供了 GLIBCXX_3.4.8 。

  如果你有足够的时间,可以自己编译高版本的 gcc。并且在运行 fetion 时指定 lib 地址。
  另外你还可以找一个 Fedora Core 9 中的 libstdc++ 。它包含了所需要的库。
  1. [root@cacti ~]# rpm -Uvh --force libstdc++-4.3.0-8.x86_64.rpm
  2. warning: libstdc++-4.3.0-8.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 4f2a6fd2
  3. Preparing...                ########################################### [100%]
  4.    1:libstdc++              ########################################### [100%]
复制代码
三、perl 脚本准备  

  此脚本从 论坛上这篇文章 修改而来。稍微做了一点加工。

  脚本的作用是将 nagios 中的报警信息以及要通知的手机号码格式化的输入到其他文本中。这里的“格式化”是符合 fetion 脚本模式的格式化。在输出完成后,调用 fetion 去依照文本发短信。

  我修改的内容是让脚本支持一次通知多个手机。
  1. #!/usr/bin/perl
  2. use strict;
  3. use Fcntl qw(:flock);
  4. open SMS, "]/tmp/sms.txt" or die "NO OK";
  5. flock(SMS,LOCK_EX);
  6. my @mobile = split /\s+/, $ARGV[1];
  7. foreach (@mobile) {
  8. print SMS "sms $_ $ARGV[0]\n";
  9. }
  10. print SMS  "quit\n";
  11. system "/usr/bin/fetion -u 136xxxxxx -p xxxxxxxx  -b /tmp/sms.txt";
  12. #unlink "/home/sms/sms.txt";
  13. flock(SMS,LOCK_UN);
  14. close SMS;

  15. #unlink "/home/sms/sms.txt";
复制代码
推荐将此脚本放在
  1. nagios/libexec/
复制代码
下。
记得在 /tmp 下创建 sms.txt 文件,777。

四、Nagios 配置

  nagios 配置2个点:

  1.定义短信提醒方式。调用前面写的 perl 脚本。同时将报警信息和手机号码传入脚本。
  2.定义管理员接受报警方式。

直接贴配置文件了:

定义短信提醒调用脚本

      define command {
      command_name host-notify-by-sms
      command_line /usr/local/nagios/libexec/sms "IP: $HOSTADDRESS$($HOSTNAME$) is $HOSTSTATE$\n$SHORTDATETIME$" "$CONTACTPAGER$"
      }

      define command {
      command_name service-notify-by-sms
      command_line /usr/local/nagios/libexec/sms "'$HOSTADDRESS$' $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$" "$CONTACTPAGER$"
      }

      定义管理员接受报警方式

      define contact{
      contact_name nagiosadmin ; Short name of user
      use generic-contact ; Inherit default values from generic-contact template (defined above)
      alias Nagios Admin ; Full name of user
      service_notification_commands notify-service-by-email,service-notify-by-sms
      host_notification_commands notify-host-by-email,host-notify-by-sms
      email youremailaddress;
      pager 136xxxxxxx 136xxxxxx
      }

[ 本帖最后由 latteye 于 2008-11-27 15:49 编辑 ]
已有 1 人评分积分 收起 理由
linuxtone + 20 我很赞同

总评分: 积分 + 20   查看全部评分

LT管理团队

社区首席勤杂工

Rank: 9Rank: 9Rank: 9

注册时间
2008-5-19
最后登录
2012-5-3
在线时间
1762 小时
阅读权限
200
积分
14979
帖子
2524
主题
1200
精华
25
UID
1

LT总司令

发表于 2008-11-27 15:33:20 |显示全部楼层
感谢latteye兄分享!
广告一下关注latteye兄博客:   http://latteye.com/  
感谢大家对linuxtone的支持!

使用道具 举报

Rank: 7Rank: 7Rank: 7

注册时间
2008-5-26
最后登录
2012-5-16
在线时间
38 小时
阅读权限
100
积分
768
帖子
56
主题
9
精华
0
UID
16
发表于 2008-11-27 15:37:50 |显示全部楼层
不错,感谢分享,找空做一下

使用道具 举报

LT管理团队

守住每一天

Rank: 9Rank: 9Rank: 9

注册时间
2008-5-30
最后登录
2012-5-22
在线时间
641 小时
阅读权限
200
积分
16214
帖子
1273
主题
176
精华
11
UID
31
发表于 2008-11-27 15:38:51 |显示全部楼层
    感谢分享。
<-sina_sign,1054764633,7->

使用道具 举报

Rank: 3Rank: 3

注册时间
2008-11-27
最后登录
2012-3-29
在线时间
17 小时
阅读权限
30
积分
290
帖子
11
主题
5
精华
0
UID
633
发表于 2008-11-27 15:39:21 |显示全部楼层
先顶顶 ,收藏回头在看,做事呢,哈哈

使用道具 举报

LT技术团队

秋意浓

Rank: 7Rank: 7Rank: 7

注册时间
2008-5-27
最后登录
2012-1-2
在线时间
93 小时
阅读权限
100
积分
274
帖子
60
主题
9
精华
0
UID
21
发表于 2008-11-27 15:39:49 |显示全部楼层
敢于奉献的兄弟,我收藏了,非常使用的功能,感谢分享。

使用道具 举报

Rank: 2

注册时间
2008-12-31
最后登录
2010-5-4
在线时间
23 小时
阅读权限
20
积分
80
帖子
64
主题
7
精华
0
UID
810

LT粉丝

发表于 2009-1-12 10:20:45 |显示全部楼层
nagios 不太会玩吖  学习了 老徐
Simple world Simple life!~

使用道具 举报

Rank: 1

注册时间
2009-4-22
最后登录
2010-10-9
在线时间
5 小时
阅读权限
10
积分
1
帖子
1
主题
0
精华
0
UID
2633
发表于 2009-4-22 19:12:20 |显示全部楼层
好东西啊!!!谢谢

使用道具 举报

Rank: 2

注册时间
2009-5-28
最后登录
2012-4-11
在线时间
31 小时
阅读权限
20
积分
131
帖子
41
主题
16
精华
0
UID
3293
发表于 2009-6-8 10:16:37 |显示全部楼层
有没有用cacti实现短信报警的?

使用道具 举报

Rank: 6Rank: 6

注册时间
2009-9-3
最后登录
2012-4-9
在线时间
86 小时
阅读权限
70
积分
1950
帖子
7
主题
1
精华
0
UID
5177
发表于 2009-12-4 19:52:30 |显示全部楼层
ldconfig 之后,/root下的东西全没了;;;;;杯具啊

使用道具 举报

Rank: 1

注册时间
2010-11-5
最后登录
2010-11-5
在线时间
0 小时
阅读权限
10
积分
5
帖子
1
主题
0
精华
0
UID
10983
发表于 2010-11-5 17:57:52 |显示全部楼层
感谢!有时间试一试

使用道具 举报

Rank: 2

注册时间
2010-5-12
最后登录
2011-7-6
在线时间
35 小时
阅读权限
20
积分
86
帖子
19
主题
1
精华
0
UID
9193
发表于 2010-11-8 15:26:32 |显示全部楼层
好东西,不过试过,没试成功,纠结

使用道具 举报

Rank: 6Rank: 6

注册时间
2010-9-7
最后登录
2012-5-10
在线时间
37 小时
阅读权限
70
积分
2056
帖子
92
主题
23
精华
0
UID
10321
发表于 2010-11-22 11:20:24 |显示全部楼层
现在飞信不好用!

使用道具 举报

Rank: 2

注册时间
2010-4-11
最后登录
2012-4-18
在线时间
4 小时
阅读权限
20
积分
96
帖子
11
主题
0
精华
0
UID
8827
发表于 2010-12-18 17:11:06 |显示全部楼层
感谢

建议 以后发帖的  做个 doc  pdf神马的。

使用道具 举报

Rank: 8Rank: 8

注册时间
2009-5-23
最后登录
2012-5-18
在线时间
68 小时
阅读权限
90
积分
5085
帖子
97
主题
6
精华
0
UID
3211
发表于 2010-12-28 15:49:16 |显示全部楼层
现在飞信的网关貌似都升级了。。
机器人都用不了。。。
建议改用139邮箱的。短信收件同步抵达。

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

IT运维专家网感谢红之盟网络提供带宽支持

合作联系: QQ:67888954/MSN:cnseek@msn.com/mail:netseek@linuxtone.org

Archiver|手机版|感谢所有关心和支持过LinuxTone的朋友们 转载本站内容请注明原作者名及出处 ( 京ICP备08103151 )   |

GMT+8, 2012-5-22 20:42 , Processed in 0.161418 second(s), 13 queries , Memcache On.

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部