向Nagios添加飞信机器人(FetionROBOT)自动报警功能!
一、前提及软件
系统环境:Redhat EL 6.3 32bit (2.6.32-279.el6.i686)
Nagios:nagios-2.6
Nagios-pulgin:nagios-plugins-1.4.16
HTTP:http-2.2.22
Fetion:fetion-2010 (版本可能会有变动)
下载地址:http://www.it-adv.net/index.php?action=index
fetion所需要的lib库下载地址:
windows 版本:http://www.it-adv.net/fetion/win32dll_20101113.rar
linux版本:http://www.it-adv.net/fetion/linuxso_20101113.rar
linux64位(centos5.4)版本: http://www.it-adv.net/fetion/cenos54X64_20101113.rar
二、安装Fetion
1、下载的fetion是一个直接的可执行的文件(假若不没有权限,就修改为可执行)
#chmod 777 fetion
2、安装lib
由于下载的文件是rar形式的压缩包,可在Windows下面先解压到一个myfetion文件夹内,之后再上传到监控机上(利用Bitvise SSH Client 这个小软件就可以直接打开一个ssh的ftp并有可上传的功能,不必再开个ftp服务了,好用!),在监控机下
#cp fetion ./myfetion
#cd myfetion
# LD_LIBRARY_PATH=../fetion --mobile=159148***** --pwd=****** --to=159148**** --msg-gb=测试Ing,如果收到就正常! ——>测试lib是否可用,手机收到短信为正常
#chmod 777 lib* ——>改变lib的属性为可执行,为了防止产生不必要的错误,我这里就改成777
#ls /usr/lib/libACE* ——>这样检查看看在lib库里面有没有同样的,为了防止覆盖系统的lib而产生严重的错误,这个必须得认真一个一个lib检查!!!
#cp lib* /usr/lib/
#./fetion ——>假若出现如下内容即可正常运行
************************ IMPORTANT STATEMENT ************************
** **
** PLEASE DON'T USE THIS SOFTWARE TO SEND JUNK SHORT MESSAGES. **
** OTHERWISE PLEASE BEAR YOUR OWN CONSEQUENCES. **
** **
** Version:[20101205002-linux] **
*********************************************************************
This program is the console version of China Fetion!
It's free for personal user.
This project website: http://www.it-adv.net/
AUTHOR:KelvinH MSN/EMAIL:shichangguo@msn.com
Usage:
--mobile=[mobile]
--sid=[sid]
--pwd=[pwd]
--config=[config file] *format:index mobile password
--index=[index no in config file,refer to sample.conf]
--debug *debug mode on
--hide *login fetion in hidden state
--to=[mobile/sid]
--command-path=[command file path]
--robotmode
--daemon(linux only)
--proxy-ip(http proxy ip)
--proxy-port(http proxy port)
--msg-gb=[gb2312/gbk message]
--msg-utf8=[utf8 message]
--msg-type=[0/1/2 sms longsms smartmsg]
--file-gb=[gb2312/gbk file]
--file-utf8=[utf8 file]
--query-cmcc-no
--auto-retry
--exit-on-verifycode
--t3key=[http://www.tui3.com/page/smssend/]
三、在Nagios中加入Fetion模块
1、在commands.cfg中加入如下内容
#cp commands.cfg commands.cfg ——>为了安全起见,我们每在配置一个文件时都最好先cp一个备份
#vim commans.cfg
下面为添加的内容
# 'notify-host-by-fetion' command definition
#baicl 2012-09-22
define command {
command_name host-notify-by-fetion
command_line /usr/local/myfetion/fetion --mobile=159148**** --pwd=***** --to=$CONTACTPAGER$ --msg-utf8="** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **"
——>后面这部分为短信内容,可以自己修改。
}
# 'notify-service-by-fetion' command definition
#baicl 2012-09-22
define command {
command_name service-notify-by-fetion
command_line /usr/local/myfetion/fetion --mobile=159148**** --pwd=***** --to=$CONTACTPAGER$ --msg-utf8= "**$NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$ **" }
2、在联系人里面添加相应的执行命令
#cp contacts.cfg contacts.cfgbak #vim contacts.cfg 其内容如下: #BaiCL define contact { contact_name baicl alias system administrator service_notification_period 24x7 host_notification_period 24x7 service_notification_options w,u,c,r host_notification_options d,u,r service_notification_commands service-notify-by-email,service-notify-by-fetion
——>就只添加这一句命令即可
host_notification_commands host-notify-by-email
email abcde@163.com
pager 159148******,159148*****
——>发送短信的手机号码,多个可以在后面添加
}
2、生效
#/etc/init.d/nagios restart
——>重启生效,这样你就可以收到短信报警了!不信?你可以先将nagios的监控内容关闭一个,你手机很快就会接收到报警!
#service httpd restart
附后:如果出现你收到的是两条一样短信,那就是你在联系人里面多添加了一条!删除即可!!!