Учебники

Nagios — Дополнения / Плагины

Плагины помогают контролировать базы данных, операционные системы, приложения, сетевое оборудование, протоколы с Nagios. Плагины — это скомпилированные исполняемые файлы или сценарии (Perl или не-Perl), которые расширяют функциональность Nagios для мониторинга серверов и хостов. Nagios запустит плагин для проверки статуса службы или хоста. Nagios может быть скомпилирован с поддержкой встроенного интерпретатора Perl для выполнения плагинов Perl. Без этого Nagios выполняет плагины Perl и не-Perl, разветвляясь и выполняя плагины как внешнюю команду.

Типы плагинов Nagios

В Nagios есть следующие плагины:

Официальные плагины Nagios — Есть 50 официальных плагинов Nagios. Официальные плагины Nagios разрабатываются и поддерживаются официальной командой плагинов Nagios.

Плагины сообщества. Существует более 3000 сторонних плагинов Nagios, разработанных сотнями членов сообщества Nagios.

Пользовательские плагины — Вы также можете написать свои собственные пользовательские плагины. Существуют определенные рекомендации, которые необходимо соблюдать при написании пользовательских плагинов.

Руководство по написанию пользовательских плагинов Nagios

При написании собственного плагина в Nagios вы должны следовать приведенным ниже рекомендациям —

  • Плагины должны предоставлять параметр командной строки «-V» (проверьте изменения конфигурации)
  • Распечатать только одну строку текста
  • Распечатать диагностическую и только часть справочного сообщения
  • Сетевые плагины используют DEFAULT_SOCKET_TIMEOUT для тайм-аута
  • «-v» или «—verbose» относится к уровню многословия
  • «-t» или «—timeout» (время ожидания плагина);
  • «-w» или «—warning» (порог предупреждения);
  • «-c» или «—critical» (критический порог);
  • «-H» или «—hostname» (имя хоста для проверки)

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

Код выхода Статус Описание
0 Хорошо Работает нормально
1 ПРЕДУПРЕЖДЕНИЕ Работает нормально, но требует внимания
2 КРИТИЧЕСКИЕ Не работает правильно
3 НЕИЗВЕСТНЫЙ Когда плагин не может определить статус хоста / сервиса

Плагины Nagios используют параметры для своей конфигурации. Ниже приведены несколько важных параметров, принятых плагином Nagios.

Sr.No Вариант и описание
1

-h, —help

Это обеспечивает помощь

2

-V, — версия

Это печатает точную версию плагина

3

-v, —verbose

Это заставляет плагин давать более подробную информацию о том, что он делает

4

-t, —timeout

Это обеспечивает время ожидания (в секундах); по истечении этого времени плагин сообщит о КРИТИЧЕСКОМ статусе

5

-w, — предупреждение

Это обеспечивает специфичные для плагина ограничения для статуса WARNING.

6

-с, —критический

Это обеспечивает специфичные для плагина ограничения для КРИТИЧЕСКОГО статуса

7

-H, —hostname

Это обеспечивает имя хоста, IP-адрес или сокет Unix для связи с

8

-4, —use-ipv4

Это позволяет вам использовать IPv4 для подключения к сети

9

-6, —use-ipv6

Это позволяет вам использовать IPv6 для подключения к сети

10

-p, —port

Используется для подключения к порту TCP или UDP.

11

-с, — отправить

Это обеспечивает строку, которая будет отправлена ​​на сервер

12

-e, —expect

Это обеспечивает строку, которая должна быть отправлена ​​обратно с сервера

13

-q, —quit

Это обеспечивает строку для отправки на сервер, чтобы закрыть соединение

-h, —help

Это обеспечивает помощь

-V, — версия

Это печатает точную версию плагина

-v, —verbose

Это заставляет плагин давать более подробную информацию о том, что он делает

-t, —timeout

Это обеспечивает время ожидания (в секундах); по истечении этого времени плагин сообщит о КРИТИЧЕСКОМ статусе

-w, — предупреждение

Это обеспечивает специфичные для плагина ограничения для статуса WARNING.

-с, —критический

Это обеспечивает специфичные для плагина ограничения для КРИТИЧЕСКОГО статуса

-H, —hostname

Это обеспечивает имя хоста, IP-адрес или сокет Unix для связи с

-4, —use-ipv4

Это позволяет вам использовать IPv4 для подключения к сети

-6, —use-ipv6

Это позволяет вам использовать IPv6 для подключения к сети

-p, —port

Используется для подключения к порту TCP или UDP.

-с, — отправить

Это обеспечивает строку, которая будет отправлена ​​на сервер

-e, —expect

Это обеспечивает строку, которая должна быть отправлена ​​обратно с сервера

-q, —quit

Это обеспечивает строку для отправки на сервер, чтобы закрыть соединение

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

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

define command {
   command_name check_smtp
   command_line $USER2$/check_smtp -H $HOSTADDRESS$
}

Давайте использовать плагин Nagios для мониторинга MySQL. Nagios предлагает 2 плагина для мониторинга MySQL. Первый плагин проверяет, работает ли соединение MySQL или нет, а второй плагин используется для расчета времени, необходимого для выполнения запроса SQL.

Определения команд для обоих следующие:

define command {
   command_name check_mysql
   command_line $USER1$/check_mysql –H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -d
   $ARG3$ -S –w 10 –c 30
}

define command {
   command_name check_mysql_query
   command_line $USER1$/check_mysql_query –H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -d
   $ARG3$ -q $ARG4$ –w $ARG5$ -c $ARG6$
}

Примечание. Имя пользователя, пароль и имя базы данных требуются в качестве аргументов в обеих командах.

Nagios предлагает плагин для проверки дискового пространства, смонтированного на всех разделах. Определение команды выглядит следующим образом

define command {
   command_name check_partition
   command_line $USER1$/check_disk –p $ARG1$ –w $ARG2$ -c $ARG3$
}

Большинство проверок можно выполнить с помощью стандартных плагинов Nagios. Но есть приложения, которые требуют специальных проверок для их мониторинга, и в этом случае вы можете использовать сторонние плагины Nagios, которые обеспечат более сложные проверки приложения. Важно знать о проблемах безопасности и лицензирования, когда вы используете сторонний плагин из Nagios exchange или загружаете плагин с другого веб-сайта.