Проверки

Общие сведения о Проверках

Проверка – это набор правил для Проверки балансируемых (Реальных) Серверов. При создании Проверка не выполняется.

Выполнение Проверки представлено на рисунке (см. Выполнение Проверки).

image
Рисунок 1. Выполнение Проверки

Проверки являются методами тестирования и диагностики сетевых соединений и работоспособности сервисов. Termidesk Connect позволяет создать:

  • ICMP-Проверки, основанные на использовании протокола ICMP для определения состояния сетевого соединения. Такие Проверки выполняют отправку ICMP-запросов на узел, и на основании ответов определяют, доступен он или нет;

  • TCP-Проверки, основанные на использовании протокола TCP. Такие Проверки позволяют определить, доступен ли сервис на указанном порту;

  • HTTP-Проверки, основанные на использовании протокола HTTP. Такие Проверки выполняют отправку HTTP-запросов на узел, определяя доступность и работоспособность сервиса на основании ответов;

  • HTTPS-Проверки, основанные на использовании защищенного протокола HTTPS. Такие Проверки позволяют преобразовать данные для защиты информации. Защищенный протокол HTTPS использует шифрование SSL/TLS, что обеспечивает целостность данных;

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

  • Комбинированные Проверки, основанные на использовании нескольких Проверок с заданием их приоритетов (через логические выражения AND/OR). В такой Проверке могут быть заданы ранее созданные ICMP-Проверки, TCP-Проверки, HTTP-Проверки или Пользовательские Проверки.

Создание и настройка ICMP-Проверки

Создание и настройка ICMP-Проверок выполняется одним из способов:

  • из интерфейса командной строки Termidesk Connect;

  • из веб-интерфейса Termidesk Connect (см. подраздел Веб. Проверки).

Для создания и настройки ICMP-Проверки используются команды:

Описание параметров также приведено в подразделе Объект health-check.
  • создание Проверки:

set health-check id <имя>
  • назначение протокола для Проверки:

set health-check id <имя> ICMP
  • задание интервала (в секундах) Проверки (по умолчанию – 10):

set health-check id <имя> ICMP interval <значение>
  • задание времени ожидания ответа на запрос (в секундах) (по умолчанию – 5):

set health-check id <имя> ICMP timeout <значение>
  • задание количества повторных Проверок в случае отсутствия ответа (по умолчанию – 1):

set health-check id <имя> ICMP try <значение>
  • задание необходимого количества успешных Проверок после восстановления связности (по умолчанию – 1):

set health-check id <имя> ICMP success-try <значение>
  • указание VRF для Проверки (по умолчанию – default):

set health-check id <имя> ICMP vrf <имя_VRF>
  • указание IP-адреса источника (Termidesk Connect), с которого будет выполнена Проверка:

Указание отдельных IP-адресов для Проверок используется для логического разделения трафика:

  • для перенаправления пользовательских подключений к Реальным Серверам Termidesk Connect будет использовать один пул IP-адресов (IP-Фонд);

  • соответственно, для Проверок будут использоваться другие IP-адреса, указанные непосредственно в Проверках.

set health-check id <имя> ICMP source-ip <IP-адрес>
  • (опционально) указание IP-адреса назначения, если он отличается от IP-адреса, указанного в настройках Реального Сервера:

set health-check id <имя> ICMP target-ip <IP-адрес>
  • (опционально) включение или отключение отслеживания Проверки для готовности узла к переходу в состояние ACTIVE (по умолчанию – false):

Подробное описание условий переключения узлов отказоустойчивой конфигурации приведено в подразделе Отказоустойчивость.
set health-check id <имя> ICMP ha-monitor <true/false>
  • применение заданных настроек:

commit
  • сохранение настроек:

write
  • просмотр заданных настроек (указывается формат вывода – XML, JSON или TXT):

show configuration xml health-check id <имя>
  • просмотр выполненных команд:

show configuration cli health-check id <имя>

Пример конфигурации ICMP-Проверки:

set health-check id icmp-new
set health-check id icmp-new ICMP
set health-check id icmp-new ICMP interval 10
set health-check id icmp-new ICMP timeout 5
set health-check id icmp-new ICMP try 1
set health-check id icmp-new ICMP success-try 1
set health-check id icmp-new ICMP target-ip 192.0.2.10

Создание и настройка TCP-Проверки

Создание и настройка TCP-Проверок выполняется одним из способов:

  • из интерфейса командной строки Termidesk Connect;

  • из веб-интерфейса Termidesk Connect (см. подраздел Веб. Проверки).

Для создания и настройки TCP-Проверки используется следующий набор команд:

Описание параметров также приведено в подразделе Объект health-check.
  • создание Проверки:

set health-check id <имя>
  • назначение протокола для Проверки:

set health-check id <имя> TCP
  • задание интервала (в секундах) Проверки (по умолчанию – 10):

set health-check id <имя> TCP interval <значение>
  • задание времени (в секундах) ожидания ответа на запрос (по умолчанию – 5):

set health-check id <имя> TCP timeout <значение>
  • задание количества повторных Проверок в случае отсутствия ответа (по умолчанию – 1):

set health-check id <имя> TCP try <значение>
  • задание необходимого количества успешных Проверок после восстановления связности (по умолчанию – 1):

set health-check id <имя> TCP success-try <значение>
  • указание VRF для Проверки (по умолчанию – default):

set health-check id <имя> TCP vrf <имя_VRF>
  • (опционально) указание IP-адреса источника (Termidesk Connect), с которого будет выполнена Проверка:

set health-check id <имя> TCP source-ip <IP-адрес>
  • (опционально) указание IP-адреса назначения, если он отличается от IP-адреса, указанного в настройках Реального Сервера:

set health-check id <имя> TCP target-ip <IP-адрес>
  • (опционально) порт назначения Проверки (по умолчанию используется порт Реального Сервера из Группы Реальных Серверов):

set health-check id <имя> TCP target-port <порт>
  • (опционально) включение или отключение отслеживания Проверки для готовности узла к переходу в состояние ACTIVE (по умолчанию – false):

Подробное описание условий переключения узлов отказоустойчивой конфигурации приведено в подразделе Отказоустойчивость.
set health-check id <имя> TCP ha-monitor <true/false>
  • применение заданных настроек:

commit
  • сохранение настроек:

write
  • просмотр заданных настроек (указывается формат вывода – XML, JSON или TXT):

show configuration xml health-check id <имя>
  • просмотр выполненных команд:

show configuration cli health-check id <имя>

Пример конфигурации TCP-Проверки:

set health-check id tcp-new
set health-check id tcp-new TCP
set health-check id tcp-new TCP interval 10
set health-check id tcp-new TCP timeout 5
set health-check id tcp-new TCP try 1
set health-check id tcp-new TCP success-try 1
set health-check id tcp-new TCP target-port 88

Создание и настройка HTTP-Проверки

Создание и настройка HTTP-Проверок выполняется одним из способов:

  • из интерфейса командной строки Termidesk Connect;

  • из веб-интерфейса Termidesk Connect (см. подраздел Веб. Проверки).

Для создания и настройки HTTP-Проверки используются команды:

Описание параметров также приведено в подразделе Объект health-check.
  • создание Проверки:

set health-check id <имя>
  • назначение протокола для Проверки:

set health-check id <имя> HTTP
  • задание интервала (в секундах) Проверки (по умолчанию – 10):

set health-check id <имя> HTTP interval <значение>
  • задание времени (в секундах) ожидания ответа на запрос (по умолчанию – 5):

set health-check id <имя> HTTP timeout <значение>
  • задание количества повторных Проверок в случае отсутствия ответа (по умолчанию – 1):

set health-check id <имя> HTTP try <значение>
  • задание необходимого количества успешных Проверок после восстановления связности (по умолчанию – 1):

set health-check id <имя> HTTP success-try <значение>
  • указание VRF для Проверки (по умолчанию – default):

set health-check id <имя> HTTP vrf <имя_VRF>
  • (опционально) указание IP-адреса источника (Termidesk Connect), с которого будет выполнена Проверка:

set health-check id <имя> HTTP source-ip <IP-адрес>
  • (опционально) указание IP-адреса назначения, если он отличается от IP-адреса, указанного в настройках Реального Сервера:

set health-check id <имя> HTTP target-ip <IP-адрес>
  • (опционально) порт назначения Проверки (по умолчанию используется порт Реального Сервера из Группы Реальных Серверов):

set health-check id <имя> HTTP target-port <порт>
  • указание метода запроса, по которому выполняется Проверка (по умолчанию – HEAD):

Возможные значения:

  • GET– запрос с получением тела ответа;

  • HEAD– запрос с получением заголовка ответа;

  • POST– отправка данных с телом запроса.

set health-check id <имя> HTTP method <метод_запроса>
  • указание пути, по которому выполняется Проверка (по умолчанию – /):

set health-check id <имя> HTTP uri <URI_сервиса>
  • указание ожидаемых кодов ответов (по умолчанию – 200):

set health-check id <имя> HTTP status-codes <коды_ответов>
  • (опционально) указание строки в ответе, по которой выполняется Проверка:

set health-check id <имя> HTTP response-string <строка_ответа>
  • (опционально) указание заголовка, по которому выполняется Проверка:

set health-check id <имя> HTTP headers <заголовок>:<значение>
  • (опционально) указание кодов ответов для перевода Реального Сервера в режим технического обслуживания:

set health-check id <имя> HTTP maintenance-codes <коды_ответов>
  • (опционально) инверсия результата Проверки (по умолчанию – false):

set health-check id <имя> HTTP reverse true
  • (опционально) включение или отключение отслеживания Проверки для готовности узла к переходу в состояние ACTIVE (по умолчанию – false):

Подробное описание условий переключения узлов отказоустойчивой конфигурации приведено в подразделе Отказоустойчивость.
set health-check id <имя> HTTP ha-monitor <true/false>
  • применение заданных настроек:

commit
  • сохранение настроек:

write
  • просмотр заданных настроек (указывается формат вывода – XML, JSON или TXT):

show configuration xml health-check id <имя>
  • просмотр выполненных команд:

show configuration cli health-check id <имя>

Пример конфигурации HTTP-Проверки:

set health-check id http_hc
set health-check id http_hc HTTP
set health-check id http_hc HTTP interval 10
set health-check id http_hc HTTP timeout 5
set health-check id http_hc HTTP try 1
set health-check id http_hc HTTP success-try 1
set health-check id http_hc HTTP source-ip 192.0.2.1
set health-check id http_hc HTTP method POST
set health-check id http_hc HTTP uri /
set health-check id http_hc HTTP status-codes 200
set health-check id http_hc HTTP status-codes 202
set health-check id http_hc HTTP response-string
set health-check id http_hc HTTP headers Host:123
set health-check id http_hc HTTP reverse false

Создание и настройка HTTPS-Проверки

Создание и настройка HTTPS-Проверок выполняется одним из способов:

  • из интерфейса командной строки Termidesk Connect;

  • из веб-интерфейса Termidesk Connect (см. подраздел Веб. Проверки).

Для создания и настройки HTTPS-Проверки используются команды:

Описание параметров также приведено в подразделе Объект health-check.
  • создание Проверки:

set health-check id <имя>
  • назначение протокола для Проверки:

set health-check id <имя> HTTP
  • задание интервала (в секундах) Проверки (по умолчанию – 10):

set health-check id <имя> HTTP interval <значение>
  • задание времени (в секундах) ожидания ответа на запрос (по умолчанию – 5):

set health-check id <имя> HTTP timeout <значение>
  • задание количества повторных Проверок в случае отсутствия ответа (по умолчанию – 1):

set health-check id <имя> HTTP try <значение>
  • задание необходимого количества успешных Проверок после восстановления связности (по умолчанию – 1):

set health-check id <имя> HTTP success-try <значение>
  • указание VRF для Проверки (по умолчанию – default):

set health-check id <имя> HTTP vrf <имя_VRF>
  • (опционально) указание IP-адреса источника (Termidesk Connect), с которого будет выполнена Проверка:

set health-check id <имя> HTTP source-ip <IP-адрес>
  • (опционально) указание IP-адреса назначения, если он отличается от IP-адреса, указанного в настройках Реального Сервера:

set health-check id <имя> HTTP target-ip <IP-адрес>
  • (опционально) порт назначения Проверки (по умолчанию используется порт Реального Сервера из Группы Реальных Серверов):

set health-check id <имя> HTTP target-port <порт>
  • указание метода запроса, по которому выполняется Проверка (по умолчанию – HEAD):

Возможные значения:

  • GET– запрос с получением тела ответа;

  • HEAD– запрос с получением заголовка ответа;

  • POST– отправка данных с телом запроса.

set health-check id <имя> HTTP method <метод_запроса>
  • указание пути, по которому выполняется Проверка (по умолчанию – /):

set health-check id <имя> HTTP uri <URI_сервиса>
  • указание ожидаемых кодов ответов (по умолчанию – 200, может быть задано несколько):

set health-check id <имя> HTTP status-codes <коды_ответов>
  • (опционально) указание строки в ответе, по которой выполняется Проверка:

set health-check id <имя> HTTP response-string <строка_ответа>
  • (опционально) указание заголовка, по которому выполняется Проверка:

set health-check id <имя> HTTP headers <заголовок>:<значение>
  • (опционально) указание кодов ответов для перевода Реального Сервера в режим технического обслуживания:

set health-check id <имя> HTTP maintenance-codes <коды_ответов>
  • (опционально) инверсия результата Проверки:

set health-check id <имя> HTTP reverse true
  • указание Профиля защищенного соединения, используемого при выполнении Проверки:

Для настройки Профиля защищенного соединения HTTPS-Проверки подходит только Клиентский SSL-Профиль.
set health-check id <имя> HTTP ssl-profile-id <имя_Профиля>
  • (опционально) включение или отключение отслеживания Проверки для готовности узла к переходу в состояние ACTIVE (по умолчанию – false):

Подробное описание условий переключения узлов отказоустойчивой конфигурации приведено в подразделе Отказоустойчивость.
set health-check id <имя> HTTP ha-monitor <true/false>
  • применение заданных настроек:

commit
  • сохранение настроек:

write
  • просмотр заданных настроек (указывается формат вывода – XML, JSON или TXT):

show configuration xml health-check id <имя>
  • просмотр выполненных команд:

show configuration cli health-check id <имя>

Пример конфигурации HTTPS-Проверки:

set health-check id https_hc
set health-check id https_hc HTTP
set health-check id https_hc HTTP interval 10
set health-check id https_hc HTTP timeout 5
set health-check id https_hc HTTP try 1
set health-check id https_hc HTTP success-try 1
set health-check id https_hc HTTP source-ip 192.0.2.1
set health-check id https_hc HTTP method POST
set health-check id https_hc HTTP uri /
set health-check id https_hc HTTP status-codes 200
set health-check id https_hc HTTP status-codes 202
set health-check id https_hc HTTP response-string
set health-check id https_hc HTTP headers Host:123
set health-check id https_hc HTTP reverse false
set health-check id https_hc HTTP ssl-profile-id client_default

Создание и настройка Пользовательской Проверки

Создание и настройка Пользовательской Проверки выполняется одним из способов:

  • из интерфейса командной строки Termidesk Connect;

  • из веб-интерфейса Termidesk Connect (см. подраздел Веб. Проверки).

Для создания и настройки Пользовательской Проверки используется следующий набор команд:

Описание параметров также приведено в подразделе Объект health-check.
  • создание Проверки:

set health-check id <имя>
  • задание типа Проверки:

set health-check id <имя> USER
  • задание интервала (в секундах) Проверки (по умолчанию – 10):

set health-check id <имя> USER interval <значение>
  • задание времени (в секундах) ожидания ответа на запрос (по умолчанию – 5):

set health-check id <имя> USER timeout <значение>
  • задание количества повторных Проверок в случае отсутствия ответа (по умолчанию – 1):

set health-check id <имя> USER try <значение>
  • задание необходимого количества успешных Проверок после восстановления связности (по умолчанию – 1):

set health-check id <имя> USER success-try <значение>
  • указание VRF для Проверки (по умолчанию – default):

set health-check id <имя> USER vrf <имя_VRF>
  • (опционально) указание IP-адреса источника (Termidesk Connect), с которого будет выполнена Проверка:

set health-check id <имя> USER source-ip <IP-адрес>
  • (опционально) указание IP-адреса назначения, если он отличается от IP-адреса, указанного в настройках Реального Сервера:

set health-check id <имя> USER target-ip <IP-адрес>
  • (опционально) порт назначения Проверки (по умолчанию используется порт Реального Сервера из Группы Реальных Серверов):

set health-check id <имя> USER target-port <порт>
  • указание имени файла скрипта, согласно которому будет выполнена Проверка:

set health-check id <имя> USER script <имя_файла_скрипта>
  • (опционально) включение или отключение отслеживания Проверки для готовности узла к переходу в состояние ACTIVE (по умолчанию – false):

Подробное описание условий переключения узлов отказоустойчивой конфигурации приведено в подразделе Отказоустойчивость.
set health-check id <имя> USER ha-monitor <true/false>
  • применение заданных настроек:

commit
  • сохранение настроек:

write
  • просмотр заданных настроек (указывается формат вывода – XML, JSON или TXT):

 show configuration xml health-check id <имя>
  • просмотр выполненных команд:

show configuration cli health-check id <имя>

Примеры конфигураций Пользовательских Проверок с различными скриптами представлены в таблице (см. таблицу Примеры конфигураций для Пользовательских Проверок).

Таблица 1. Примеры конфигураций для Пользовательских Проверок
Формат скрипта Конфигурация

py

Синтаксис python. Пример:

set health-check id user01
set health-check id user01 USER
set health-check id user01 USER interval 7
set health-check id user01 USER timeout 5
set health-check id user01 USER try 2
set health-check id user01 USER success-try 2
set health-check id user01 USER script httptcp.py

sh

Синтаксис bash. Пример:

set health-check id user02
set health-check id user02 USER
set health-check id user02 USER interval 5
set health-check id user02 USER timeout 2
set health-check id user02 USER try 2
set health-check id user02 USER success-try 2
set health-check id user02 USER target-ip 192.0.2.10
set health-check id user02 USER script httptcp.sh

Создание и настройка Комбинированной Проверки

Создание и настройка Комбинированных Проверок выполняется одним из способов:

  • из интерфейса командной строки Termidesk Connect;

  • из веб-интерфейса Termidesk Connect (см. подраздел Веб. Проверки).

Для создания и настройки Комбинированной Проверки используются команды:

Описание параметров также приведено в подразделе Объект health-check.
  • создание Проверки:

set health-check id <имя>
  • назначение типа Проверки:

set health-check id <имя> COMBO
  • добавление базовой Проверки:

    Могут быть добавлены ранее созданные ICMP-Проверки, TCP-Проверки, HTTP-Проверки или Пользовательские Проверки.
    • назначение идентификатора базовой Проверки:

      set health-check id <имя> COMBO hc-ids <id-Проверки>
    • назначение Веса базовой Проверки (от 1 до 255):

      Вес базовой Проверки указывает какой вклад вносит привязанная базовая Проверка в определение состояния Комбинированной Проверки. Вес базовой Проверки — параметр, определяющий насколько состояние базовой Проверки влияет на оценку состояния Реального Сервера (ONLINE или OFFLINE).
set health-check id <имя> COMBO hc-ids <id-Проверки> weight <вес_базовой_Проверки>
  • задание значения общего Веса Проверки:

    Общий Вес Проверки — пороговое значение успеха для суммы Весов базовых Проверок. Если к Комбинированной Проверке привязано несколько базовых Проверок, их Вес сравнивается с общим Весом, указанным в настройках Комбинированной Проверки. Реальный Сервер считается ONLINE, если сумма Весов всех успешных базовых Проверок равна или превышает значение общего Веса Комбинированной Проверки.
set health-check id <имя> COMBO threshold <общий_вес>
  • применение заданных настроек:

commit
  • сохранение настроек:

write
  • просмотр заданных настроек (указывается формат вывода – XML, JSON или TXT):

show configuration xml health-check id <имя>
  • просмотр выполненных команд:

show configuration cli health-check id <имя>