Icinga:max_attempts 与 max_check_attempts

Icinga:max_attempts 与 max_check_attempts

Icinga 或 Nagios 配置中的服务定义可以具有称为 max_attempts或 的参数max_check_attempts

文档描述max_attempts如下:

如果您已将服务定义的 max_attempts 选项配置为大于 1 的值,Icinga 将在确定存在实际问题之前重新检查服务。在重新检查服务时(最多 max_attempts 次),它被视为处于“软”状态(如此处所述),并且服务检查将按照 retry_interval 选项确定的频率重新安排。

如果 Icinga 重新检查服务 max_attempts 次并且它仍然处于非 OK 状态,Icinga 将把服务置于“硬”状态,向联系人发送通知(如果适用),并开始以 check_interval 选项确定的频率重新安排服务的未来检查。

max_check_attempts作为:

当服务首次从 OK 状态变为非 OK 状态时,Icinga 可让您暂时减慢或加快该服务后续检查的间隔。当服务首次改变状态时,Icinga 将执行最多 max_check_attempts-1 次服务检查重试,然后才会确定这是一个真正的问题。在重试服务时,它会根据 retry_interval 选项进行安排,这可能比正常的 check_interval 选项更快或更慢。在重新检查服务时(最多 max_check_attempts-1 次),服务处于软状态。如果重新检查服务 max_check_attempts-1 次,并且它仍然处于非 OK 状态,则服务将变为硬状态,随后按照 check_interval 选项指定的正常速率重新安排。

附带说明一下,如果您将 max_check_attempts 选项的值指定为 1,则服务将永远不会按照 retry_interval 选项指定的间隔进行检查。相反,它会立即变为硬状态,随后按照 check_interval 选项指定的速率重新安排。

在我看来,它们听起来是一样的。它们之间有什么区别?什么时候应该使用它们?

答案1

max_attempts 是服务和主机的旧定义,在 nagios Core 4 中不再使用。查看它以了解你的对象的可能定义: 对象定义

使用 Icinga2

# icinga2 -V
icinga2 - The Icinga 2 network monitoring daemon (version: r2.6.3-1)

服务中使用 max_attempts 会触发错误:

服务声明:

object Service "Intel(R) 82574L Gigabit Network Connection" {
  import "generic-service"
  host_name = "server"
  check_command = "check_netint"
  vars.interface = "Intel(R) 82574L Gigabit Network Connection"
  vars.warning= "650000"
  vars.critical ="800000"
  max_attempts=1
}

配置检查:

# service icinga2 checkconfig
[....] checking Icinga2 configuration
information/cli: Icinga application loader (version: r2.6.3-1)
information/cli: Loading configuration file(s).
information/ConfigItem: Committing config item(s).
critical/config: Error: Attribute 'max_attempts' does not exist.
Location: in /etc/icinga2/conf.d/1.conf: 32:3-32:16
/etc/icinga2/conf.d/1.conf(30):   vars.warning= "650000"
/etc/icinga2/conf.d/1.conf(31):   vars.critical ="800000"
/etc/icinga2/conf.d/1.conf(32):   max_attempts=1
                                   ^^^^^^^^^^^^^^
/etc/icinga2/conf.d/1.conf(33): }
/etc/icinga2/conf.d/1.conf(34): /*

critical/config: 1 error
[FAIL] checking Icinga2 configuration. Check '/var/log/icinga2/startup.log' for details. ... failed!

相关内容