Lbaas

Балансировщик нагрузки - позволяет балансировать трафик между серверами. В балансировщик нагрузки добавляют пулы балансировки с различными алгоритмами балансировки в которые добавляются участники - серверы. Балансировщик нагрузки создаётся в ВЦОД. Для создания балансировщика необходимо либо заранее создать порт, либо передать ещё не существующий объект порта при создании.

Объект «балансировщик нагрузки»

class esu.Lbaas(*args, token: Optional[str] = None, **kwargs)[исходный код]
Параметры:
  • id (str) – Идентификатор Lbaas

  • name (str) – Имя Lbaas

  • vdc (object) – Объект класса esu.Vdc. ВЦОД, к которому относится данный балансировщик нагрузки

  • floating (object) – Объект класса esu.Port. Порт подключения виртаульаного выделенного сервера к внешней сети. Если None, сервер не имеет подключения к внешней сети.

  • ports (object) – объект класса esu.Port. Сеть, к которой подключен данный балансировщик нагрузки

  • token (str) – Токен для доступа к API. Если не передан, будет использована переменная окружения ESU_API_TOKEN

Примечание

Поля name, vdc и port необходимы для создания.

Поле name может быть изменено для существующего объекта.

classmethod get_object(id, token=None)[исходный код]

Получить объект Lbaas по его ID

Параметры:
  • id (str) – Идентификатор Lbaas

  • token (str) – Токен для доступа к API. Если не передан, будет использована переменная окружения ESU_API_TOKEN

Результат:

Возвращает объект Lbaas esu.Lbaas

Тип результата:

object

create()[исходный код]

Создать объект

Исключение:

ObjectAlreadyHasId – Если производится попытка создать объект, который уже существует

save()[исходный код]

Сохранить изменения

Исключение:

ObjectHasNoId – Если производится попытка сохранить несуществующий объект

destroy()[исходный код]

Удалить объект

Исключение:

ObjectHasNoId – Когда производится попытка удалить несуществующий объект

get_lbaas_pool()[исходный код]

Получить список пулов балансировщика, доступных в рамках данного Lbaas.

Результат:

Список объектов esu.LbassPool

Тип результата:

list

Примеры использования

Создать балансировщик нагрузки:

from esu import Lbaas, Vdc, Port

vdc = Vdc.get_object('d5cd2cdc-b5b0-4d2e-8bc6-ea3f019745f9')
port = Port.get_object('d5cd2cdc-b5b0-4d2e-8bc6-ea3f019745f9')
lbaas = Lbaas(port=port, name="LBAAS", vdc=vdc)
lbaas.create()