_Resource_ функция **dynamix_lb_backend_server** служит для управления сервером бекенда балансировщиком нагрузки (load balancer). Балансировщики нагрузки служат для равномерного распределения сетевой нагрузки между подключенными к ним сервисами. 

## Аргументы
_Resource_ функция **dynamix_lb_backend_server** принимает следующие аргументы:

| Аргумент | Тип | Обязательный | Описание |
| --- | --- | :---: | --- |
| lb_id | int | :heavy_check_mark: | ID балансировщика нагрузки |
| backend_name | string | :heavy_check_mark: | Название бекенда |
| name | string | :heavy_check_mark: | Название сервера |
| address | string | :heavy_check_mark: | Адрес сервера |
| port | int | :heavy_check_mark: | Порт сервера |
| check | string | :x: | Проверка доступности сервера. По умолчанию - "enabled". Доступные значения: "disabled", "enabled" |
| 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_server** возвращает в указанную при вызове переменную элемент, который состоит из следующих параметров:

| Параметр | Тип | Описание |
| --- | --- | --- |
| lb_id | int | ID балансировщика нагрузки |
| backend_name | string | Название бекенда |
| name | string | Название сервера |
| address | string | Адрес сервера |
| port | int | Порт сервера |
| check | string | Проверка доступности сервера. По умолчанию - "enabled". Доступные значения: "disabled", "enabled" |
| 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. |


## Импортирование ресурса
Так как ресурс lb_backend_server является подресурсом lb_backend, то для его импорта необходимо указать ID балансировщика, имя бекенда, а так же само имя ресурса.  
Общая схема:
```terraform
terraform import dynamix_lb_backend_server.<var> <lb_id>#<backend-name>#<server-name>
```
Пример:
```
terraform import dynamix_lb_backend_server.lbbs 777#testBackend#testServer
```
## Ограничение на наименование ресурса
Ресурс не должен содержать в названии символ `#`


## Пример использования
Пример вызова _resource_ функции **dynamix_lb_backend_server**:
```terraform
resource "dynamix_lb_backend_server" "lbbs" {
  #id балансировщика нагрузок
  #обязательный параметр
  #тип - целое число
  #используется при создании
  lb_id = 668

  #имя бекенда для создания сервера
  #обязательный параметр
  #тип - строка
  #используется при создании
  backend_name = "testBackend"

  #имя сервера
  #обязательный параметр
  #тип - строка
  #используется при создании и обновлении
  name = "testServer"

  #ip адрес сервера
  #обязательный параметр
  #тип - строка
  #используется при создании и обновлении
  address = "192.168.5.33"

  #порт сервера
  #обязательный параметр
  #тип - целое число
  #используется при создании и обновлении
  port = 6553

  #проверка доступности сервера
  #опциональный параметр
  #по умолчанию - "enabled"
  #доступные значения - "disabled", "enabled"
  #тип - строка
  #используется при создании и обновлении
  #check = "enabled"

  #интервал между проверками, в миллисекундах
  #опциональный параметр
  #по умолчанию - 5000
  #тип - целое число
  #используется при создании и обновлении
  #inter = 5000

  #интервал между проверками доступности сервера после восстановления, в миллисекундах
  #опциональный параметр
  #по умолчанию - 1000
  #тип - целое число
  #используется при создании и обновлении
  #downinter = 1000

  #кол-во проверок, которые сервер должен успешно пройти
  #опциональный параметр
  #тип - целое число
  #по умолчанию - 2
  #используется при создании и обновлении
  #rise = 2

  #кол-во проверок, которые сервер может не пройти и после этого получить статус "unavailable"
  #опциональный параметр
  #по умолчанию - 2
  #тип - целое число
  #используется при создании и обновлении
  #fall = 2

  #кол-во миллисекунд - время между получением сервера статуса "available" и открытием соединений
  #опциональный параметр
  #по умолчанию - 60000
  #тип - целое число
  #используется при создании и обновлении
  #slowstart = 60000

  #максимальное кол-во соединений сервера, при достижении этого кол-ва, сервер выходит из схемы балансирования
  #опциональный параметр
  #по умолчанию - 250
  #тип - целое число
  #используется при создании и обновлении
  #maxconn = 250

  #максимальное кол-во соединений в очереди сервера, при достижении этого кол-ва, соединения будут перенаправлены на другой сервер
  #опциональный параметр
  #по умолчанию - 256
  #тип - целое число
  #используется при создании и обновлении
  #maxqueue = 256

  #вес сервера для балансировки
  #опциональный параметр
  #мин - 0
  #макс - 255
  #по умолчанию - 100
  #тип - целое число
  #используется при создании и обновлении
  #weight = 100

  timeouts {
    create = "5m"
    read   = "5m"
    update = "5m"
    delete = "5m"
  }

}
```

После успешного завершения такого вызова **dynamix_lb_backend_server** в переменной `dynamix_lb_backend_server.lb` будут сохранены возвращаемые значения.
