Articles of Nagios

Nagios监视SOAP

我是新手,需要你的帮助。 我们有1个URL需要监视其健康状态。 它正在SOAP中成功执行。我们尝试在nagios中进行configuration并给出错误。请有人提出下面的服务定义中可能出现的错误。 Nagios service definition : =============================== define service{ use generic-service,srv-pnp host_name twrprod1 contact_groups cg_app_leo servicegroups sg_app_leo service_description LEO Health Check notification_period tier2hours check_period tier2hours check_command check_http_I!10.6.157.5!-k 'SOAPAction: "urn:LEOACTIVEService"' -r '<ns:_LEO_ERROR_FND>N</ns:_LEO_ERROR_FND>' -T text/xml -P '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://leoactive.wsbeans.iseries/xsd"><soapenv:Header/><soapenv:Body><xsd:leoactive><\!–Optional:–><xsd:param0><\!–Optional:–><xsd:_EXTRACTS><\!–Optional:–><xsd:_LEO_ERROR_FND></xsd:_LEO_ERROR_FND></xsd:_EXTRACTS></xsd:param0></xsd:leoactive></soapenv:Body></soapenv:Envelope>' -p 10010 -u http://10.6.157.5:10010/web/services/LEOACTIVEService/LEOACTIVE } ============================================= The URL : http://10.6.157.5:10010/web/services/LEOACTIVEService/LEOACTIVE?wsdl 请在这里请你的build议,因为我们无法找出错误。 提前致谢!! 普里亚

获取NRPE:从服务器运行时无法读取输出

我正在获取NRPE:尝试使用nagios连接到Docker容器时无法读取输出。 当我直接在客户端机器上运行这个脚本时,它成功地返回了mongo db中的行数。 但是,当我从服务器远程运行它时,我无法读取输出。 executing from nagios server /usr/lib64/nagios/plugins/check_nrpe -H hostipaddress -c check_mongocount NRPE: Unable to read output check_mongocount脚本基本上连接到docker集装箱,并计算某个date的特定客户的行数。 count=`sudo /bin/docker exec -it container mongo dbname –quiet -u "test" -p "test" –authenticationDatabase "test" –eval '(db.test.count( { $and: [{create_at: {$gte: NumberLong("1499227200"), $lt: NumberLong("1499313599")}},{customerid:1}]}))' /etc/nagios/nrpe.cfg添加了以下行。 command[check_mongocount]=sudo /usr/lib64/nagios/plugins/test.sh 我在我的/ etc / sudoers文件中有nrpe ALL=(ALL) NOPASSWD:ALL 。 尽pipenrpe拥有执行docker命令的所有权限,但是无法返回计数值。

如何configurationNagios发送短信警报与CDMA威瑞森android手机?

我试图找出是否可以使用我们的备用Verizon手机发送短信警报。 由于手机使用CDMA,我不能使用AT命令编写脚本在GSM电话上发送短信。 我已经在网上看了AT命令,用CDMA手机发送短信,但到目前为止没有运气。 任何信息将是最有帮助的。 在此先感谢,加里

Nagios / NRPE只能在一些节点上工作

我用bash写了一个自定义检查,并在4台不同的服务器上运行。 其中两个工作正常,另外两个在检查文件是否存在时失败: if [ ! -f $LOGFILE ] 通过“失败”我的意思是在这两个服务器脚本决定$LOGFILE不存在(这是错误的)。 所有四台服务器具有相同的configuration,权限等。该文件存在于所有服务器上。 手动运行时,没有错误。 当作为nagios或nrpe用户手动运行时,没有错误。 它只有在通过nagios通过check_nrpe -H … -c …远程运行时才会失败check_nrpe -H … -c … 我认为也许我的bash技能有点生疏,所以我重新写了Python的支票。 现在, 同样的两台服务器失败了 ,但是错误是 NRPE: Unable to read output 同样,所有服务器上的Python版本都是一样的 但是,我发现有错误的服务器会显示此消息: $ sudo grep nagios /var/log/messages Jul 19 11:09:15 app-a abrt: detected unhandled Python exception in '/usr/local/nagios/libexec/check_redirects' 正如我所说的,我已经检查了在nagiosconfiguration(在nagios主和客户端),在权限,在python版本的差异…一切似乎是一样的。 我发现很多关于在同一台服务器上工作/失败的检查问题。 这是完全相同的检查在一些服务器上工作,但不是其他人。 任何想法将不胜感激。 谢谢。

自动NRPE检查产生警告,但手动执行时工作

我使用Nagios监视多个主机。 当我使用在监视主机上执行的“正常”检查(比如check_http )时,这工作正常。 但是,我在使用基于NRPE的检查时遇到了麻烦,而检查是通过监视主机上的NRPE服务执行的。 我已经在受监控的主机的NRPEconfiguration中声明了我的自定义命令,例如 command[check_memory]=/usr/lib/nagios/plugins/check_memory -w 20% -c 10% -u G 然后,我在监控主机的Nagiosconfiguration中创build了相应的Nagios命令: define command { command_name my_check_nrpe command_line /usr/lib/nagios/plugins/check_nrpe -H '$HOSTALIAS$' -c '$ARG1$' } define service { use my-service service_description Free memory check_command my_check_nrpe!check_memory check_interval 15 } 当我在监视主机上使用nagios用户(运行nagios服务)手动运行它们时,这些检查工作正常: nagios@monitor:~$ /usr/lib/nagios/plugins/check_nrpe -H 'my.target.host' -c 'check_memory' MEMORY OK – 0G free | free=956080128b;419844915.2:;209922457.6: 不过,我不断收到Nagios发来的关于服务的电子邮件警告: ***** Nagios […]

在24小时内不需要对特定事件ID进行严格警报

我正在使用NSClient ++的CheckEventLog 0.5.0.62 2016-09-14 如何使用语法,如果特定的事件ID是不是在24小时内生成,我需要关键的警报,如果事件ID生成我需要状态OK。 我的语法: ./check_nrpe -H 192.168.63.1 -c check_eventlog -a "scan-range=-24h" "crit=count=<0" "filter=id=1" "ok=count>0" "warn=none" 输出: OK: No entries found 对于上面的语法,事件ID 1不是在24小时内生成的,所以我的状态已经变好了。 但我需要关键 请帮助我上面的语法。

使用Nsclient检查KMS服务计数时出错

我得到以下错误。 NSClient版本:0.5.0.65 2016-11-13 nsclient.ini: [/模块] CheckWMI =启用 句法: ./check_nrpe -H 10.122.33.96 -c check_wmi -a“query =从SoftwareLicensingService中select*”“critical = 15”“warning = 25”检查:KMSCurrentCount = KeyManagementServiceCurrentCount 输出: UNKNOWN无效的命令行:无法识别的选项“检查” NSClient版本:0.5.0.65 2016-11-13

修改check_snmp_int.pl Nagios XI命令的perfdata输出

我在Nagios XI上,我使用了Vmware .ova来完成安装 我使用下面的命令来检索通过路由器接口的实际带宽 /usr/local/nagios/libexec/check_snmp_int.pl -H xxxx -C community -2 -n eth -f -k -w 1000,1000 -c 1200,1200 eth0:UP (552.9KBps/CRIT 2507.9KBps), eth1:UP (CRIT 2466.9KBps/CRIT 8087.0KBps), eth2:UP (93.0KBps/619.8KBps):(3 UP): CRITICAL | 'eth0_in_octet'=3151058755c 'eth0_out_octet'=2254878312c 'eth1_in_octet'=626765302c 'eth1_out_octet'=634153554c 'eth2_in_octet'=1137408010c 'eth2_out_octet'=160432245c 该命令正在工作。 但perfdata使图烦人阅读: eth2_out_octet'=160432245c等… 所以我想这些值在MB / S 我试图使用-B -M -Y标志来调整这些值。 我可以以字节或者比特来得到结果,但是我不可能以mb / s为单位 做一个有经验的人之前,有一个解决scheme?

通过http代理或socks代理从一个icinga / nagios实例提交检查到另一个

我们正在运行icinga 1.11.6,并通过NSCA协议从我们的networking中的许多计算机接收更新。 由于客户的限制,我们必须在袜子和http代理之后build立一个networking,但是仍然希望在我们的中央icinga集线器上监控这个networking。 我们如何通过袜子或http代理从内部networking向外部发送支票?

Docker中的Nagios – NRPE isue的源IP SNAT

Nagios服务器在Docker容器中运行。 它正在通过在networking中的各种主机上运行的NRPE来进行主机检查。 docker主机是10.10.100.100 Iptables只允许来自10.10.100.100的tcp 5666入站,用于入站NRPE检查 来自Nagios的nrpe检查成功通过了防火墙。 这将certificate数据包源地址确实是10.10.100.100 NRPEconfiguration有: server_port=5666 allowed_hosts=10.10.100.100 在进行nrpe调用时,NRPE syslog指出: Oct 20 18:42:32 dockerz01 nrpe[13382]: Allowing connections from: 10.10.100.100 Oct 20 18:42:59 dockerz01 nrpe[13411]: Host 172.20.0.2 is not allowed to talk to us! 这意味着发送给NRPE的数据包将具有源地址172.20.0.2(这是Docker桥接networking内的Docker容器IP)。 如果是这样,它将如何通过防火墙? 这不太合理,我有点难过 当然,通过在NRPEconfigurationallowed_hosts=172.20.0.2中设置allowed_hosts=172.20.0.2可以解决这个问题,但这并不是allowed_hosts=172.20.0.2的,并不能真正解决这个问题。 Nagios是否发送它认为是NRPE数据包中的“源”IP,这就是NRPE判断“源”地址的来源? 如果是这样,那怎么能改变呢? 我在这里错过了什么? 我的目标是把Docker主机作为allowed_host,因为我知道这是静态的,不会改变。

Intereting Posts