我们的例行维护需要服务必须被降低。 问题是这些服务有Nagios检查,我们要么去Web界面,并禁用检查或获取电子邮件。 有没有从Windows和/或Linux客户端命令行的方式来禁用Nagios检查(或通知),并启用它? 理想情况下,这将发生在我们正在执行维护的机器上,而不是Nagios服务器本身。 我想禁用通知/检查预维护,并重新启用后维护。
我正在为Nagios寻找一个简单的仪表盘,以便我们的IT团队可以查看我们的服务状态。 在黄金的旧版本中,根据服务的状态,这是一个不同长方形的红色,黄色或绿色的仪表板,可以很容易地显示在屏幕上。 是否有一些山寨的抄袭仪表板? 有更好的build议吗? 我想要从15米以外的桌子上看到的东西:红色或绿色,不需要任何细节。
我正在尝试使用NRPE插件configurationNagios命令来检查远程Windows主机上物理内存的状态。 我在Ubuntu Server v14.10上使用Nagios v3.0.6,以及最新的稳定版本的NSClient ++ 0.4.3。 这里是configuration文件的片段: define command { command_name check_ph_mem command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -p 5666 -c CheckMEM -a MaxWarn=$ARG1$% MaxCrit=$ARG2$% ShowAl$ } 和 define service{ host_name remote-win-host service_description Check Memory NRPE check_command check_ph_mem use generic-service } Nagios无法从这个命令中获取任何信息,因为当我执行 /usr/lib/nagios/plugins/check_nrpe -H 192.168.1.150 它会给出以下错误: CHECK_NRPE: Error – Could not complete SSL handshake. 我试过用以下方法重新configurationC:\Program Files\NSClient++\nsclient.ini […]
在云端操作和自动缩放框时,会遇到某些监控问题。 有时我们可能会监视10个盒子,有时候是100个。机器会根据需求进行放大和缩小。 现在,我认为最好的解决scheme是select一个监视解决scheme,通过调用API实例化目标。 但是,这真的是最好的? 我喜欢dynamic发现的想法,但这也是云中的一个问题,因为看到目标不在同一个子网中。 什么监视解决scheme允许这样的扩展环境? Zabbix目前有一个API草案,但我一直无法为Nagios资助一个类似的API。 Nagios是否有类似的API? 除了Nagios和Zabbix,任何人都有其他build议吗?
我希望Nagios在检测到主机停机或启动时执行Bash命令/脚本。 这将允许我在一定程度上反应下来的主机,这将是非常有趣的。 我将如何做到这一点?
我是新来的nagios和我的服务器是在一个networking,不允许服务器被ping通。 是否有可能检查服务器是否是另一种方式? 例如通过SSH或HTTP? 我如何做到这一点,所以我的nagios报告,它不会显示在线时,服务器脱机?
我正在使用以下服务来监视我们从Nagios的postgres数据库: define service{ use test-service ; Name of servi$ host_name DEMOCGN002 service_description Postgres State check_command check_nrpe!check_pgsql!192.168.1.135!test!test!test notifications_enabled 1 } 在远程机器上,我configuration了这个命令: command[check_pgsql]=/usr/lib/nagios/plugins/check_pgsql -H $ARG1$ -d $ARG2$ -l $ARG3$ -p $ARG4$ 在syslog中,我可以看到该命令被执行,但只有一个参数被传送: Oct 20 13:18:43 DEMOSRV01 nrpe[1033]: Running command: /usr/lib/nagios/plugins/check_pgsql -H 192.168.1.134 -d -l -p Oct 20 13:18:43 DEMOSRV01 nrpe[1033]: Command completed with return code 3 and […]
我已经把NRPE和Perl的头撞了好几个星期了。 我决定从绝对的第一原则开始,创build一个虚拟的nagios插件,它什么都不做,但总是返回OK。 我把它叫做check_true.pl,把它安装在远程服务器上,configurationNRPE作为check_test。 整个剧本只是: #!/usr/bin/perl print "OK – this dummy test always returns OK\n"; exit 0; 这对NRPE没有问题。 以此为出发点,我要慢慢build立我想要的脚本,看看它在什么地方断了。 我没有得到很远。 以下突破NRPE(但在本地和通过SSH正常工作): #!/usr/bin/perl use strict; print "OK – this dummy test always returns OK\n"; exit 0; 它给出了可怕的错误:NRPE:无法读取输出。 我不能包括任何或我得到这个错误。 这使得我无法做我真正需要做的! 我认为这可能是一个与perl包含path的问题,但通过NRPE运行以下显示它不是(当在terminal上运行时提供相同的包含path): #!/usr/bin/perl print "OK – Perl include path: ".join(q{, }, @INC)."\n"; exit 0; 有谁知道为什么NRPE与Perlperformance得如此糟糕? 任何人都可以推荐解决? 甚至是一个解决方法? 更新1:该命令在NRPE中定义如下: command[check_test]=/usr/lib64/nagios/plugins/check_true.pl […]
通常我的用户要求我负责了解事件是否发生。 我一直都必须用cron'ed shell脚本和大量的date边界案例testing来构build自定义和脆弱的解决scheme。 集中采伐应该允许有一个更好的,更易于维护的方法来掌握过去N小时内没有发生的事情。 像logstash注意和nagios警报。 更新 被推翻的回答非常有帮助。 O(Light。Bulb。)我现在有十几个批处理作业正在进行新鲜度检查。 我想彻底回答正义,并跟进我如何实现他的想法。 我configurationjenkins发出系统日志,logstash捕获它们并通过nsca发送状态更新给nagios。 我也使用check_mk保持一切干燥和组织在Nagios。 Logstashfilter :::ruby filter { if [type] == "syslog" { grok { match => [ "message", '%{SYSLOGBASE} job="%{DATA:job}"(?: repo="%{DATA:repo}")?$', "message", "%{SYSLOGLINE}" ] break_on_match => true } date { match => [ "timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ] } } } 神奇的是grok的匹配参数中的双模式,以及break_on_match => true。 […]
我知道我的手机提供商的短信网关,所以我可以发送一封电子邮件给它。 我正在寻找contacts.cfg和commands.cfg中特定于移动设备的条目示例。