From cf47ab3b445e987deb915a8bc2deb51a8034ffee Mon Sep 17 00:00:00 2001 From: stSolo Date: Wed, 21 Sep 2022 16:31:18 +0300 Subject: [PATCH] =?UTF-8?q?Created=2007.01.17=20Resource=20=D1=84=D1=83?= =?UTF-8?q?=D0=BD=D0=BA=D1=86=D0=B8=D1=8F=20decort=5Flb=5Fbackend=20=D1=83?= =?UTF-8?q?=D0=BF=D1=80=D0=B0=D0=B2=D0=BB=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B1?= =?UTF-8?q?=D0=B5=D0=BA=D0=B5=D0=BD=D0=B4=D0=BE=D0=BC=20=D0=B1=D0=B0=D0=BB?= =?UTF-8?q?=D0=B0=D0=BD=D1=81=D0=B8=D1=80=D0=BE=D0=B2=D1=89=D0=B8=D0=BA?= =?UTF-8?q?=D0=BE=D0=BC=20=D0=BD=D0=B0=D0=B3=D1=80=D1=83=D0=B7=D0=BA=D0=B8?= =?UTF-8?q?=20(markdown)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...d-управление-бекендом-балансировщиком-нагрузки.md | 96 +++++++++++++++++++ 1 file changed, 96 insertions(+) create mode 100644 07.01.17-Resource-функция-decort_lb_backend-управление-бекендом-балансировщиком-нагрузки.md diff --git a/07.01.17-Resource-функция-decort_lb_backend-управление-бекендом-балансировщиком-нагрузки.md b/07.01.17-Resource-функция-decort_lb_backend-управление-бекендом-балансировщиком-нагрузки.md new file mode 100644 index 0000000..177e21f --- /dev/null +++ b/07.01.17-Resource-функция-decort_lb_backend-управление-бекендом-балансировщиком-нагрузки.md @@ -0,0 +1,96 @@ +Функция доступна в провайдере версии 3.1 и выше. + +_Resource_ функция **decort_lb_backend** служит для управления бекендом балансировщиком нагрузки (load balancer). Балансировщики нагрузки служат для равномерного распределения сетевой нагрузки между подключенными к ним сервисами. + +## Аргументы +_Resource_ функция **decort_lb_backend** принимает следующие аргументы: + +| Аргумент | Тип | Обязательный | Описание | +| --- | --- | :---: | --- | +| lb_id | int | :heavy_check_mark: | ID балансировщика нагрузки | +| name | string | :heavy_check_mark: | Название бекенда | +| algorithm | string | :x: | Алгоритм работы бекенда. По умолчанию - "roundrobin". Доступные значения: "roundrobin", "static-rr", "leastconn" | +| inter | int | :x: | Интервал между проверками, в миллисекундах. Настройка севера по умолчанию. Значение по умолчанию - 5000. | +| downinter | int | :x: | Интервал между проверками доступности сервера после восстановления, в миллисекундах. Настройка севера по умолчанию. Значение по умолчанию - 1000. | +| rise | int | :x: | Кол-во проверок, которые сервер должен успешно пройти. Настройка севера по умолчанию. Значение по умолчанию - 2. | +| fall | int | :x: | Кол-во проверок, которые сервер может не пройти и после этого получить статус "unavailable". Настройка севера по умолчанию. Значение по умолчанию - 2. | +| slowstart | int | :x: | Кол-во миллисекунд - время между получением сервера статуса "available" и открытием соединений. Настройка севера по умолчанию. Значение по умолчанию - 60000. | +| maxconn | int | :x: | Максимальное кол-во соединений сервера, при достижении этого кол-ва, сервер выходит из схемы балансирования. Настройка севера по умолчанию. Значение по умолчанию - 250. | +| maxqueue | int | :x: | Максимальное кол-во соединений в очереди сервера, при достижении этого кол-ва, соединения будут перенаправлены на другой сервер. Настройка севера по умолчанию. Значение по умолчанию - 256. | +| weight | int | :x: | Вес сервера для балансировки. Диапазон от 0 до 255. Настройка севера по умолчанию. Значение по умолчанию - 100. | + +## Возвращаемые значения +В случае успешного выполнения _resource_ функция **decort_lb_backend** возвращает в указанную при вызове переменную элемент, который состоит из следующих параметров: + +| Параметр | Тип | Описание | +| --- | --- | --- | +| lb_id | int | ID балансировщика нагрузки | +| name | string | Название бекенда | +| algorithm | string | Алгоритм работы бекенда. По умолчанию - "roundrobin". Доступные значения: "roundrobin", "static-rr", "leastconn" | +| inter | int | Интервал между проверками, в миллисекундах. Настройка севера по умолчанию. Значение по умолчанию - 5000. | +| downinter | int | Интервал между проверками доступности сервера после восстановления, в миллисекундах. Настройка севера по умолчанию. Значение по умолчанию - 1000. | +| rise | int | Кол-во проверок, которые сервер должен успешно пройти. Настройка севера по умолчанию. Значение по умолчанию - 2. | +| fall | int | Кол-во проверок, которые сервер может не пройти и после этого получить статус "unavailable". Настройка севера по умолчанию. Значение по умолчанию - 2. | +| slowstart | int | Кол-во миллисекунд - время между получением сервера статуса "available" и открытием соединений. Настройка севера по умолчанию. Значение по умолчанию - 60000. | +| maxconn | int | Максимальное кол-во соединений сервера, при достижении этого кол-ва, сервер выходит из схемы балансирования. Настройка севера по умолчанию. Значение по умолчанию - 250. | +| maxqueue | int | Максимальное кол-во соединений в очереди сервера, при достижении этого кол-ва, соединения будут перенаправлены на другой сервер. Настройка севера по умолчанию. Значение по умолчанию - 256. | +| weight | int | Вес сервера для балансировки. Диапазон от 0 до 255. Настройка севера по умолчанию. Значение по умолчанию - 100. | +| servers | []Struct{} [см. ниже](https://github.com/rudecs/terraform-provider-decort/wiki/06.01.36-Data-функция-decort_lb-получение-информации-о-балансировщике-нагрузки#Описание-структуры-сервера) | Список серверов | + +### Описание структуры настроек +| Параметр | Тип | Описание | +| --- | --- | --- | +| downinter | int | Интервал между проверками на недоступность сервера | +| inter | int | Интервал между проверками на доступность сервера | +| rise | int | Кол-во попыток, после которых, сервер будет вновь включен в схему балансирования | +| fall | int | Кол-во неудачных попыток, после которых, сервер получит статус "unavailable" | +| slowstart | int | Интервал, в мс, в через который сервер получит статус "available" | +| maxconn | int | Кол-во соединений к северу, при достижении этого кол-ва, сервера выходит из схемы балансирования | +| maxqueue | int | Кол-во соедений в очереди к серверу | +| weight | int | Вес сервера для работы алгоритма балансирования по весу | + +### Описание структуры сервера +| Параметр | Тип | Описание | +| --- | --- | --- | +| address | string | Адрес сервера | +| check | string | Включены ли проверки | +| name | string | Имя сервера | +| port | int | Порт сервера | +| server_settings | [см. Описание структуры настроек](https://github.com/rudecs/terraform-provider-decort/wiki/06.01.36-Data-функция-decort_lb-получение-информации-о-балансировщике-нагрузки#Описание-структуры-настроек) | Настройки сервера | + + +## Импортирование ресурса +Так как ресурс lb_backend является подресурсом lb, то для его импорта необходимо указать ID балансировщика, а так же само имя ресурса. +Общая схема: +```terraform +terraform import decort_lb_backend. - +``` +Пример: +``` +terraform import decort_lb_backend.lb 777-testBackend +``` + +## Пример использования +Пример вызова _resource_ функции **decort_lb_backend**: +```terraform +resource "decort_lb_backend" "lbb" { + lb_id = 777 + name = "testBackend" + #algorithm = "roundrobin" + + #------------------- + #настройки для серверов по умолчанию + #------------------- + + #inter = 5000 + #downinter = 1000 + #rise = 2 + #fall = 2 + #slowstart = 60000 + #maxconn = 250 + #maxqueue = 256 + #weight = 100 +} +``` + +После успешного завершения такого вызова **decort_lb_backend** в переменной `decort_lb_backend.lb` будут сохранены возвращаемые значения. \ No newline at end of file