Учебники

Nagios — Команды

Определение команды определяет команду. Команды включают проверки служб, уведомления служб, обработчики событий служб, проверки узлов, уведомления узлов и обработчики событий узлов. Определения команд для Nagios определены в файле commands.cfg.

Ниже приведен формат для определения команды:

define command {
   command_name command_name
   command_line command_line
}

Имя команды — эта директива используется для идентификации команды. На определения контакта, хоста и службы ссылается имя команды.

Командная строка — эта директива используется для определения того, что выполняется Nagios, когда команда используется для проверки службы или хоста, уведомлений или обработчиков событий.

пример

define command{
   command_name check_ssh
   command_line /usr/lib/nagios/plugins/check_ssh $HOSTADDRESS$
}

Эта команда выполнит плагин — / usr / libl / nagios / plugins / check_ssh с 1 параметром: ‘$ HOSTADDRESS $’

Очень короткое определение хоста, которое будет использовать эту команду проверки, может быть похоже на показанное здесь —

define host{
   host_name host_tutorial
   address 10.0.0.1
   check_command check_ssh
}

Определения команд рассказывают, как выполнять проверки хоста / службы. Также определяется, как генерировать уведомления, если обнаружена какая-либо проблема, и обрабатывать любое событие. Существует несколько команд для выполнения проверок, таких как команды для проверки правильности работы SSH, команда для проверки работоспособности базы данных, команда для проверки работоспособности хоста и многие другие.

Есть команды, которые сообщают пользователям, какие проблемы присутствуют в инфраструктуре. Вы можете создавать свои собственные пользовательские команды или использовать любые сторонние команды в Nagios, и они обрабатываются аналогично проекту плагинов Nagios, между ними нет различия.

Вы также можете передать аргументы в команду, это даст больше гибкости при выполнении проверок. Вот как вам нужно определить команду с параметром —

define command {
   command_name check-host-alive-limits
   command_line $USER5$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
}

Определение хоста для вышеуказанной команды —

define host {
   host_name system2
   address 10.0.15.1
   check_command check-host-alive-limits!1000.0,70%!5000.0,100%
}

Вы можете запускать внешние команды в Nagios, добавляя их в файл команд, который периодически обрабатывается демоном Nagios.

С внешними командами вы можете выполнить много проверок во время работы Nagios. Вы можете временно отключить несколько проверок или принудительно запустить некоторые проверки, временно отключить уведомления и т. Д. Ниже приведен синтаксис внешних команд в Nagios, которые должны быть записаны в командном файле:

[time] command_id;command_arguments

Вы также можете ознакомиться со списком всех внешних команд, которые можно использовать в Nagios здесь — https://assets.nagios.com/downloads/nagioscore/docs/externalcmds/