在Nagios使用飞信机器人发送警报
Nagios调用短信接口
Nagios调用短信接口公司之前一直使用的飞信的免费接口来发送Nagios短信报警,但由于1.23飞信内部系统升级,导致发信不能发送,飞信机器人也公布近期不会去破解,so,免费的飞信时代被终结。
公司正好有自己的短信接口平台,接下来带大家一起配置nagios调用第三方短信接口。
1:首先我们要写一个调用短信接口的脚本,网上的脚本大都是python写的,我这个是shell写的,比较好理解。
vi /root/duanxin.sh# 脚本的日志文件LOGFILE="/data1/sms_log/sms_send_.log" #定义发送短信的日志信息文件:>>"$LOGFILE"exec 1>>"$LOGFILE"exec 2>&1Uid="test" #接口的用户名,这个使用接口时对方会提供,我这里的test是随意写的Key="123456" #密码与用户名对应,也是接口方提供MOBILE_NUMBER=$1 # 接受短信的手机号码QIANMING="%e3%80%90%e9%a9%ac%e5%8f%af%e6%b3 %a2%e7%bd%97%e7%bd%91%e3%80%91" #这里重点说一下,签名有的接口需要,有的不需要,因为我们公司的接口需要,所以需要添加上,我这里的签名内容是经过编码的,不加编码会导致发送失败,具体工作中需不需要编码还得看接口哪边有没有要求。
XXD="/usr/bin/xxd"CURL="/usr/bin/curl"TIMEOUT=5MESSAGE_ENCODE=$(echo $(/usr/local/bin/php -r "echo urlencode(\"$2\");"; ) ) #这里的$2是nagios发送短信的第二个变量URL="http://192.168.100.100:8888/services/msgsend.asmx/ SendMsg?userCode=${$Uid}&userPass=${Key}&DesNo=${MOB ILE_NUMBER}&Msg=${MESSAGE_ENCODE}${QIANMING}&Chan nel=0"#我这里的URL是胡乱写的,我不可能暴漏自己公司的接口哈,但是格式大体是这样的,到时候接口方会提供URL的格式的# Send itset -x${CURL} -s --connect-timeout ${TIMEOUT} "${URL}"2 :测试脚本bash /root/duanxin.sh "手机号" “内容”如果脚本报错,可以根据报错信息检查脚本,如果脚本没有问题,但是短信发不出去,可以看看sms_send_log里面的报错信息3:nagios 调用脚本,不要忘记脚本要给执行权限,一般脚本放在root目录下,nagios在调用脚本时是不能访问root目录的,所以你还要看你/root目录的权限define command {command_name host-notify-by-smscommand_line /root/duanxin.sh $CONTACTPAGER$ "$HOSTNAME$ $HOSTSTATE$ $SHORTDATE TIME$"}define command {command_name service-notify-by-smscommand_line /root/duanxin.sh$CONTACTPAGER$ "$SERVICESTATE$ $SERVICEOUTPUT$ $HOS TALIAS$/$SERVICEDESC$ $SHORTDATETIME$"}4:看到这里大家可能对上面脚本的$1和 $2概念比较模糊,其实刚开始我也迷糊,nagios怎么知道我要发送的号码呢,后来研究发现,$CONTACTPAGER$这个变量就是nagios内部联系人的变量,也就是他会调用我们在contacts.cfg里面定义的手机号,而我们脚本里面定义的$1就对应$CONTACTPAGER$,$2就对应"$HOSTNAME$ $HOSTSTATE$ $SHORTDATETIME$"。
浅谈基于Nagios的故障告警系统
即0 0K表 示状 态正 常 1 ( ( ) WAR NG) NI 表示 出现一 安 装说 明 , 在此 不再 赘述 。但 是在正 式安 装n g o 之 a is 定 的 异常 : ( RTC ) 示 出现非 常 严重 的错 误 2 C II AL表 前, 务必让设置Ap c e1 s l a h  ̄ My q的默认字符集为 U F ] T一
4 、Nagi 软件 介绍 os
N go 主要 有以下几大功 能特 点 : a is (1)、监 视 网 络 服 务 ( MT ,P 3 S OP ,HT P T, P NN R PNG 。 T I 等)
( 、监视主机资源 ( 2) 进程, 磁盘等) 。
Na O 是 一款 遵 循 GP 协 议 的开 源 软 件 , gi S L 用于
Na o 通过 命令行 方式 调用 这些 脚本 , 且返 回4 gls 并 种 持 中文 , 议 安装 由 田朝 阳组 织汉 化 的 Na o 软件 建 gi s 状 态 信 息 ,Na i 可 以识 别 这 4 状 态 返 回信 息 , n go —n g OS 种 a sc 。由于 各软 件包 官方 网站 都有 比较详 细 的 i
3 UNK ( NOW N) 示被监控 的对象 已经停止 。 Na i s 8 由于 S n mal 也是 不支持 中文 的 , 以需要 表 go 。 ed i 默认 所 根据 插件返 回 的值来 判 断监控 对 象的状 态 , 并通 过页 修改/ t/ tri 置文件 , ec Mu tc ec Mu tc i  ̄ ]  ̄/ t/ tr中增3I t [ e s 面显 示 出来 , 以供系 统 管理 员及 时发现 故 障。用 户可 c a s t ” T 一 ”l e e d c as t ” t 8 , h re = U F8 ̄l ts n — h re = u f ” 同时 : s -
Nagois功能介绍
NAGOIS功能介绍Contents第 1 章关于Nagios (3)1.1. 什么是Nagios? (3)2.2. 监控Windows主机 (3)2.2.1. 介绍 (3)2.3. 监控Linux/Unix主机 (4)2.4. 监控路由器和交换机 (4)2.4.8. 监控丢包率和RTA (4)2.4.9. 监控SNMP状态信息 (5)2.4.10. 监控带宽和流量 (6)2.5. 监控网络打印机 (6)2.6.1. 监控HTTP (7)2.6.2. 监控FTP (7)2.6.3. 监控SSH (7)2.6.4. 监控SMTP (7)2.6.5. 监控POP3 (7)2.6.6. 监控IMAP (7)第 3 章准备配置Nagios (7)3.1. 配置概览 (7)3.1.1. 介绍 (7)3.1.2. 主配置文件 (7)3.1.3. 资源配置文件 (7)3.1.4. 对象定义文件 (7)3.1.5. CGI配置文件 (7)3.2. 计划停机时间 (8)3.2.1. 介绍 (8)3.2.2. 计划停机时间 (8)3.2.4. 触发停机时间 (8)3.2.2. 计划停机时间对通知产生什么影响? (9)3.2.3. 计划停机时间的重叠 (9)3.3. 时间周期 (9)3.3.1. 介绍 (9)3.3.2. 时间周期中的优先权 (10)3.3.3. 时间周期在主机与服务检测时是如何起作用的? (10)3.7. 通知 (10)3.7.1. 介绍 (10)3.7.2. 何时会做通知? (10)3.7.3. 谁会收到通知? (11)3.7.4. 送出通知时必须要通过什么样的过滤器? (11)3.7.2. 通知的方式 (12)3.8. 事件处理 (12)3.8.1. 介绍 (12)3.8.2. 何时执行事件处理? (13)3.8.3. 事件处理类型 (13)3.8.4. 使能事件处理 (13)3.8.2. 事件处理的执行次序 (13)3.10. 状态类型 (13)3.10.1. 介绍 (13)3.10.2. 服务与主机的检测重试 (14)3.10.3. 软态 (14)3.10.4. 硬态 (14)3.11. 主机检测 (14)3.11.1. 介绍 (14)3.11.2. 什么时候做主机检测? (14)3.11.3. 缓存主机检测 (15)3.11.4. 依赖性与检测 (15)3.11.3. 主机状态 (15)3.11.7. 主机状态判定 (15)3.11.8. 主机状态变换 (16)3.12. 服务检测 (16)3.13. 自主检测 (16)3.14. 强制检测 (16)第 1 章关于Nagios1.1. 什么是Nagios?Nagios是一款用于系统和网络监控的应用程序。
设置iMC短信告警发送告警详细信息的方法
文档名称文档密级
1.1 设置iMC短信告警发送告警详细信息的方法
iMC支持通过使用短信猫将告警以短信形式发送到指定的手机上。
在默认情况下,iMC只发送告警的标题,而不会发送告警详细内容。
在需要将告警详细信息发送到手机的场景中,请将iMC平台升级至E0202 P05
或以上版本,并执行以下的配置步骤:
1、找到$iMC/server/conf/qvdm.conf
2、找到SendSmsTrapContentType字段,修改为SendSmsTrapContentType = 1,
如果配置文件中没有,则在文件最后增加一段该配置,修改后保存文件并关闭。
3、在监控部署代理中重启告警后台,即imcfaultdm进程。
2015-01-28 H3C机密,未经许可不得扩散第1页, 共1页。
Nagios短信配置
nagios3.20版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。
否则将追究法律责任。
h tt p://zh jc z r.b lo g.51c to.c o m/205837/213369nagios3.20安装配置笔记(带飞信短信报警,mssql和mysql监控)nagios 官方主页nagios /1,下载软件包nagios-3.2.0.tar.gz wget /sourcefor ge/nagios/nagios-3.2.0.tar.gznagios-plugins-1.4.14.tar.gz wget /source forge/nagiosplug/nagios-plugins-1.4.14.tar.gznrpe-2.12.tar.gz wget /sourcefor ge/nagios/nrpe-2.12.tar.gzNSClient++-Win32-0.3.6.msi wget /project/n scplus/nscplus/NSClient%2B%2B%200.3.6/NSClient%2B%2B-0.3.6-Win32.msi2,实验环境主机名操作系统IP 作用nagios-server AS5.0 192.168.0.216 监控机(nagios主程序)192.168.0.19 Cent5.0 192.168.0.19 被监控机192.168.0.113 AS4.5 192.168.0.113 被监控机192.168.0.80 Windows2k3 192.168.0.80 被监控机192.168.0.229 Windows2k3 192.168.0.229 被监控机3,监控目标nagios-server 机器是否存活ssh是否开启磁盘负载系统负载状况站点是否正常192.168.0.19 机器是否存活m ysql是否存活ssh是否开启磁盘负载系统负载状况192.168.0.113 机器是否存活m ysql是否存活ssh是否开启磁盘负载系统负载状况192.168.0.80 机器是否存活 cpu使用率m emory使用情况c盘情况e盘情况f盘情况Explorer是否正常NSClient++是否正常系统时间是否正常ftp是否正常192.168.0.229 机器是否存活 cpu使用率m emory使用情况c盘情况d盘情况m s sql2000是否正常NSClient++是否正常系统时间是否正常w3svc是否正常4,配套需要的服务的安装与配置apache安装#tar zxvf httpd-2.2.6.tar.gz#cd httpd-2.2.6#./configure--prefix=/usr/local/apache--enable-so--enable-ssl--with-ssl=/usr/local/ssl--enable-track-vars--enable-rewrite--with-zlib--enable-modules=all--enable-mods-shared=all--with-suexec-caller=daemon#make#make install飞信机器人安装下载wget /fetion/downng/fetion20090406003-linux.tar.gz wget /fetion/downng/#解压主程序tar zxvf fetion20090406003-linux.tar.gzmv install /usr/local/fetionmkdir /usr/local/fetion/libmv library_linux.tar.gz /usr/local/fetion/lib/tar zxvf library_linux.tar.gz#解压后应该有一下4个文件libACE.so.5.6.8libACE_SSL.so.5.6.8libcrypto.so.0.9.8libssl.so.0.9.8全部copy到/usr/lib下cd /usr/local/fetion/lib/cp libACE.so.5.6.8 libACE_SSL.so.5.6.8 libcrypto.so.0.9.8 libssl.so.0.9.8 /usr/l ib/设定lib库配置文件#vi /etc/ld.so.conf#增加一条/usr/lib/#保存退出后,执行#ldconfig测试是否发送成功/usr/local/fetion/fetion --m obile=15801****** --pwd=bai******** --to=136 61****** --m sg-utf8=ddd创建发送联系人的手机号的文件# zhjczr1 mobile13661******# zhjczr2 mobile13693******编辑发送脚本vi /usr/local/fetion/sendsms.sh#!/bin/shfetionDir=/usr/local/fetioncd $fetionDirDIR=`pwd`# 设置发短信的号码和飞信登录密码user=15801******pwd=bai********for phone in `cat $DIR/phonelist.txt`doecho "$phone" | sed '/^[ \t]*$/d' | sed 's/^[ \t]*//' | sed 's/[ \t]*$//' | grep '^1[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'if (($? == 0 ));thenif [[ -f $DIR/msg.txt ]];thencat /dev/null >msg.txtfiphone=`echo "$phone" | sed 's/^[ \t]*//' | sed 's/[ \t]*$//'`echo "sms $phone $1" >> $DIR/msg.txtecho "quit" >> $DIR/msg.txt$fetionDir/fetion --m obile=$user --pwd=$pwd --to=$phone --m sg-utf8 =$1elsecontinuefidone5,安装与配置nagios/usr/sbin/useradd -m nagios进入下载目录tar zxvf nagios-3.2.0.tar.gzcd nagios-3.2.0./configure --prefix=/usr/local/nagiosmake all# 使用make install来安装主程序,CGI和HTML文件make install# 使用make install-init在/etc/rc.d/init.d安装启动脚本make install-init# 使用make install-cofig来安装示例配置文件,安装的路径是/usr/local/nagios/etc. make install-config# 使用make install-commandmode来配置目录权限make install-commandmodenagios目录功能的简要说明:bin Nagios执行程序所在目录,nagios文件即为主程序etc Nagios配置文件位置sbin Nagios Cgi文件所在目录,也就是执行外部命令所需文件所在的目录Share Nagios网页文件所在的目录var Nagios日志文件、spid 等文件所在的目录var/archives 日志归档目录var/rw 用来存放外部命令文件配置apacheScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin<Directory "/usr/local/nagios/sbin"> #Cgi文件所在目录AuthType BasicOptions ExecCGIAllowOverride NoneOrder allow,denyAllow from allAuthNam e "Nagios Access"AuthUserFile /usr/local/nagios/etc/htpasswd #验证文件路径Require valid-user</Directory>Alias /nagios /usr/local/nagios/share<Directory "/usr/local/nagios/share"> #nagios页面文件目录AuthType BasicOptions NoneAllowOverride NoneOrder allow,denyAllow from allAuthNam e "nagios Access"AuthUserFile /usr/local/nagios/etc/htpasswd #验证文件路径Require valid-user</Directory>#创建apache目录验证文件/usr/local/apache/bin/htpasswd -c /usr/local/nagios/etc/htpasswd testNew password: (输入密码)Re-type new password: (再输入一次密码)#重启apache:/usr/local/apache/bin/apachectl -k restart以后在添加文件不需要加-c的参数,-c是建立passwdfile文件。
nagios 邮件报警配置
nagios 邮件报警配置张映发表于 2012-04-20分类目录:服务器相关nagios最主要优点就是在于它的报警功能,下面讲解一下用nagios来发邮件警告。
一,配置contacts.cfg查看复制打印?1.vim /etc/nagios/objects/contacts.cfg2.3.define contact{ //30行4. contact_name nagiosadmin5. use generic-contact6. alias Nagios Admin7. email xxxx@ //这里改成自己的邮箱8. }二,配置nagios.cfg和localhost.cfg查看复制打印?1.vim /etc/nagios/nagios.cfg2.3.enable_notifications=1 //807行,开启报警4.5.上面的总的开启也就是nagios装的所有插件,出现问题都会报警6.7.vim /etc/nagios/objects/localhost.cfg8.9.define service{ //以processes为例10. use local-service ;Name of service template to use11. host_name localhost12. service_description Total Processes13. check_command check_local_procs!250!400!RSZDT14. notifications_enabled 115. }如果总的没有开启的话,localhost.cfg里面可以一个一个配置,这样比较麻烦。
如果总的开启了,里面有些不想开启就可以notifications_enabled设置成0这样,这个就不用发报警,其他的发报警。
三,添加发报警用户1.[root@localhost objects]# cyradm -u cyrus localhost --auth plain2.verify error:num=18:self signed certificate3.Password:4.IMAP Password:5.localhost> cm nagios6.localhost> quit为什么要添加一个邮件用户nagios呢?可以看一下nagios发邮件的配置文件commands.cfg查看复制打印?1.define command{2. command_name notify-host-by-email3. command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress:4. $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /bin/mail -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **"5. $CONTACTEMAIL$6. }从上面/bin/mail我们可以看出,它是用了系统mail命令来发邮件的,并且没有指定用户,发邮件时会当前的默认用户,nagios的启动用户默认是nagios,可以在主配置nagios.cfg的123行找到 nagios_user=nagios,所以要加一个nagios邮件用户,当然你可以把启动用户改掉。
基于Nagios的网管系统报警方式研究
基于Nagios的网管系统报警方式研究摘要:简述nagios及其工作原理,重点研究该系统可采用的多种报警方式,并结合实例给出部分配置与实现方法。
最后讨论和分析各报警方法的特点与应用前景,为有效实现网络监控与管理提供应用参考。
关键词:nagios;网络监控;报警引言随着各行业信息化进程的快速发展,机房规模、设备数量、服务类型均不断加大和丰富。
保障系统的稳定、可靠是高质量服务的基础和重要任务,而庞大而繁杂的网络环境运维是每位管理员面临的艰难挑战,因此科学的监控方法与管理模式是系统维护的重要组成部分,有效的监控管理系统是故障快速响应与处理的必要手段。
具有一个能够完成对主机或服务进行检测的自动化工具就非常重要,nagios(nagios ain’t gonna insist on sainthood)就是实现对远程主机、服务以及网络全面监控的开源管理软件,其在众多监控系统中具有成本低廉、结构简单、使用灵活、功能强大、可维护性强等诸多特点[1]。
当发生故障时,基于nagios的监控系统能够以多种报警方式通知维护人员,并且准确地描述故障点位置,为高效地处理故障提供保障。
本文以suse linux 10.2、nagios 3.2.3、apache2.2.3、php5.2.5为配置环境,对nagios系统各种报警功能进行测试与应用描述。
1 nagios及其工作原理nagios是一款基于gplv2许可开发的开源网络监控软件[2,3],其在linux/unix环境下运行,基于浏览器的接口允许从任意平台上进行操作控制。
nagios采取灵活的模块化设计,其本身不包含任何监控机制,主要利用其众多插件对多种系统的主机和服务进行检查[4,5]。
当被监控设备工作状态发生异常变化时,nagios可通过web页面、声音、电子邮件、短信等[6-10]多种报警方式通知管理员,从而缩短故障的响应和排查时间,提升服务质量与效率[11]。
2 报警方式与实现2.1 web页面报警nagios提供web界面查看和管理,其web页面报警即登录后通过浏览器观看被监控的对象及相关日志。
基于飞信报警方式的Nagios网络监控系统的研究与实现
#Au h e F l u r o a/ a isec h p s w . s r t Us r i e/ s/ c l go / t/ t a s d u es l n Re u r a i — s r q i v l u e e d
< Dr c oy / i tr > e
1 建 N g s 户 . 创 ai 用 o
#/ s/b n u e a d- n g o u r i / s r d m a i s s #p s w a is a s d n go #/ s/b n u emo a— n g md n g o u rs i / s r d— G a c a i s
N g s8 器 的 安装 ai 1 务 o] [ 选 择 在 C no54 来 部  ̄ N g s 系 统 所 需 的 软 件 包 包 e t .上 s ai 。 o 括 :t d gc g b , ic cmm n g ,d dvl这 些 软 件 包需 h p ,c ,l c gb - o o ,d g — ee。 t i l 要 在 安装 N g s 安 装 ai 前 o
2安 装 N go J  ̄ 序 。 . ais E
#tr z f n go - . . . r z a — x a is 32 1 a . t g
A i s n go u r o a/ a i ss ae la / a is" s/ c l go /h r’ l n < r co y'u r o a/ a i s h r ” Di tr T s/ c l g o / a e > e l n s
S Re u r S L L qi S e Op in n t sNo e o
构建基于nagios的图形化服务器监控报警平台
go 进程 , is 利用其众多的插件搜集信息 , 分析数据 , 结果 将
写 入 日志 文 件 , 当核 心 进 程 识 别 到 问题 后 , 送 报 警 信 息 发 给 系 统 管 理 员 。W e 面 和 C I b界 G 脚本 读 取 这 些 搜 集 到 信
和 l u 平 台 , 经 搭 建 好 ngo 平 台 , 要 通 过 飞 信 和 i x n 已 ai s 需
1 n go a is工 作 原 理 和 特 点
ngo 是 有 许 多 组 件 组 成 的 , 核 心 的 组 件 就 是 n — ais 最 a
p p n go n 4 a is扩 展 功 能 , 当监 控 过 程 中发 生 异 常 情 况 时 , 如
示 和 日志 文 件 。
g s 控 系统 基础 上 , 成 飞 信 报 警 和 p p n g s i 监 o 集 n 4 a i 。通 过 o
该 平 台 , 以实 现 对 企 业 所 有 应 用 服 务 器 2 可 4小 时 实 时 监
控, 出现 异 常 情 况 时 以 飞信 发 送 手 机 短 信 报 警 , 将 监 控 并 结 果 存 储 于后 台数 据 库 中 , 过 数 据 分 析 , 监 控 的 状 态 经 将
0 引 言
服 务 器 和 网 络设 备 的 运 行 状 态 监 控 是 系 统 管 理 员 的
一
就会 根 据 设 定 的周 期 , 自动 调 用插 件 去 检 测 服 务 和 主机 状
态 , 检 测 到 的状 态 信 息 进 入 队列 , 通 过 We 将 并 b页 面显 示 出 来 。N go 提 供 了很 多 插 件 , 多 开 源 爱 好 者 不 断 地 ais 很
Nagios详细教程
Plugin Nagios SSH SSL
……
C++
Perl ruby
Python PHP C# Nagiosgrapher PNP4Nagios
Plugins Nagiosgraph
email, pager, sms
Nagios Nagios web Nagios nagios /libexec check_load ./check_xxx –h Nagios 2(CRITICAL) Nagios 0(OK) 3(UNKNOWN) web nagios CPU
Nagios
check_disk
1(WARNING)
nagios Nagios
Nagios
Nagios
Nagios Nagios
Nagios apache http apache apache
Linux
Nagios Nagios NRPE Nagios
Nagios 1. Nagios
NRPE check_nrpe check_nrpe
web
11.
Require valid-user
12. </Directory> 13. Alias /nagios "/usr/local/nagios/share" 14. <Directory "/usr/local/nagios/share"> 15. 16. 17. 18. 19. 20. 21. 22. AuthType Basic Options None AllowOverride None Order allow,deny Allow from all AuthName "nagios Access" AuthUserFile /usr/local/nagios/etc/htpasswd Require valid-user
基于Nagios的网管系统报警方式研究
c o mma n d l i n e/ us r / l o c a l / f e t i o /f n e t i o n一 一mo bi l e =l 3 7
-
a l i a s Na g i o s Ad mi n;
e m a i l t e s t @t e s t . c o n; 此项设 置为管理员 邮箱
Jห้องสมุดไป่ตู้
t o = ¥ CO NT AC r P AG ER ¥ 一 ms g — u t f S = “ Ho s t s nO S T S T AT E ¥a l e r t f o r 蝴 1 0S T NAME ¥ ! o n 札 0NG DAT ET I ME ¥ , ’ ’ ¥ c 0N T AC T P A GE R ¥
_
# n o t i { — s e vi r c e — b v _ 1
c o mma n d de ini f t i o n
d e i f n e c o m m a n d f
c o mma n d na me
_
s e r v i c e -n o t i f v — bv ’ f _ e i
c o mma n d l i n e/ us r / l o c a ] / f e t i o /f n e t i o n — mo b i 1 e :1 37
一 一
一 — D wd :
的邮件地址写上, 使用空格或者逗号隔开。 但是如果监控的内容 中服务 t o = ¥ C O NT AC T P AGE R ¥ 一 ms g — u t f S = “ ¥ H0 S T ADD RE S S ¥非 HOS T AL — A S E RVI C ED ES C ¥i s¥ S E RV I C ES T AT E ¥o n S L 0N GDA T E T I ME¥ ” 器和网络有单独的管理员 ,可以定义多个 c o n t a c t 系人) ,然后再用 I
【IT专家】nagios安装和配置笔记
本文由我司收集整编,推荐下载,如有疑问,请与我司联系nagios安装和配置笔记2012/04/06 0 nagios-cn.sourceforge/ sourceforge/project/platformdownload.php?group_id=204892 CentOS 5.2安装nagios实现短信告警笔记 linux.chinaunix/bbs/viewthread.php?tid=1051835 Nagios飞信linux系统免费短信报警配置 bbs.chinaunix/viewthread.php?tid=1326927 Nagios是一款用于系统和网络监控的应用程序。
它可以在你设定的条件下对主机和服务进行监控,在状态变差和变好的时候给出告警信息。
Nagios最初被设计为在Linux系统之上运行,然而它同样可以在类Unix的系统之上运行。
Nagios更进一步的特征包括: 监控网络服务(SMTP、POP3、HTTP、NNTP、PING等);监控主机资源(处理器负荷、磁盘利用率等);简单地插件设计使得用户可以方便地扩展自己服务的检测方法;并行服务检查机制;具备定义网络分层结构的能力,用parent 主机定义来表达网络主机间的关系,这种关系可被用来发现和明晰主机宕机或不可达状态;当服务或主机问题产生与解决时将告警发送给联系人(通过EMail、短信、用户定义方式);具备定义事件句柄功能,它可以在主机或服务的事件发生时获取更多问题定位;自动的日志回滚;可以支持并实现对主机的冗余监控;可选的WEB界面用于查看当前的网络状态、通知和故障历史、日志文件等;一.安装 1.准备软件包 yum install httpdyum install gccyum install glibc glibc-commonyum install gd gd-devel yum install mysql mysql-server mysql-devel yum install gnutls 2.建立用户 切换到root用户。
nagios配置文档
Nagios是一款优秀的监控软件,它主要通过插件的形式来实现对主机和服务的监控,它最重要的特点是能够实现多种途径的报警,例如:邮件,短信,飞信等等,现将其配置过程介绍如下:搭建环境:Nagios-server:Centos4.8,2.6.9-89.Elsmp,IP:192.168.9.130Linux-client:Centos4.8,2.6.-89.Elsmp,IP:192.168.9.73软件版本:Nagios-3.2.1.tar,nagios-plugins-1.4.14.tar,nrpe-2.12.tar工作原理如下图:开始配置,首先是nagios-server端:安装必要的软件包和添加用户:Nagios安装:为nagiosweb界面设置访问控制:然后接着测试访问http://192.168.9.130/nagios,会出现nagios的web界面,如下图:安装nagios-plugins在./configure过程中,如果出现checking for redhat spopen problem...停在这里动不了,可加上—enable-redhat-pthread-workaround重新进行编译。
紧接着我在监控本机的配置文件localhost.cfg中又添加了两个服务FTP和NFS接下来安装和定义nrpe然后配置监控linux client的配置文件定义host的:定义hostgroup的:定义服务的:(所有服务均如下图所示修改host_name即可)接着追加测试nagios的配置文件是否有错误:如没错误会出现以下图示:至此,服务端配置结束。
Linux-client配置如下:添加用户安装nagios-plugin在编译时可能会出现no acceptable c compiler found in $PATH这样的错误,这时你需要安装gcc软件包,再重新编译。
安装nrpe在编译时可能会报这样的错:checking for SSL headers…configure:error:Cannot find ssl headers, 需要安装openssl*软件包,安装完后再重新编译。
配置 Nagios 使用 FetionRobot 短信报警
配置 Nagios 使用 FetionRobot 短信报警一、概述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 以及依赖库。
/fetion/download/fetion20080910047-lin64.tar.gz/fetion/library64_linux.tar.gz复制代码解压缩library64_linux.tar.gz 内库文件至/usr/lib64复制代码。
完成后记得执行一下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: /This project website: /AUTHOR:KelvinH MSN/EMAIL:shichangguo@Usage:fetion -h-h: helpfetion -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 命令行更具体的使用,请参考此文。
linux下的短信自动报警
Linux下的飞信,可以帮助你实现手机预警新版飞信机器人版本号起于20101113002,凡之前版本的飞信机器人,11月20日之后将不能使用。
1. 遇到输入图形验证码时,自动生成图形验证码,用户可以手工输入识别后的验证码(解决之前的422问题,识别及输入方法见Q&A)。
2. 可以设定遇到图形验证时的行为,退出(--exit-on-verifycode=1)或者手工输入(当机器人后台执行时,如果等待输入将导致程序无限期等待)3. 第一次运行时将缓存配置数据(文件名:登录账号.cache),之后运行自动加载缓存,提高发送速度。
1.本程序为绿色程序,无需安装,下载解压后即可使用。
2. 下载机器人支持库(使用机器人以前版本的朋友可以直接忽略),把压缩包中的文件解压到主程序相同的目录windows 版本:/fetion/win32dll_20101113.rarlinux版本:/fetion/linuxso_20101113.rar(在Redhat4 下编译,其它LINUX发行版的朋友请测试)linux64位(centos5.4)版本: /fetion/cenos54X64_20101113.rar(感谢QQ“走過你的風”网友提供。
Centos5.4 64位linux系统下,如果用上面提供的linux版本动态库,会提示Segmentation fault,程序异常退出)一:如何安装使用将linuxso_20101113 里的文件全部复制到与主程序相同的文件夹下注意:linux用户,请不要把支持库中的lib* 复制到/usr/lib 下,因为发行版本不同,可能会覆盖您机器中的核心库,导致、系统问题。
您可以把库解压到主程序的相同目录,然后以LD_LIBRARY_PATH=. ./fetion 来运行)>> 使用说明<<以下参数提供登录用的账号密码(三种方式,手机号-密码飞信号-密码文件--索引)--mobile=[手机号] 登录手机号--sid=[飞信号] 登录飞信号--pwd=[密码] 登录密码--config=[文件名] 存储手机号、密码的文件。
nagios监控系统手册详细操作
nagios网络监控Nagios是什么:Nagios是一款开源的免费网络监视工具,能有效监控Windows、Linux和Unix的主机状态,交换机路由器等网络设置,打印机等。
在系统或服务状态异常时发出邮件或短信报警第一时间通知网站运维人员,在状态恢复后发出正常的邮件或短信通知。
nagios是功能强大的监控软件,主要用来监控网络设备的状态(比如:主机的资源状态);适合于:对大量的服务器进行监控,判断其负载或服务是否正常,发生异常能通过邮件、短信报警。
特别注意:流量监控不是他的强项,流量监控建议使用cacti.可以绘制非常直观的图形nagios能监视什么:nagios可以监控:1、主机是否宕机(通过ping命令,如果ping不通会认为主机属于宕机状态,但不影响所监控的其他服务);2、服务器资源(cpu使用率、硬盘剩余空间等);3、网络服务(smtp\pop3\http\);4、监控网络设备(路由器、交换机等。
)一、RHEL系统上部署Nagios:(禁用selinux功能)系统环境:RHEL,在nagios主机上监控mysql服务器nagios 主机:192.168.10.100mysql 主机: 192.168.10.101操作步骤:1、安装编译所需的软件包:如下图所示:# yum –y install httpd php-* gd-* mysql-devel(若mysql-devel包不安装,会没有check_mysql插件。
)2、创建运行nagios服务的用户注:useradd nagios #创建运行nagios服务的用户usermod -G nagios apache #使apache用户对nagios目录具有写权限,不然web页面操作失败.3、nagios软件安装释放nagios源码包,进行编译前的预备置:编译并安装nagios及相关操作,如下图所示:注:make install //安装主程序,CGI和HTML文件make install-init //在/etc/rc.d/init.d安装启动脚本make install-commandmode //配置目录权限make install-config //安装示例配置文件make install-webconf //安装nagios的web接口,会在/etc/httpd/conf.d目录中创建nagios.conf文件。
nagios部署+短信和邮件报警
nagios部署+短信和邮件报警操作系统 CentOS6.6服务端:10.0.0.20客户端:10.0.0.50⼀.nagios的服务端安装部署1.nagios安装[root@manager src]# rzrz waiting to receive.Starting zmodem transfer. Press Ctrl+C to cancel.Transferring nagios-cn-3.2.3.tar.bz2...100% 9412 KB 9412 KB/sec 00:00:01 0 Errorstar xf nagios-cn-3.2.3.tar.bz2cd nagios-cn-3.2.3useradd -m -s /bin/bash nagiosgroupadd nagcmdmake install; make install-init;make install-commandmode;make install-config;make install-webconfll /usr/local/nagios/ #出现以下⽂件代表成功drwxrwxr-x 2 nagios nagios 4096 Mar 12 08:08 bindrwxrwxr-x 3 nagios nagios 4096 Mar 12 08:08 etcdrwxrwxr-x 2 nagios nagios 4096 Mar 12 08:08 libexecdrwxrwxr-x 2 nagios nagios 4096 Mar 12 08:08 sbindrwxrwxr-x 9 nagios nagios 4096 Mar 12 08:08 sharedrwxrwxr-x 6 nagios nagios 4096 Mar 12 08:08 varchmod o+rwx /usr/local/nagios/var/rw2.nagios plugin 插件安装[root@manager src]# rzrz waiting to receive.Starting zmodem transfer. Press Ctrl+C to cancel.Transferring nagios-plugins-1.4.13.tar.gz...100% 2226 KB 2226 KB/sec 00:00:010 Errors[root@manager src]# tar xf nagios-plugins-1.4.13.tar.gz[root@manager src]# cd nagios-plugins-1.4.13#安装依赖yum install make apr* autoconf automake curl curl-devel gcc gcc-c++ zlib-devel \openssl openssl-devel pcre-devel gd gd-devel kernel keyutils patch perl perl-devel \kernel keyutils kernel-headers compat* mpfr cpp glibc libgomp libstdc++-devel ppl \cloog-ppl keyutils-libs-devel libcom_err-devel libsepol-devel libselinux-devel \krb5-devel zlib-devel libXpm* freetype libjpeg* libpng* php-common php-gd ncurses* libtool* libxml2 libxml2-devel patch -y./configure --prefix=/usr/local/nagios --with-mysql=/usr/local/mysql/makemake installfile /usr/lib64/libxcb-reply.so.1.0.0 from install of compat-xcb-util-0.4.0-2.2.el6.x86_64 conflicts with file from package xcb-util-0.3.6-5.el6.x86_64有冲突卸载掉这个有冲突的yum remove -y xcb-util-0.3.6-5.el6.x86_643.nrpe安装[root@manager src]# rzrz waiting to receive.Starting zmodem transfer. Press Ctrl+C to cancel.Transferring nrpe-2.12.tar.gz...100% 396 KB 396 KB/sec 00:00:010 Errorstar xf nrpe-2.12.tar.gzcd nrpe-2.12./configuremake./configuremake allmake install-pluginmake install-daemonmake install-daemon-config\cp src/check_nrpe /usr/local/nagios/libexec//usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -decho'/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d' >> /etc/rc.local要重启nrpe进⾏就先杀掉进⾏,然后重启kill `ps aux |grep nrpe |grep -v grep |awk'{print $2}'`/usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d本机测试下:/usr/local/nagios/libexec/check_nrpe -H localhost -c check_users加⼊系统服务加⼊系统服务并设为开机⾃动chkconfig --add nagioschkconfig nagios onchown nagios.nagios /usr/local/nagios/var/rw# 测试配置⽂件是否正确/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg添加别名命令,⽅便测试配置⽂件vi ~/.bashrc在⾥⾯⽤alias 来⾃定义⼀个命令来代替,这⾥我⽤checkalias check='/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg'source ~/.bashrc此时可以⽤check命令来检测配置⽂件了安装 nginx 的FCGI模块cd /usr/local/src/rztar xf FCGI-0.74.tar.gzcd FCGI-0.74perl Makefile.PLmake && make install安装IO 和IO-ALL模块[root@manager src]# tar xf IO-1.25.tar.gz[root@manager src]# cd IO-1.25[root@manager IO-1.25]# perl Makefile.PL[root@manager IO-1.25]# make && make install[root@manager src]# tar xf IO-All-0.81.tar.gz[root@manager src]# cd IO-All-0.81[root@manager IO-All-0.81]# perl Makefile.PL[root@manager IO-All-0.81]# make && make install上传fastcgi 的启动脚本。
Nagios发送邮件的设置方法
Nagios发送邮件的设置方法nagios邮件报警设置 - [监控]nagios发警告邮件是采用本机的smtp服务,可以查看commands.cfg中关于发邮件的命令的定义,使用本机的mail命令,这就需要开启本机的smtp服务,为了安全可以在防火墙上设置拒绝其他的机器连本机的25号端口现在我们的网络里面有一个邮件服务器,所以要求使用这台现有的邮件服务器,不开启本机的smtp服务,这就需要重新定义命令使用第三方软件sendEmail.首先我们当然要在邮件服务器上新建一个账户用来做发邮件的账户这里邮件服务器的地址为用来发邮件的帐号nagios@SMTP验证的用户名 nagios 密码 p#3isoda以下就来介绍一下sendEmail这个软件的使用.sendEmail的主页/menu/Software/SendEmail/下载地址/menu/Software/SendEmail/sendEmail-v1.55.tar.gz 软件十分小,是一个通过命令来发smtp邮件的程序.安装也十分简单(查看其README文件即可).解压缩tar –zxvf sendEmail-v1.55.tar.gzcd sendEmail-v1.55将可执行程序复制cp sendEmail /usr/local/bin然后给确认确实它具有执行权限先看一个典型的例子/usr/local/bin/sendEmail –f nagios@–t yahoon@–s –u “from nagios” –xu nagios –xp p#3isoda –m happy解释:-f 表示发送者的邮箱-t 表示接收者的邮箱-s 表示SMTP服务器的域名或者ip-u 表示邮件的主题-xu 表示SMTP验证的用户名-xp 表示SMTP验证的密码(注意,这个密码貌似有限制,例如我用d!5neyland就不能被正确识别)-m 表示邮件的内容如果你不带-m参数的话,就会提示你自行输入当然我们也可以将一个文件的内容作为邮件的正文发出去的那么就可以使用:cat 文件名 | /usr/local/bin/sendEmail–f nagios@–t yahoon@–s –u “from nagios” –xu nagios –xp p#3isoda有关sendEmail的用法就讲到这里既然nagios要使用sendEmail来发警告邮件,那么就要修改commands.cfg中关于发邮件的命令的定义,我们现在来修改notify-by-email这个命令,如下(注意其注:其实sendEmail是一个十分有用的程序,我们在这个地方用了它,其实别的地方也可以用,典型的好处就是你不需要每台机器都装sendmail,开启smtp服务.直接用现成的一台邮件服务器就行了,这无疑很大的加强了系统的安全性,也节约了资源.。
linu运维从入门到高级全套案例
Linux运维入门到高级目录1.Linux入门篇..........................................错误!未定义书签。
1. 1Linux操作系统简介................................错误!未定义书签。
1. 2Linux发展趋势....................................错误!未定义书签。
1. 3Linux系统安装....................................错误!未定义书签。
1. 4Linux学习技巧....................................错误!未定义书签。
2.Linux系统篇..........................................错误!未定义书签。
Linux系统管理....................................错误!未定义书签。
. 1Linux目录初识............................错误!未定义书签。
. 2Linux常用命令............................错误!未定义书签。
. 3Linux用户权限............................错误!未定义书签。
. 4Linux网络配置............................错误!未定义书签。
3.Linux服务篇..........................................错误!未定义书签。
Linux服务部署....................................错误!未定义书签。
. 1构建NTP时间服务器........................错误!未定义书签。
. 2构建DHCP服务器...........................错误!未定义书签。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
12. OK
2. #tar zxvf fetion_linux_20080402.tar.gz会解压出一个sms的文件,放在 /opt目录下(这个目录随便啦)
3. 修改 sms权限 chmod 755 sms
4. #ldd sms出提示少一些库文件
linux-gate.so.1 => (0x00237000)
/lib/ld-linux.so.2 (0x00bf7000)
注意这是在 rhel5.1上出现缺少的文件,在RHEL4中,还会提示缺少
./sms: /lib/tls/libc.so.6: version `GLIBC_2.4' not found (required by ./sms)
6. 将这些库文件解压后放到 /usr/lib/目录下
7. #ldd sms ,发现OK了
linux-gate.so.1 => (0x00af1000)
libACE.so.5.4.7 => /usr/lib/libACE.so.5.4.7 (0x002ec000)
libACE_SSL.so.5.4.7 => /usr/lib/libACE_SSL.so.5.4.7 (0x00db8000)
这个与rhel4上的glibc版本低有关(rhel4的glibc版本为2.3.4)
5. 幸好飞信机器人的作者们已经替我们想好了这点,将缺少的库文件也放在了网络上供下载,到飞信机器人的官方网站[url]/[/url]下载库文件LINUX X86/32(REDHAT ES4X32)
平台: RHEL5.1
飞信版本: 2008-4-2
1.google下载飞信的这个版本fetion_linux_20080402.tar.gz,之所以使用这个相对较老的版本,个人认为他对nagios的支持较好。新的飞信版本需要使用 -b 的参数,使脚本的方式发送消息内容(这样会使nagios的宏失效),这个我觉得有点难,以后有空再去研究吧。
libssl.so.0.9.8 => /usr/lib/libssl.so.0.9.8 (0x00e9e000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00512000)
libm.so.6 => /lib/i686/nosegneg/libm.so.6 (0x002ad000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x004b0000)
libc.so.6 => /lib/i686/nosegneg/licobc.so.6 (0x00168000)
libdl.so.2 => /lib/libdl.so.2 (0x002d6000)
libpthread.so.0 => /lib/i686/nosegneg/libpthread.so.0 (0x00110000)
librt.so.1 => /lib/i686/nosegneg/librt.so.1 (0x0069b000)
libcrypto.so.0.9.8 => /usr/lib/libcrypto.so.0.9.8 (0x006a4000)
libz.so.1 => /usr/lib/libz.so.1 (0x00127000)
/lib/ld-linux.so.2 (0x0014b000)
8. 飞信的使用方式
sms -f mobile -p pwd -t mobile1,.. -m message -a message -d
}
#service notify by sms
define command {
command_name service-notify-by-sms
command_line /opt/sms -f 139xxxxxxxx -p xxxxxxxx -t 139xxxxxxxx -m "'$HOSTADDRESS$' $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ on '$LONGDATETIME$' " $CONTACTPAGER$ 9. 来自改commads.cfg文件
添加#host-notify-by-sms
define command {
command_name host-notify-by-sms
command_line /opt/sms -f 139xxxxxxxx -p xxxxxx -t 139xxxxxxxx -m "Host $HOSTSTATE$ alert for $HOSTNAME$! on '$LONGDATETIME$' " $CONTACTPAGER$
libm.so.6 => /lib/libm.so.6 (0x00ce6000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x0042a000)
libc.so.6 => /lib/libc.so.6 (0x00238000)
}
这里面的宏可参考上面的notify-by-mail里的宏来设定
10. 修改 contacts.cfg文件
修改为 service_notification_commands service-notify-by-sms,notify-by-email
host_notification_commands host-notify-by-sms,host-notify-by-email
libACE.so.5.4.7 => not found
libACE_SSL.so.5.4.7 => not found
libssl.so.0.9.8 => not found
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x0073e000)