Nagios SNMP进程检查在陈旧的nfs mount上挂起

时间:2014-10-15 16:14:37

标签: perl snmp nagios nfs

我刚刚在工作中接受了这项任务,这是我的头脑。我们有一个nagios监控脚本,并运行流程检查。我们有一个最近遇到问题的NFS服务器,如果它发生故障,挂载它的所有机器都会因为NFS挂载挂起并挂起SNMP检查而无法进行流程检查。

check脚本是一个使用NET :: SNMP库的perl nagios脚本。我很确定它只是通用的nagios脚本。该脚本位于http://nagios.manubulon.com/check_snmp_process.pl

请帮助我了解发生了什么。

编辑:有问题的nfs挂载适用于需要挂载很难的oracle RMAN备份。

2 个答案:

答案 0 :(得分:2)

相当简单 - NFS旨在容忍服务器重启。挂载hard时,NFS调用挂载的文件系统将阻塞并等待服务器响应。这是为了确保没有数据丢失或流程被暂停 - 它们只是“停顿”。 - 这就是你遇到的问题。

nfs的挂载选项可以避免此问题 - 只需在挂载时指定soft(在fstab中,或在手动执行时-o soft)。

但要注意 - 访问NFS挂载时会出现错误。大多数事情都会容忍这种情况,但是编写糟糕的脚本或程序总是可能会失败。

答案 1 :(得分:0)

事实证明,有一个单独的检查监视磁盘使用情况。它阻止了snmpd进程,进而导致进程检查失败。