diff --git a/06.01.36-Data-функция-decort_lb-получение-информации-о-балансировщике-нагрузки.md b/06.01.36-Data-функция-decort_lb-получение-информации-о-балансировщике-нагрузки.md new file mode 100644 index 0000000..523e671 --- /dev/null +++ b/06.01.36-Data-функция-decort_lb-получение-информации-о-балансировщике-нагрузки.md @@ -0,0 +1,107 @@ +Функция доступна в провайдере версии 3.1 и выше. + +_Data source_ функция **decort_lb** служит для получения информации о балансировщике нагрузки (load balancer). Балансировщик нагрузки служит для равномерного распределения сетевой нагрузки на сервисы кубернетеса. + +## Аргументы +_Data source_ функция **decort_lb** принимает следующие аргументы: +| Аргумент | Тип | Обязательный | Описание | +| --- | --- | --- | --- | +| lb_id | int | :heavy_check_mark: | ID балансировщика | + + +## Возвращаемые значения +В случае успешного выполнения _data source_ функция **decort_lb** возвращает следующие параметры: + +| Параметр | Тип | Описание | +| --- | --- | --- | +| ha_mode | bool | Флаг, показывающий, включен ли режим haproxy | +| backends | []Struct{} [см. ниже](https://github.com/rudecs/terraform-provider-decort/wiki/_new#Описание-структуры-backend) | Список бекендов | +| created_by | string | Аккаунт, создавший балансировщик | +| created_time | int | Время создания | +| deleted_by | string | Кем балансировщик был удален | +| deleted_by | int | Время удаления | +| desc | string | Описание | +| dp_api_user | string | Имя пользователя для работы | +| extnet_id | int | ID внешней сети | +| frontends | []Struct{} [см. ниже](https://github.com/rudecs/terraform-provider-decort/wiki/_new#Описание-структуры-фронтенда) | Список фронтендов | +| gid | int | Grid ID балансировщика | +| guid | int | ID балансировщика | +| lb_id | int | ID балансировщика | +| image_id | int | ID образа | +| milestones | int | Вехи | +| name | string | Имя балансировщика | +| primary_node | Struct{} [см. описание узлов](https://github.com/rudecs/terraform-provider-decort/wiki/_new#Описание-структуры-узлов) | Главный узел | +| rg_id | int | ID ресурсной группы | +| rg_name | string | Имя ресурсной группы | +| secondary_node | Struct{} [см. описание узлов](https://github.com/rudecs/terraform-provider-decort/wiki/_new#Описание-структуры-узлов) | Второй узел | +| status | string | Статус | +| tech_status | string | Технический статус | +| updated_by | string | Кем балансировщик был обновлен | +| updated_time | string | Время последнего обновления | +| vins_id | int | ID виртуальной сети | + + +### Описание структуры backend +| Параметр | Тип | Описание | +| --- | --- | --- | +| algorithm | string | Алгоритм работы бекенда | +| name | string | Имя бекенда | +| server_default_settings | Struct{} [см. ниже](https://github.com/rudecs/terraform-provider-decort/wiki/_new#Описание-структуры-настроек) | Описание настроек серверов бекенда по умолчанию | +| servers | []Struct{} [см. ниже](https://github.com/rudecs/terraform-provider-decort/wiki/_new#Описание-структуры-сервера) | Список серверов | + +### Описание структуры настроек +| Параметр | Тип | Описание | +| --- | --- | --- | +| 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/_new#Описание-структуры-настроек) | Настройки сервера | + +### Описание структуры фронтенда +| Параметр | Тип | Описание | +| --- | --- | --- | +| backend | string | Имя бекенда, к которому подключен фронтенд | +| name | string | Имя фронтенда | +| bindings | []Struct{} [см. ниже](https://github.com/rudecs/terraform-provider-decort/wiki/_new#Описание-структуры-привязки-фронтенда) | Привязки фронтенда | + +### Описание структуры привязки фронтенда +| Параметр | Тип | Описание | +| --- | --- | --- | +| address | string | Адрес, к которому привязан фронтенд | +| name | string | Имя привязки | +| port | int | Порт привязки | + +### Описание структуры узлов +| Параметр | Тип | Описание | +| --- | --- | --- | +| backend_ip | string | IP адрес бекенда | +| compute_id | int | ID виртуальной машины | +| frontend_ip | string | IP адрес фронтенда | +| mgmt_ip | string | IP адрес | +| network_id | int | ID сети | + +## Пример использования +Пример вызова _data source_ функции **decort_lb**: +```terraform +data "decort_lb" "lb" { + #id балансировщика нагрузок + #обязательный параметр + #тип - число + lb_id = 238 +} +``` + +После успешного завершения такого вызова **decort_lb** в переменной `data.decort_lb.lb` будут сохранены возвращаемые значения. \ No newline at end of file