Articles of Nagios

什么是devise监控系统的坚实过程?

短版本:我有一个使用Groundwork / Nagios进行监控的〜400个主机的异构环境。 当前的检查,主机组和服务组已经以有机的,专门的方式组合在一起。 我的任务是重build监视设置。 我以前的演出涉及less于20台机器,没有严格的正常工作时间要求,与Munin监控 – 这是我的经验。 我在基地寻找可以解决这个任务的过程 。 我对于为最终用户服务devise高级端到端检查有一个模糊的概念 – 例如试图login到我们的某个网站的刮板的东西 – 然后有一堆更具体的标准检查设置为相关检查 – 例如检查httpd是否正在运行,主机是否可以通过networking进入堆栈,只有在高级别检查失败时才会运行较低级别的检查,以便在发现根本原因的同时最大限度地减less系统应变。 我也一般在考虑把环境分开,这样团队只能在几个小时之后从生产环境中获取页面,就像那样。 这是理智的吗? 是否有devise监控系统的最佳实践方法? 我相信我有能力从我们目前不太理想的设备转移到更好的devise上,但是我想要一些关于如何devise理想设置的经验丰富的指导。

esxi nagios速度问题

我试图添加我的esxi服务器(我有3个)到我的nagios监控。 我使用的Perl SDK和脚本logging在互联网上的各个地方,最新的脚本在这里: http : //git.op5.org/git/?p=nagios/op5plugins.git;a=blob_plain;f = check_esx3.pl; HB = HEAD 我已经更新了我的两个esxi4盒4.1u1(4.1.0,348481) 我遇到的问题是检查速度很慢。 我使用DProf跟踪了perl命令 /usr/bin/perl -d:DProf /usr/lib/nagios/plugins/check_esxi -H HOSTNAME -u nagios -p PASSWORD -l cpu -s usage -w 85 -c 95 并得到以下输出(通过dproff) Total Elapsed Time = 6.634312 Seconds User+System Time = 5.154312 Seconds Exclusive Times %Time ExclSec CumulS #Calls sec/call Csec/c Name 44.1 2.276 4.339 […]

如何在nagios中执行像hdparm -t这样的磁盘性能testing?

通常的插件都是关于系统的已知统计数据,但是我们在使用hdparm -t的一些vmware实例上看到了非常奇怪的结果。 任何人都知道一个testing实际上做了一个磁盘写入/读取或nagios nfs挂载?

隐藏主机在Nagios

我想监视使用Nagios的几百台主机,但是我只想让交换结构显示在statusmap.cgi中。 有没有办法阻止主机在状态图中显示出来,但还是要监视它?

NRPE无法读取输出 – 尝试build议在文档中排除故障

我知道这是一个非常常见的错误,RTFM通常是正确的答案,但我想我已经涵盖了所有明显的观点。 NRPE作为用户nagios运行 当我使用sudo su – nagios成为nagios用户,并从/etc/nagios/nrpe.conf中复制并粘贴命令时,它可以正常工作,按预期生成输出。 当我打开debugging时,NRPE插件加载后没有logging(服务正在重新启动时logging条目)。 可以发生什么? 当然应该logging在debugging日志中? 有没有办法强制更详细的日志logging(在configuration文件中的build议不build议)。 SELinux不logging任何问题。 在一般情况下,脚本是非常正常的,除了一个例外,它使用sudopopup一个命令。 nagios用户已经被授予了无条件的访问命令的机会,并且它在我su给nagios用户时工作。 更新:在重新configurationsudo,所以它不坚持一个tty,我有我的检查工作成功通过SSH,返回预期的结果。 但是它仍然不会超过NRPE。

使用Nagios监控mysql数据库的数量

我想用Nagios监视MySQL数据库的数量。 我已经安装了官方的Nagios插件。 我正在使用'check_mysql_query': ./check_nrpe -H 192.168.1.10 -c check_mysql_query Nagios代理: command[check_mysql_query]=/usr/lib64/nagios/plugins/check_mysql_query -d mysql -q "select count(*) from information_schema.SCHEMATA where schema_name not in ('mysql','information_schema');" -w 100 -c 150 我不得不将客户端凭据添加到“my.cnf”文件。 问题: 有没有更好的/安全的解决scheme呢? 运行此命令所需的最低MySQL权限是多less? select count(*) from information_schema.SCHEMATA where schema_name not in ('mysql','information_schema');

Nagios通知升级

我已经正确configuration了Nagios,并且正在寻找一些通知来做一些(小小的)奇怪的事情。 我们想要做的是,前三个通知相隔5分钟,然后如果没有人回复,则相隔30分钟,接下来相隔60分钟。 我已经把所有这些都正常运行了。 我想要做的最后一部分是发生问题的地方。 我希望这些重复的通知不会在一夜之间(23:00到08:00之间)发送,但对于所有的新通知,都应该发送。 发生什么事情是因为第三次升级(60分钟的升级)直到23:00才正常工作,然后回到5分钟的等级,因为它在我设定的escalation_period之外。 我想我可以通过设置在“夜间”时间运行的另一个升级阶段来解决这个问题,但是这也不起作用。 这是我得到的configuration: define service{ use generic-service host_name mercury service_description ROB_TEST2 check_command check_pop contact_groups robonly } define serviceescalation{ host_name mercury service_description ROB_TEST2 first_notification 3 last_notification 5 notification_interval 30 contact_groups robonly } define serviceescalation{ host_name mercury service_description ROB_TEST2 first_notification 6 last_notification 9999 notification_interval 60 contact_groups robonly escalation_period daytime } define serviceescalation{ […]

Nagios – 是否可以在任何特定时刻通过使用命令来强制检查所有主机?

我在服务器上修复了许多在Nagios上显示错误的问题,但由于某些原因,即使问题得到解决,警报仍然存在。 所以我想知道,有没有办法强制检查所有主机?

自定义nagios命令,附加$ HOSTADDRESS $

我对nagios非常陌生,并试图得到一个自定义的命令来弯曲我的意志。 我已经查看了各种示例,并且找不到任何追加$ HOSTADDRESS $macros的任何人,所以也许我必须去讨论这个不同的路由,但是我需要的是将一个parameter passing给命令,如下所示: HOST_ADDRESS/StatusCheck?auth=secretKey 这是一个可用的例子(只有一个主机) define service { use generic-service hostgroup_name my-hostgroup service_description my custom check check_command check_custom_status!http://example.com/StatusCheck?auth=secretKey } 显然,这对我来说不起作用,因为它只检查一个主机(在这种情况下是example.com)。 这是一个不起作用的例子,但我希望它能做到,我可以切换语法有点让这个工作? define service { use generic-service hostgroup_name my-hostgroup service_description my custom check check_command check_custom_status!$HOSTADDRESS$/StatusCheck?auth=secretKey } (它不检查/StatusCheck页面)。 如何附加$ HOSTADDRESS $macros? 我希望有一个非常简单的解决办法,如果我忽略了一些非常简单的道歉。 命令定义 define command { command_name check_custom_status command_line $USER1$/check_custom_status.pl -U $ARG1$ } 我的Perl脚本需要一个单一的URL参数( -U […]

用于SNMP Raid监控的最小OpenManage Linux安装?

是否有可以在SNMP中提供的PowerEdge服务器上创buildRAID信息的最小安装,以便我可以使用Nagios进行监控? 我发现命令行实用程序,我可以使用check_by_ssh,但我相信我会需要setuid / sudo他们听起来太冒险了。 我也接受其他想法。