При создании или изменении облачных шаблонов vRealize Automation используйте ресурсы подсистемы балансировки нагрузки, которые лучше всего подходят для ваших целей.

Для управления балансировкой нагрузки в развертывании можно использовать в облачном шаблоне ресурсы подсистемы балансировки нагрузки NSX, а также ресурсы подсистемы балансировки нагрузки, независимые от облачной среды.

Независимая от облака подсистема балансировки нагрузки может быть развернута в нескольких облаках. Для подсистемы балансировки нагрузки, предназначенной для облачной среды, можно указать дополнительные параметры и функции, доступные только для определенной облачной среды или топологии. Специальные свойства для облачной среды доступны в типе ресурса подсистемы балансировки нагрузки (Cloud.NSX.LoadBalancer) NSX. При добавлении этих свойств в подсистему балансировки нагрузки, независимую от облачной среды (Cloud.LoadBalancer), они будут игнорироваться, если, например, развернута подсистема балансировки нагрузки Amazon Web Services или Microsoft Azure, но будут учитываться, если развернута подсистема балансировки нагрузки NSX. Выберите один из доступных типов ресурсов подсистем балансировки нагрузки в зависимости от условий в облачном шаблоне vRealize Automation.

Ресурс подсистемы балансировки нагрузки нельзя подключить напрямую к ресурсу группы безопасности на холсте проекта.

Независимый от облачной среды ресурс подсистемы балансировки нагрузки

Если необходимо указать характеристики сети для целевого компьютера любого типа, используйте независимую от облачной среды подсистему балансировки нагрузки.

Для добавления независимой от облачной среды подсистемы балансировки нагрузки можно использовать ресурс Независимый от облачной среды > Подсистема балансировки нагрузки на странице проектирования облачного шаблона. Ресурс отображается в коде облачного шаблона как тип ресурса Cloud.LoadBalancer. Ресурс по умолчанию отображается следующим образом:
Cloud_LoadBalancer_1:
    type: Cloud.LoadBalancer
    properties:
      routes: []
      network: ''
      instances: []
      internetFacing: false

ресурс подсистемы балансировки нагрузки NSX

Используйте подсистему балансировки нагрузки NSX, если облачный шаблон содержит характеристики, относящиеся к NSX (методы Policy API или Manager API). К сети NSX или к компьютерам, связанным с сетью NSX, можно подключить одну или несколько подсистем балансировки нагрузки.

Чтобы добавить подсистему балансировки нагрузки NSX, используйте ресурс NSX > Подсистема балансировки нагрузки. Ресурс отображается в коде облачного шаблона как тип ресурса Cloud.NSX.LoadBalancer. Ресурс по умолчанию отображается следующим образом:
Cloud_NSX_LoadBalancer_1:
    type: Cloud.NSX.LoadBalancer
    properties:
      routes: []
      network: ''
      instances: []
      

Параметры подсистемы балансировки нагрузки в коде облачного шаблона

Добавление одного ресурса подсистемы балансировки нагрузки или нескольких в облачный шаблон позволяет указать следующие параметры. Некоторые примеры доступны в разделе Сети, ресурсы безопасности и подсистемы балансировки нагрузки в vRealize Automation.

Протокол HTTP поддерживается для всех подсистем балансировки нагрузки по требованию.

Протокол HTTPS поддерживается только для подсистем балансировки нагрузки по требованию, связанных с облачной учетной записью NSX, для режима NSX которой задано значение Policy. Облачные учетные записи NSX, для режима NSX которых задано значение Manager, не могут использовать протокол HTTPS.

  • Спецификация компьютера

    Можно указать именованные ресурсы компьютеров для включения в пул балансировки нагрузки. Кроме того, можно указать сетевой адаптер компьютера, который будет включен в пул подсистемы балансировки нагрузки.

    Этот параметр доступен только для ресурса подсистемы балансировки нагрузки NSX (Cloud.NSX.LoadBalancer).

    • ресурс.Cloud_Machine_1.id

      Указывает, что подсистема балансировки нагрузки включает в себя компьютер, помеченный в коде облачного шаблона как Cloud_Machine_1.

    • ресурс.Cloud_Machine_2.networks[2].id

      Указывает, что подсистема балансировки нагрузки должна включать в себя компьютер, обозначенный в коде облачного шаблона как Cloud_Machine_2, только если он развернут на сетевом адаптере компьютера Cloud_Machine_2.networks[2].

  • Уровень ведения журналов

    Значение уровня ведения журнала указывает уровень серьезности для журнала ошибок. Существуют следующие значения: NONE, EMERGENCY, ALERT, CRITICAL, ERROR, WARNING, INFO, DEBUG и NOTICE. Значение уровня ведения журнала применяется ко всем подсистемам балансировки нагрузки в облачном шаблоне. Этот параметр относится только к NSX. Для подсистем балансировки нагрузки, у которых есть родительский компонент, значение уровня ведения журнала переопределяет любое значение уровня ведения журнала для его дочерних элементов.

    Дополнительные сведения см. в разделе Добавление подсистем балансировки нагрузки в документации по NSX.

  • Тип

    Используйте тип подсистемы балансировки нагрузки, чтобы указать объем масштабирования. Значение по умолчанию — small. Этот параметр относится только к NSX. Для подсистем балансировки нагрузки, у которых есть родительский компонент, значение родительского типа переопределяет любое значение типа для его дочерних элементов.

    • Маленький

      Соответствует compact в NSX-V и small в NSX-T.

    • Средний

      Соответствует large в NSX-V и medium в NSX-T.

    • Большой

      Соответствует quad-large в NSX-V и large в NSX-T.

    • Очень большой

      Соответствует xlarge в NSX-V и large в NSX-T.

      Дополнительные сведения см. в соответствующих разделах, например Масштабирование ресурсов подсистемы балансировки нагрузки в документации по NSX.

    Этот параметр доступен для ресурса подсистемы балансировки нагрузки NSX (Cloud.NSX.LoadBalancer).

  • Алгоритм (пул серверов)
    Используйте метод балансировки algorithm (алгоритм), чтобы контролировать способ распределения входящих подключений между участниками пула серверов. Алгоритм можно использовать в пуле серверов или непосредственно на сервере. Все алгоритмы балансировки нагрузки пропускают серверы, которые удовлетворяют любому из следующих условий.
    • Для состояния администратора установлено значение DISABLED.
    • Для состояния администратора установлено значение GRACEFUL_DISABLED, а соответствующая запись об устойчивости отсутствует.
    • Активное или пассивное состояние проверки работоспособности — DOWN.
    • Достигнуто максимальное количество одновременных подключений пула серверов.

    Этот параметр относится только к NSX.

    • IP_HASH

      Выбирает сервер на основании хеша IP-адреса источника и общего веса всех работающих серверов.

      Соответствует IP-HASH в NSX.

    • LEAST_CONNECTION

      Клиентские запросы распределяются между серверами в зависимости от количества подключений. Новые подключения отправляются на тот сервер, где их меньше. Вес участников пула серверов игнорируется, даже если он задан.

      Соответствует LEASTCONN в NSX-V и LEAST_CONNECTION в NSX-T.

    • ROUND_ROBIN

      Входящие запросы клиентов проходят циклически по списку доступных серверов, которые способны обработать запрос. Вес членов пула серверов игнорируется, даже если он задан. По умолчанию.

      Соответствует ROUND_ROBIN в NSX.

    • WEIGHTED_LEAST_CONNECTION

      Каждому серверу присваивается весовое значение, которое учитывает количество отправляемых на сервер запросов и указывает его производительность относительно других серверов в пуле. Задача этого алгоритма — равномерно распределить нагрузку между доступными ресурсами сервера. По умолчанию, если весовое значение не задано, оно равно 1 и включен параметр медленного запуска.

      Соответствует WEIGHTED_LEAST_CONNECTION в NSX-T. Соответствующий параметр в NSX-V отсутствует.

    • WEIGHTED_ROUND_ROBIN

      Каждому серверу присваивается весовое значение, которое учитывает количество отправляемых на сервер запросов и указывает его производительность относительно других серверов в пуле. Задача этого алгоритма — равномерно распределить нагрузку между доступными ресурсами сервера.

      Соответствует WEIGHTED_ROUND_ROBIN в NSX-T. Соответствующий параметр в NSX-V отсутствует.

    • URI

      Левая часть кода URI хешируется и делится на общий вес работающих серверов. Результат указывает сервер, который получает запрос. Благодаря этому URI всегда направляется на один и тот же сервер, пока количество работающих серверов остается неизменным. Этот параметр алгоритма URI имеет два компонента: uriLength=<len> и uriDepth=<dep>. Диапазон параметра длины должен быть 1<=len<256. Диапазон параметра глубины должен быть 1<=dep<10. Параметры длины и глубины должны быть положительными целыми числами. Эти компоненты могут выполнять балансировку серверов, основываясь только на первой части URI. Параметр длины указывает, что алгоритм должен принимать во внимание только определенные символы в начале URI для вычисления хеша. Параметр глубины определяет максимальную глубину каталога, которую следует использовать для вычисления хеша. С каждой косой чертой в запросе добавляется один уровень. Если определены оба параметра, проверка прекращается при достижении любого из них.

      Соответствует URI в NSX-V. Соответствующий параметр в NSX-T отсутствует.

    • HTTPHEADER

      Имя заголовка HTTP проверяется в каждом запросе HTTP. Имя заголовка в круглых скобках не зависит от регистра. Если заголовок отсутствует или не содержит никакого значения, применяется алгоритм циклического перебора (round robin). Параметр алгоритма HTTPHEADER имеет один вариант: headerName=<name>.

      Соответствует HTTPHEADER в NSX-V. Соответствующий параметр в NSX-T отсутствует.

    • URL-адрес

      Поиск параметра URL-адреса, указанного в аргументе, выполняется в строке запроса для каждого запроса HTTP GET. Если за параметром следуют знак равенства (=) и значение, это значение хешируется и делится на общий вес работающих серверов. Результат указывает сервер, который получает запрос. Этот процесс используется для отслеживания идентификаторов пользователей в запросах, благодаря чему один и тот же идентификатор пользователя всегда отправляется на один и тот же сервер, пока количество работающих серверов остается неизменным. Если значение или параметр не найдены, применяется алгоритм циклического перебора. Этот параметр алгоритма URL-адреса имеет один вариант: urlParam=<url>.

      Соответствует URL в NSX-V. Соответствующий параметр в NSX-T отсутствует.

    Дополнительные сведения см. в соответствующих разделах, например Добавление пула серверов для балансировки нагрузки в документации по продукту NSX.

  • Монитор работоспособности

    С помощью параметров монитора работоспособности проверяйте, доступен ли сервер. Поддерживается активный мониторинг работоспособности для протоколов HTTP, ICMP, TCP и UDP. Пассивный мониторинг работоспособности доступен только для NSX-T.

    Этот параметр относится только к NSX.

    • httpMethod

      Метод HTTP, используемый для определения состояния сервера при запросе проверки работоспособности. Методы: GET, HOST, OPTIONS, HEAD или PUT.

    • requestBody

      Содержимое текста запроса проверки работоспособности. Используется протоколами HTTP, TCP и UDP и является обязательным для них.

    • responseBody

      Содержимое текста предполагаемого ответа на запрос проверки работоспособности. Если полученная строка соответствует тексту ответа, сервер считается работоспособным. Используется протоколами HTTP, TCP и UDP и является обязательным для них.

    Примечание: При использовании протокола монитора UDP обязательными параметрами являются UDP Data Sent и UDP Data Expected. Свойства requestBody и responseBody сопоставляются с этими параметрами.

    Этот параметр доступен для ресурса подсистемы балансировки нагрузки NSX (Cloud.NSX.LoadBalancer).

    Дополнительные сведения см. в соответствующих разделах, например Настройка активного монитора работоспособности в документации по NSX.

  • Проверка работоспособности

    С помощью параметров проверки работоспособности укажите, как подсистема балансировки нагрузки должна выполнять проверки работоспособности.

    Этот параметр доступен только для ресурса подсистемы балансировки нагрузки NSX (Cloud.NSX.LoadBalancer).

    Пример доступных настроек проверки работоспособности см. в разделе Сети, ресурсы безопасности и подсистемы балансировки нагрузки в vRealize Automation.

Типы сетей NSX и параметры подсистем балансировки нагрузки

Параметры подсистемы балансировки нагрузки зависят от сети, с которой компонент подсистемы балансировки нагрузки связан в облачном шаблоне. Подсистему балансировки нагрузки можно настроить с учетом типа и условий сети.

  • Сеть по требованию

    Если вычислительные ресурсы подсистемы балансировки нагрузки привязаны к сети по требованию, создается новый маршрутизатор первого уровня, который подключается к маршрутизатору нулевого уровня, указанному в профиле сети. После этого подсистема балансировки нагрузки привязывается к маршрутизатору первого уровня. Объявление виртуального IP-адреса маршрутизатора первого уровня включается, если виртуальный IP-адрес находится в существующей сети. Если для DHCP настроена сеть по требованию, то эта сеть по требованию и подсистема балансировки нагрузки совместно используют маршрутизатор первого уровня.

  • Существующая сеть

    Если подсистема балансировки нагрузки подключена к существующей сети, создается подсистема балансировки нагрузки с маршрутизатором первого уровня существующей сети. Создается новая подсистема балансировки нагрузки, если к маршрутизатору первого уровня не подключены подсистемы балансировки нагрузки. Если подсистема балансировки нагрузки уже существует, новые виртуальные серверы подключаются к ней. Если существующая сеть не подключена к маршрутизатору первого уровня, создается новый маршрутизатор первого уровня, который подключается к маршрутизатору нулевого уровня, определенному в профиле сети, и объявление виртуального IP-адреса маршрутизатора первого уровня не включается.

    vRealize Automation не поддерживает двунаправленную (встроенную) подсистему балансировки нагрузки NSX-T в двух разных существующих сетях. Обратите внимание, что при использовании двунаправленной подсистемы балансировки нагрузки канал исходящей связи виртуального IP-адреса находится в существующей сети, а компьютеры, входящие в пул, подключены к сети по требованию. Чтобы при использовании существующей сети можно было выбрать подсистему балансировки нагрузки, необходимо настроить однонаправленную подсистему балансировки нагрузки. В ней используется одна и та же существующая сеть для виртуального IP-адреса подсистемы и компьютеров в пуле. Однако при использовании подсистемы балансировки нагрузки, выбранной в профиле сети, можно балансировать нагрузку между компьютерами в двух существующих сетях, если между этими сетями существует возможность подключения.

  • Изоляция сети, определенная в профиле сети

    Для типов сетей outbound или private в профиле сети можно указать параметры изоляции сети, чтобы смоделировать новую группу безопасности. Так как компьютеры подключены к существующей сети, а в профиле определены параметры изоляции, этот параметр аналогичен подсистеме балансировки нагрузки, созданной в существующей сети. Разница заключается в том, что IP-адрес порта исходящей связи первого уровня добавляется в группу безопасности изоляции, чтобы активировать путь к данным.

Параметры подсистемы балансировки нагрузки для сетей, связанных с NSX, можно задать с помощью ресурса подсистемы балансировки нагрузки NSX в проекте облачного шаблона.

Дополнительные сведения см. в записи блога VMware vRA Cloud Assembly Load Balancer with NSX-T Deep Dive (Подсистема балансировки нагрузки vRA Cloud Assembly с NSX-T Deep Dive).

Устойчивость профиля подсистемы балансировки нагрузки NSX-T

Облачные шаблоны и развертывания vRealize Automation поддерживают варианты профиля устойчивости подсистемы балансировки нагрузки NSX-T для параметров SOURCE_IP и COOKIE. Дополнительные сведения о настройке этих параметров в NSX-T для их использования в облачных шаблонах и развертываниях vRealize Automation см. в разделе Добавление профиля устойчивости в документации по NSX-T.

Перенастройка параметров уровня или типа ведения журнала в том случае, если несколько подсистем балансировки нагрузки используют маршрутизатор уровня 1 NSX-T или пограничный маршрутизатор NSX-V

Если используется облачный шаблон, содержащий несколько подсистем балансировки нагрузки, которые совместно используют маршрутизатор уровня 1 в конечной точке NSX-T или пограничный маршрутизатор в конечной точке NSX-V, перенастройка параметров типа и уровня ведения журнала в одном из ресурсов подсистемы балансировки нагрузки не влечет за собой обновление параметров других подсистем балансировки нагрузки. Несоответствие параметров приводит к несогласованности в NSX. Чтобы избежать несогласованности при перенастройке этих параметров типа и (или) уровня ведения журнала, используйте одинаковые значения перенастройки для всех ресурсов подсистемы балансировки нагрузки в облачном шаблоне, которые совместно используют маршрутизатор уровня 1 или пограничный маршрутизатор в связанной конечной точке NSX.

Доступные операции регулярного обслуживания

При горизонтальном или вертикальном масштабировании развертывания, в котором содержится подсистема балансировки нагрузки, эта подсистема настраивается так, чтобы в нее попадали добавленные компьютеры или чтобы останавливать работу компьютеров балансировки нагрузки, которые планируется отключить.

Список типовых операций по регулярному обслуживанию, доступных для облачных шаблонов и развертываний, см. в разделе Какие действия можно выполнять в развертываниях Cloud Assembly.

Подробнее

Сведения об определении параметров подсистемы балансировки нагрузки в профиле сети см. в разделе Дополнительные сведения о профилях сетей в vRealize Automation.

Примеры проектов облачных шаблонов, содержащих подсистемы балансировки нагрузки, см. в разделе Сети, ресурсы безопасности и подсистемы балансировки нагрузки в vRealize Automation.