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()