У меня такая конфигурация:
define host {
name generic-host
[...]
check_command check-host-alive
[...]
register 0
}
чек-хост-жив - это проверка связи по умолчанию, которая сообщает о критической ситуации, когда происходит 100% потеря пакетов или время приема-передачи 5000 мс.
При определении хоста я использую это как шаблон. Теперь мне нужно отслеживать хост, который блокирует запросы ICMP / Echo, а Nagios постоянно сообщает мне, что он не в сети.
Хост определяется так:
define host {
host_name some.example.com
use generic-host
hostgroups my-servers
address 127.0.0.1
}
Поскольку в моей конфигурации несколько серверов, и все они должны быть проверены, живы ли они, мне нужно исключить этот единственный из чек-хост-жив чек. Есть ли способ сделать это?
PS: Системные администраторы, ответственные за отслеживаемый сервер, не будут разрешать запросы ICMP / Echo ни при каких обстоятельствах по неизвестным мне причинам.
Вы можете просто добавить альтернативный способ проверки живого хоста (например, SSH, HTTP или что-то еще, что имеет смысл в вашей среде), который отменяет определение в вашем шаблоне.
define host {
host_name some.example.com
use generic-host
hostgroups my-servers
address 127.0.0.1
check_command ssh-check
}
Конечно, вы должны определить ssh-check
чтобы это работало.
Видеть https://assets.nagios.com/downloads/nagioscore/docs/nagioscore/3/en/objectinheritance.html
Ты не можешь просто не есть проверка хоста, но вы можете использовать любой плагин в качестве проверки хоста.
В случаях, когда check_ping
или check_icmp
это не вариант, лучше всего использовать check_tcp
указал на открытый порт (нацельтесь на что-нибудь стабильное, например ssh, что является хорошим аналогом для "хост включен").
Если у вас действительно нет возможности проверить хост, всегда есть check_dummy
, но это испортит логику проверки / уведомления, что приведет к уведомлению для каждой службы на хосте, если / когда она выйдет из строя.
generic-host
- это ваш базовый шаблон, и если вы хотите изменить параметр унаследованных значений, вы можете перезаписать параметр своим собственным.
Вы должны иметь возможность установить "check_enabled 0" для этого хоста. Но рекомендация Свена об альтернативной команде check_command, вероятно, лучше.