|
|
_Resource_ функция **dynamix_lb_backend** служит для управления бекендом балансировщиком нагрузки (load balancer). Балансировщики нагрузки служат для равномерного распределения сетевой нагрузки между подключенными к ним сервисами.
|
|
|
|
|
|
## Аргументы
|
|
|
_Resource_ функция **dynamix_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_ функция **dynamix_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://repository.basistech.ru/BASIS/terraform-provider-dynamix/src/branch/main/wiki/1.2.0/07.01.17-Resource_dynamix_lb_backend.md#Описание-структуры-сервера) | Список серверов |
|
|
|
|
|
|
### Описание структуры настроек
|
|
|
| Параметр | Тип | Описание |
|
|
|
| --- | --- | --- |
|
|
|
| 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://repository.basistech.ru/BASIS/terraform-provider-dynamix/src/branch/main/wiki/1.2.0/07.01.17-Resource_dynamix_lb_backend.md#Описание-структуры-настроек) | Настройки сервера |
|
|
|
|
|
|
|
|
|
## Импортирование ресурса
|
|
|
Так как ресурс lb_backend является подресурсом lb, то для его импорта необходимо указать ID балансировщика, а так же само имя ресурса.
|
|
|
Общая схема:
|
|
|
```terraform
|
|
|
terraform import dynamix_lb_backend.<var> <lb_id>#<backend-name>
|
|
|
```
|
|
|
Пример:
|
|
|
```
|
|
|
terraform import dynamix_lb_backend.lb 777#testBackend
|
|
|
```
|
|
|
|
|
|
## Ограничение на наименование ресурса
|
|
|
Ресурс не должен содержать в названии символ `#`
|
|
|
|
|
|
## Пример использования
|
|
|
Пример вызова _resource_ функции **dynamix_lb_backend**:
|
|
|
```terraform
|
|
|
resource "dynamix_lb_backend" "lbb" {
|
|
|
#id балансировщика нагрузок
|
|
|
#обязательный параметр
|
|
|
#тип - целое число
|
|
|
lb_id = 668
|
|
|
|
|
|
#имя бекенда для создания сервера
|
|
|
#обязательный параметр
|
|
|
#тип - строка
|
|
|
name = "testBackend"
|
|
|
|
|
|
#алгоритм балансировки
|
|
|
#опциональный параметр
|
|
|
#доступные значения - "roundrobin", "static-rr", "leastconn"
|
|
|
#по умолчанию - "roundrobin"
|
|
|
#тип - строка
|
|
|
#algorithm = "roundrobin"
|
|
|
|
|
|
#-------------------
|
|
|
#настройки для серверов по умолчанию
|
|
|
#-------------------
|
|
|
|
|
|
#интервал между проверками, в миллисекундах
|
|
|
#опциональный параметр
|
|
|
#по умолчанию - 5000
|
|
|
#тип - целое число
|
|
|
#inter = 5000
|
|
|
|
|
|
#интервал между проверками доступности сервера после восстановления, в миллисекундах
|
|
|
#опциональный параметр
|
|
|
#по умолчанию - 10000
|
|
|
#тип - целое число
|
|
|
#downinter = 1000
|
|
|
|
|
|
#кол-во проверок, которые сервер должен успешно пройти
|
|
|
#опциональный параметр
|
|
|
#тип - целое число
|
|
|
#по умолчанию - 2
|
|
|
#rise = 2
|
|
|
|
|
|
#кол-во проверок, которые сервер может не пройти и после этого получить статус "unavailable"
|
|
|
#опциональный параметр
|
|
|
#по умолчанию - 2
|
|
|
#тип - целое число
|
|
|
#fall = 2
|
|
|
|
|
|
#кол-во миллисекунд - время между получением сервера статуса "available" и открытием соединений
|
|
|
#опциональный параметр
|
|
|
#по умолчанию - 60000
|
|
|
#тип - целое число
|
|
|
#slowstart = 60000
|
|
|
|
|
|
#максимальное кол-во соединений сервера, при достижении этого кол-ва, сервер выходит из схемы балансирования
|
|
|
#опциональный параметр
|
|
|
#по умолчанию - 250
|
|
|
#тип - целое число
|
|
|
#maxconn = 250
|
|
|
|
|
|
#максимальное кол-во соединений в очереди серевера, при достижении этого кол-ва, соединения будут перенаправлены на другой сервер
|
|
|
#опциональный параметр
|
|
|
#по умолчанию - 256
|
|
|
#тип - целое число
|
|
|
#maxqueue = 256
|
|
|
|
|
|
#вес сервера для балансировки
|
|
|
#опциональный параметр
|
|
|
#мин - 0
|
|
|
#макс - 255
|
|
|
#по умолчанию - 100
|
|
|
#тип - целое число
|
|
|
#weight = 100
|
|
|
}
|
|
|
```
|
|
|
|
|
|
После успешного завершения такого вызова **dynamix_lb_backend** в переменной `dynamix_lb_backend.lb` будут сохранены возвращаемые значения.
|