Параметр health_check#
Группа параметров health_check предназначена для проверки работоспособности сервиса.
Название |
Обязательность |
Описание |
Возможные значения |
Значение по умолчанию |
|---|---|---|---|---|
|
Обязательный |
Вкл./Откл. модуля |
|
— |
|
Опциональный |
Интервал времени проверки запроса в ms |
Целочисленное значение |
|
|
Опциональный |
Интервал времени для запроса hc в ms, если пир не доступен (находится в состоянии down) |
Целочисленное значение |
— |
|
Опциональный |
Количество неудачных запросов на сервер для маркировки сервера „down“ |
Целочисленное значение |
|
|
Опциональный |
Количество удачных запросов на сервер для маркировки сервера „up“ |
Целочисленное значение |
|
|
Опциональный |
Количество неудачных запросов для маркировки сервера как „drain“ |
Целочисленное значение |
|
|
Опциональный |
Таймаут проверки запроса в ms |
Целочисленное значение |
|
|
Опциональный |
Состояние сервера по умолчанию |
|
|
|
Опциональный |
Порт, на который отправляется запрос для проверки состояния |
Целочисленное значение |
Значение параметра server из upstream_groups |
|
Опциональный |
Тип запроса проверки |
|
|
|
Опциональный |
HTTP метод запроса. Используется, если |
|
— |
|
Опциональный |
URL-адрес для проверки работоспособности сервиса |
Текстовое значение |
|
|
Опциональный |
HTTP версия запроса |
|
|
|
Опциональный |
Строки заголовков запросов |
Последовательность параметров и их значения |
— |
|
Опциональный |
Тело запроса. Используется, если |
Текстовое значение |
— |
|
Опциональный |
Запрос, который отправляется, когда тип проверки — fastcgi. Используется, если |
Текстовое значение |
— |
|
Опциональный |
Код возврата, который считается положительным |
Текстовое значение |
— |
|
Опциональный |
Размер общей памяти для проверки больших групп серверов |
Текстовое значение |
|
|
Опциональный |
Нечувствительный к регистру поиск в теле ответа. Используется, если |
Текстовое значение |
— |
|
Опциональный |
Нечувствительное к регистру регулярное выражение для поиска соответствия в теле ответа. Используется, если |
Текстовое значение |
— |
|
Опциональный |
Нечувствительный к регистру поиск в теле ответа, чтобы отметить сервер как „drain“. Используется, если |
Текстовое значение |
— |
|
Опциональный |
Нечувствительное к регистру регулярное выражение для поиска соответствия в теле ответа, чтобы отметить сервер как „drain“. Используется, если |
Текстовое значение |
— |
|
Опциональный |
Количество запросов, отправленных по соединению |
Целочисленное значение |
— |
|
Опциональный |
Тип возврата, который считается положительным |
|
— |
|
Опциональный |
Настройки ssl/tls соединения с upstream (backend). Параметры описаны в разделе Параметр upstream_ssl |
Группа параметров и их значения |
— |
Пример:
health_check:
enabled: true
check_interval: 3000
check_interval_down: 120000
fail_count: 3
rise_count: 1
drain: 1
timeout: 5000
default_state: up
type: http
check_status_type: json
check_response_body_pattern: '.*OK.*'
check_response_body_drain_pattern: '.*FULL.*'
http_status_alive: "http_2xx http_3xx"
http_send_method: POST
http_send_url: /health
http_send_version: 1.1
http_send_headers:
- 'Content-Type: application/json'
- 'Accept: application/json'
http_send_req: '{\"status\":\"healthy\"}'
port: {{ uko_web_upstream_v1_port }}
ssl_options:
ssl_use: true
ssl_protocols:
- 'TLSv1.2'
ssl_ciphers:
- value:
- "HIGH"
- prefix: "!"
value:
- "aNULL"
- value:
- "NULL-SHA256"
ssl_certificate: client_dev.cer
ssl_certificate_key: client_dev.key
ssl_verify: 'on'
ssl_name: 'example.ru'
ssl_trusted_certificate: ca_dev.cer
В результате будет отправлен следующий запрос на сервер:
POST /health HTTP/1.1
Content-Type: application/json
Accept: application/json
Host: 127.0.0.1
Content-Length: 20
Connection: close
{"status":"healthy"}