По умолчанию RELIANOID выполняет базовые проверки работоспособности серверных частей или реальных серверов, но этих проверок может быть недостаточно для обеспечения правильного функционирования серверных частей. Чтобы решить эту проблему, RELIANOID включает в себя услугу под названием Farmguardian который выполняет расширенные проверки работоспособности и управляет ими.
Farmguardian служит расширенным инструментом мониторинга внутренних серверов приложений. Он считывает конфигурации, получает список бэкэндов и использует плагины для проверки состояния работоспособности каждого бэкэнда. На основании этих проверок Farmguardian обновляет статус серверной части для каждой фермы, определяя, должен ли балансировщик нагрузки направлять трафик на этот сервер.
В этом разделе вы узнаете, как настроить Farmguardian проверяет, используя как глобальные настройки, так и настройки внутри Ферма.
Глобальные настройки #
В Глобальный раздел, это настройки для Farmguardian.
В Глобальный вкладка, поля недоступны для редактирования, если чеки предварительно загружены в систему. Чтобы изменить проверку работоспособности, создайте новую Farmguardian, включите Копировать Фермерский Страж вариант и измените новый.
Имя. Идентификационное имя текущей проверки Farmguardian, которое нельзя редактировать.
Command. Команда, выполняемая для проверки состояния серверов.
Истек. Максимальное время, в течение которого серверная часть отправит ответ (в секундах).
Интервал. Время между пакетами проверок работоспособности всех серверных частей. Этот интервал должен быть достаточно длинным, чтобы можно было проверить все серверные части (тайм-аут * количество серверных частей +1).
Описание. Краткое описание проверки Farmguardian.
Разрезать соединения. Если эта опция включена, текущие соединения с обнаруженными отключенными серверами сбрасываются, что приводит к немедленному переподключению к доступным серверам. Если этот параметр отключен, текущие соединения будут разорваны без отключения клиентов.
Включить журналы. Включает или отключает журналы для каждой проверки Farmguardian. Если журналы отключены, в файлах журналов отображаются только изменения состояния серверной части.
Псевдоним серверной части. Имя, которое легко идентифицирует интерфейс серверной части.
Настроить проверки работоспособности #
Все доступные плагины Farmguardian расположены в каталогах /usr/lib/nagios/плагины и /usr/local/relianoid/app/libexec/ на балансировщике нагрузки.
Farmguardian использует эти плагины для настройки расширенных проверок работоспособности, гарантируя правильную работу реальных серверов с использованием настраиваемых параметров. Существует множество проверок работоспособности различных протоколов, служб и приложений. Ниже приведены описания наиболее важных плагинов.
check_ftp. Этот плагин проверяет FTP-соединения с указанным хостом.
Использование: check_ftp -H хост -p порт [-w ] [-с ] [-с ] [-е ] [-q ][-м ] [-д ] [-т ] [-р ] [-М ] [-v] [-4|-6] [-j] [-D [, ]] [-С ] [-Э]
check_fping: Этот плагин использует команду fping для быстрой проверки связи с указанным хостом.
Использование: check_fping -w предел -c предел [-b размер] [-n номер] [-T номер] [-i номер]
check_http: этот плагин проверяет службу HTTP на указанном хосте. Он может обрабатывать как простые (HTTP), так и защищенные (HTTPS) протоколы, отслеживать перенаправления, искать определенные строки или регулярные выражения, проверять время соединения и сообщать о времени истечения срока действия сертификата, кодах возврата HTTP и многом другом.
Использование: check_http -H | -Я [-у ] [-п ] [-Дж ] [-К ] [-ш ] [-с ] [-т ] [-L] [-E] [-a аутентификация] [-b proxy_auth] [-f ] [-е ] [-d строка] [-s строка] [-l] [-r | -Р ] [-P строка] [-m : ] [-4|-6] [-N] [-M ] [-A строка] [-k строка] [-S ] [--сни] [-C [, ]] [-Т ] [-j метод]
check_imap: Этот плагин проверяет соединения IMAP с указанным хостом.
Использование: check_imap -H хост -p порт [-w ] [-с ] [-с ] [-е ] [-q ][-м ] [-д ] [-т ] [-р ] [-М ] [-v] [-4|-6] [-j] [-D [, ]] [-С ] [-Э]
check_ldap: этот плагин тестирует службы LDAP, используя указанный поисковый запрос.
Использование: check_ldap -H -б [-п ] [-а ] [-Д ] [-П ] [-ш ] [-с ] [-t тайм-аут] [-2|-3] [-4|-6]
check_ldaps: этот плагин тестирует службы LDAPS, используя указанный поисковый запрос.
Использование: check_ldaps -H -б [-п ] [-а ] [-Д ] [-П ] [-ш ] [-с ] [-t тайм-аут] [-2|-3] [-4|-6]
check_mysql: Этот плагин проверяет соединения с сервером MySQL.
Использование: check_mysql [-d база данных] [-H хост] [-P порт] [-s сокет] [-u пользователь] [-p пароль] [-S] [-l] [-a сертификат] [-k ключ ] [-C ca-cert] [-D ca-dir] [-L шифры] [-f файл_опции] [-g группа]
check_mysql_query: этот плагин оценивает результат запроса на соответствие указанным пороговым уровням.
Использование: check_mysql_query -q SQL_query [-w предупреждение] [-c крит] [-H хост] [-P порт] [-s сокет] [-d база данных] [-u пользователь] [-p пароль] [-f файл_опций ] [-g группа]
check_pgsql: этот плагин проверяет, принимает ли база данных PostgreSQL в данный момент соединения.
Использование: check_pgsql [-H ] [-П ] [-с ] [-ш ] [-т ] [-д ] [-л ] [-п ] [-q ] [-С ] [-W ]
check_pop: Этот плагин проверяет POP-соединения с указанным хостом.
Использование: check_pop -H хост -p порт [-w ] [-с ] [-с ] [-е ] [-q ][-м ] [-д ] [-т ] [-р ] [-М ] [-v] [-4|-6] [-j] [-D [, ]] [-С ] [-Э]
check_radius: этот плагин проверяет, принимает ли сервер RADIUS соединения.
Использование: check_radius -H хост -F файл_конфигурации -u имя пользователя -p пароль [-P порт] [-t таймаут] [-r повторы] [-e ожидать] [-n nas-id] [-N nas-ip-адрес ]
check_simap: Этот плагин проверяет безопасные соединения IMAP (SIMAP) с указанным хостом.
Использование: check_simap -H хост -p порт [-w ] [-с ] [-с ] [-е ] [-q ][-м ] [-д ] [-т ] [-р ] [-М ] [-v] [-4|-6] [-j] [-D [, ]] [-С ] [-Э]
check_smtp: Этот плагин проверяет SMTP-соединения с указанным хостом.
Использование: check_smtp -H хост [-p порт] [-4|-6] [-e ожидать] [-C команда] [-R ответ] [-f из адреса] [-A тип аутентификации -U авторизованный пользователь -P аутентификационный пароль] [-w предупреждение] [-c крит] [-t тайм-аут] [-q] [-F fqdn] [-S] [-D предупреждение дней истечения срока действия сертификата[,крит дней срок действия сертификата]] [-v]
check_snmp: этот плагин проверяет состояние удаленных компьютеров и получает системную информацию с помощью SNMP (простого протокола сетевого управления).
Использование: check_snmp -H -о [-w диапазон_предупреждения] [-c диапазон_критического_значения] [-C сообщество] [-s строка] [-r регулярное выражение] [-R регулярное выражение] [-t тайм-аут] [-e повторы] [-l метка] [-u единицы измерения] [-p номер порта] [-d разделитель] [-D выходной разделитель] [-m список устройств] [-P версия snmp] [-N контекст] [-L уровень безопасности] [-U имя_секции] [-a протокол аутентификации] [-A authpasswd] [-x privproto] [-X privpasswd] [-4|6]
check_spop: Этот плагин проверяет безопасные соединения POP (SPOP) с указанным хостом.
Использование: check_spop -H хост -p порт [-w ] [-с ] [-с ] [-е ] [-q ][-м ] [-д ] [-т ] [-р ] [-М ] [-v] [-4|-6] [-j] [-D [, ]] [-С ] [-Э]
check_ssh: Этот плагин пытается установить SSH-соединение с указанным сервером и портом.
Использование: check_ssh [-4|-6] [-t ] [-р ] [-п ]
check_ssmtp: Этот плагин проверяет соединения SSMTP с указанным хостом.
Использование: check_ssmtp -H хост -p порт [-w ] [-с ] [-с ] [-е ] [-q ][-м ] [-д ] [-т ] [-р ] [-М ] [-v] [-4|-6] [-j] [-D [, ]] [-С ] [-Э]
check_tcp: Этот плагин проверяет TCP-соединения с указанным хостом.
Использование: check_tcp -H хост -p порт [-w ] [-с ] [-с ] [-е ] [-q ][-м ] [-д ] [-т ] [-р ] [-М ] [-v] [-4|-6] [-j] [-D [, ]] [-С ] [-Э]
Для получения более подробной информации выполните следующую команду в каталоге плагинов:
имя_плагина --Помогите
Farmguardian использует эти плагины для мониторинга состояния работоспособности серверов и интерпретирует выходные данные плагина об ошибке выполнения следующим образом:
- Если вывод ошибки 0, серверная часть считается в порядке (статус выхода $? = 0).
- Если вывод ошибки не 0 (любое ненулевое значение), серверная часть считается НЕ ОК (статус выхода) $? <> 0).
Пользовательский плагин #
Эти плагины настраиваются и полностью программируются системными администраторами для адаптации к любому протоколу или приложению.
Вот пример пользовательского плагина с именем check_load.sh:
#!/bin/bash ### ###комментарии: ###snmp utils должны быть установлены ###snmpd должны быть установлены и настроены в серверной части ### MAXVALUE=4 COMMUNITY="public" EXECUTE=`snmpget - v 2c -c $COMMUNITY $1 .1.3.6.1.4.1.2021.10.1.3.1 |cut -d ':' -f2 | вырезать -d '.' -f1 | sed s/\ // | sed s/\"//` echo "Проверка загрузки процессора SNMP для $1 равна $EXECUTE" # Если результат верен, выходим с 1; ошибка; иначе выход = 0; OK if (( $EXECUTE >= $MAXVALUE )) ; then #вывод ошибки; сервер перегружен, и балансировщик нагрузки не будет отправлять больше соединений, выход 1 else #, not error, сервер может принять больше соединений, выход 0 fi.
Константы #
После появления Farmguardian запускает плагин, он может использовать константы или токены в качестве аргументов, например:
ВЕДУЩИЙ: Farmguardian автоматически заменит эту константу реальным IP-адресом сервера.
PORT: Farmguardian автоматически заменит эту константу реальным портом сервера.
Эти константы могут использоваться для каждого плагина, что позволяет Farmguardian для выполнения проверок работоспособности с правильными параметрами.
Фермы #
На этой вкладке вы найдете список ферм и служб, использующих эту технологию. Farmguardian проверка здоровья.
Фермы и службы могут быть назначены или удалены из этого Farmguardian проверка работоспособности с использованием нескольких вариантов выбора с помощью значков с одной стрелкой или двойных стрелок для включения или отключения всех ферм.

