Nagios - 检查和状态

在 Nagios 上配置主机和服务后,将使用检查来查看主机和服务是否按预期工作。 让我们看一个在主机上执行检查的示例 −

假设您已将主机定义放在 /usr/local/nagios/etc/objects 目录中的 host1.cfg 文件中。

cd /usr/local/nagios/etc/objects
gedit host1.cfg

这是您的主机定义当前的样子 −

define host {
   host_name host1
   address 10.0.0.1
}

现在让我们添加 check_interval 指令。 该指令用于对您设置的数量的主机执行计划检查; 默认以分钟为单位。 使用下面的定义,主机检查将在每 3 分钟后执行一次。

define host {
   host_name host1
   address 10.0.0.1
   check_interval 3
}

在 Nagios 中,对主机和服务执行 2 种类型的检查 −

  • 主动检查
  • 被动检查

主动检查

主动检查由 Nagios 进程启动,然后定期运行。 Nagios 进程内的检查逻辑启动 Active 检查。 为了监控远程机器上运行的主机和服务,Nagios 执行插件并告知要收集哪些信息。 然后插件在远程机器上执行,收集所需的信息,然后发送回 Nagios 守护进程。 根据在主机和服务上收到的状态,采取适当的措施。

下图显示了主动检查 −

主动检查

这些是定期执行的,由 check_interval 和 retry_interval 定义。

被动检查由外部进程执行,结果返回给 Nagios 进行处理。

被动检查的工作方式如下所述 −

外部应用程序检查主机/服务的状态并将结果写入外部命令文件。 当 Nagios 守护进程读取外部命令文件时,它会读取并发送队列中的所有被动检查以供稍后处理。 定期处理这些检查时,会根据检查结果中的信息发送通知或警报。

下图为被动检查 −

被动检查

因此,主动检查和被动检查的区别在于,主动检查由 Nagios 运行,而被动检查由外部应用程序运行。

当您无法定期监控主机/服务时,这些检查很有用。

Nagios 存储它正在监视的主机和服务的状态,以确定它们是否正常工作。 在很多情况下,故障会随机发生并且是暂时的; 因此 Nagios 使用状态来检查主机或服务的当前状态。

有两种状态 −

  • 软状态
  • 硬状态

软状态

当主机或服务在很短的时间内停机并且其状态未知或与之前的状态不同时,将使用软状态。 主机或服务将被一次又一次地测试,直到状态永久。


困难状态

当执行 max_check_attempts 并且主机或服务的状态仍然不正常时,使用硬状态。 Nagios 执行事件处理程序来处理硬状态。

下图显示了软状态和硬状态。

软硬状态