Цель: Мне нужно контролировать облачную среду с множеством удаленных хостов.
Мой проблема: У меня есть БД с текущими низкоуровневыми деталями конфигурации и состояния хостов, созданная при первоначальном сканировании среды. Я хочу, чтобы данные в моей БД обновлялись при возникновении проблем, например, неисправности какого-либо сетевого интерфейса. Примечание: изменения в облачном окружении. setup перехватываются путем прослушивания очереди сообщений облачной среды и, таким образом, обрабатываются отдельно.
То, что я ищу: По причинам масштабируемости я хочу использовать пассивные проверки Nagios, т.е. заставить хосты отправлять обновления состояния, используя NSCA или NRDP, или что-нибудь еще, что заставит это работать. После получения результата проверки я хочу использовать обработчик событий для запуска сценария, который обновит мою базу данных конфигурации. Примечание: я предполагаю, что хосты имеют избыточность NIC, поэтому мне не нужно запускать активные проверки ping с сервера.
Я пытался понять, как это сделать, но я вижу только ссылки либо на пассивные проверки, либо на обработчики событий, использующие активные проверки. Как мне это сделать?
Вы можете заставить его работать, используя статическую конфигурацию для вашей службы.
Вот моя статическая конфигурация для выполнения моего скрипта Python для предупреждений о дисках.
define service {
host_name my host
service_description / Disk Usage
check_command check_nrpe!check_disk!-a '-w 20% -c 10% -p /'!!!!!!
event_handler my_command.py
initial_state o
max_check_attempts 5
check_interval 10
retry_interval 1
check_period 24x7
notification_period 24x7
notifications_enabled 1
register 1
}
Во-первых, вам нужно будет создать команду в Nagios CCM.
(В моем случае это my_command.py)
Определите имя команды и аргументы, которые должны передаваться с ней.
Вы можете хранить свой скрипт в / usr / local / nagios / libexec /, который в Nagios выглядит как $ USER1 $
.
Затем определите статическую конфигурацию в / usr / local / nagios / etc / static (которая может варьироваться в зависимости от вашей установки), как упомянуто выше.
Надеюсь, это поможет, и что еще не поздно ответить. ;)