得益于 Intel TCO 看门狗,我管理的一些服务器现在会在内核或硬件崩溃时重新启动,而且 init 脚本现在甚至是“重新启动安全的”。遗憾的是,这意味着当机器崩溃时,我不再收到来自 nagios 的通知,因为服务只是在检查触发足够多次以发送通知之前备份。
是否有一个可靠的脚本或 nagios 检查可以让我在机器在过去 48 小时内崩溃 3 次时收到通知?
答案1
写一个怎么样?一个简单的方法是uptime
在脚本中运行。一个稍微好一点的方法是添加一个将时间回显到旋转日志文件的启动脚本。获取文件中的最后三个条目,并检查自第一个条目以来经过的时间。
答案2
Nagios Exchange 上有许多“check_uptime”变体。这些变体允许您快速捕获重启,而无需将主机检查的 max_check_attempts 设置为 1 或 2(从而防止误报)。
这个例如,可以通过 NRPE 运行(使用uptime
),但也可以通过 SNMP 检查(Linux、Windows 等)。