L3/L4 балансировка
L3/L4 балансировка — механизм распределения входящего сетевого трафика между внутренними портами инстансов на сетевом (L3) и транспортном (L4) уровнях. Балансировка выполняется для внешних эндпоинтов, к которым привязываются правила распределения трафика на внутренние ресурсы.
Функция предназначена для балансировки трафика, поступающего из внешней сети во внутреннюю через логический маршрутизатор. Трафик может балансироваться только между инстансами, отправка трафика на внешние узлы не поддерживается. Распределение реализуется средствами SDN Amano на уровне OpenFlow и поддерживает распределённую маршрутизацию.
Доступ к интерфейсу осуществляется через боковое меню: NFV → L3/L4 балансировка.
Важно
Для работы функциональности необходима сетевая подсистема Amano и лицензия L3L4Balancer.
Балансировка применяется к трафику, проходящему через маршрутизатор из внешней сети во внутреннюю. Для балансировки HTTP/HTTPS на уровне приложений используйте раздел NFV → L7 балансировка.
Набор доступных алгоритмов и полей хеширования определяется конфигурацией облака.
Основные возможности
Создание внешних эндпоинтов с IP-адресами в выбранной сети.
Создание нескольких правил L3- или L4-балансировки для одного эндпоинта.
Выбор порта инстанса во внутренней сети для распределения трафика.
Выбор алгоритма балансировки и полей хеширования.
Указание внешнего и внутреннего транспортных портов для L4-правил.
Управление созданными эндпоинтами и правилами, просмотр их параметров и статуса.
Управление эндпоинтами
Эндпоинт — внешняя точка приёма трафика, определяемая IP-адресом в выбранной внешней сети. Правила L3/L4-балансировки создаются внутри эндпоинта.
Создание эндпоинта:
Перейти в раздел NFV → L3/L4 балансировка.
Нажать Создать эндпоинт.
Заполнить форму:
Имя — имя создаваемого эндпоинта.
Описание — необязательное описание.
Внешняя сеть — сеть, в которой будет размещён внешний IP-адрес эндпоинта. Для выбора доступны вкладки Сети текущего проекта, Общие сети, Все сети.
Внешний IP — IP-адрес из выбранной подсети внешней сети. В форме отображаются выбранная подсеть и её CIDR. Может быть назначен автоматически или введен вручную.
Нажать кнопку ОК.
После создания эндпоинт появляется в списке. В карточке отображаются Имя, Статус, Сеть, Внешний IP и Описание. Нажатие на имя открывает детальную информацию об эндпоинте и список привязанных к нему правил.
Просмотр и редактирование эндпоинта:
Нажать на имя эндпоинта в общем списке.
На странице детальной информации просмотреть статус, ID, внешнюю сеть и IP-адрес, а также список правил балансировки.
Для изменения параметров нажать Редактировать.
В открывшейся форме изменить Имя, Описание или Статус эндпоинта (включён или выключен).
Нажать ОК для сохранения изменений.
При редактировании эндпоинта его внешняя сеть и IP-адрес не изменяются.
Управление правилами балансировки
Правила создаются для выбранного эндпоинта. Каждое правило связывает входящий трафик с внутренним портом и задаёт способ его распределения.
Важно
Для одного эндпоинта допускаются правила только одного уровня: если на эндпоинте уже создано хотя бы одно L3-правило, на нём можно создавать только другие L3-правила. Аналогично, при наличии хотя бы одного L4-правила можно создавать только L4-правила. Смешивать L3- и L4-правила в рамках одного эндпоинта нельзя.
Создание L3-правила:
Открыть страницу детальной информации нужного эндпоинта.
Нажать Создать L3 правило.
Заполнить форму:
Внутренний порт — выбрать порт инстанса, на который должен направляться трафик. В таблице доступны имя, сеть, IPv4/IPv6-адреса, MAC-адрес, тип и статус порта.
Алгоритм балансировки — выбрать алгоритм распределения трафика. В представленном примере используется
modulo_n.Поля хеширования — выбрать набор полей сетевого пакета, применяемый для вычисления хеша. В представленном примере используется
symmetric_l3.
Нажать ОК.
L3-правило используется для распределения трафика без указания транспортных портов в форме правила.
Создание L4-правила:
Открыть страницу детальной информации нужного эндпоинта.
Нажать Создать L4 правило.
Заполнить форму:
Внутренний порт — выбрать порт инстанса, на который будет направляться трафик.
Алгоритм балансировки — выбрать алгоритм распределения трафика (например,
modulo_n).Поля хеширования — выбрать набор полей для вычисления хеша (например,
symmetric_l3).Порт во внешней сети — номер транспортного порта, на который поступает трафик, целое число от 1 до 65535.
Порт во внутренней сети — номер транспортного порта внутреннего сервиса, целое число от 1 до 65535.
Протокол IP — выбрать протокол для правила.
Нажать ОК.
Например, при указании внешнего порта 9090 и внутреннего порта 8080
входящие соединения на порт 9090 внешнего IP-адреса эндпоинта
направляются на порт 8080 выбранного внутреннего ресурса
согласно алгоритму балансировки.
Важно
L3- и L4-правила различаются набором параметров: L4-правило дополнительно позволяет указать транспортный протокол и внешние и внутренние номера портов.
Перед созданием правила убедитесь, что выбран правильный внутренний порт и целевой сервис доступен на соответствующем порту.
Для корректной работы сервиса требуется сетевая связность между эндпоинтом и внутренним ресурсом и подходящие правила безопасности.
При создании L3-правил необходимо для всех правил выбирать одни и те же алгоритмы и поля хеширования для корректной работы сервиса.
При создании L4-правил необходимо для всех правил c одинаковым портом во внешней сети выбирать одни и те же алгоритмы и поля хеширования для корректной работы сервиса.
Редактирование правил балансировки
Редактирование L3-правила:
Открыть страницу детальной информации эндпоинта.
В разделе Правила открыть меню нужного L3-правила (три точки) и выбрать Редактировать.
В открывшейся форме при необходимости изменить Внутренний порт, Алгоритм балансировки и Поля хеширования.
Нажать ОК, чтобы сохранить изменения.
Редактирование L4-правила:
Открыть страницу детальной информации эндпоинта.
В разделе Правила открыть меню нужного L4-правила (три точки) и выбрать Редактировать.
В открывшейся форме при необходимости изменить Внутренний порт, Алгоритм балансировки, Поля хеширования, Порт во внешней сети, Порт во внутренней сети и Протокол IP.
Нажать ОК, чтобы сохранить изменения.
Примечание
Изменение внутреннего порта или параметров распределения трафика может повлиять на обработку новых соединений. При редактировании L4-правила также учитывайте доступность сервиса на указанном внутреннем порту.
Алгоритм балансировки и поля хеширования
Алгоритм определяет способ выбора внутреннего ресурса при обработке входящего трафика. Поля хеширования определяют, какие сведения из заголовков пакетов участвуют в вычислении хеша.
Алгоритмы балансировки:
modulo_n— распределяет потоки между внутренними ресурсами по хешу. При изменении количества ресурсов распределение большинства потоков может измениться.hash_threshold— распределяет потоки по диапазонам значений хеша. При изменении количества ресурсов переназначается примерно от четверти до половины потоков.hrw— выбирает ресурс с наибольшим вычисленным весом для потока. При добавлении или удалении ресурса позволяет сохранить привязку большей части потоков к прежним ресурсам.iter_hash— последовательно вычисляет хеш для выбора ресурса. При изменении количества ресурсов переназначает сравнительно небольшую долю потоков.
Поля хеширования:
eth_src— MAC-адрес источника.symmetric_l4— MAC-адреса, VLAN, IP-адреса, сетевой протокол и порты TCP/SCTP. Трафик в обоих направлениях получает одинаковый хеш при симметричном пути на канальном уровне. Порты UDP не учитываются.symmetric_l3l4— IP-адреса, сетевой протокол и порты TCP/SCTP без учёта заголовков канального уровня. Подходит при различии путей на канальном уровне; порты UDP не учитываются.symmetric_l3l4+udp— аналогsymmetric_l3l4, но дополнительно учитывает порты UDP.symmetric_l3— IP-адреса источника и назначения с симметричным хешированием: обмен адресов местами не меняет результат.nw_src— только IP-адрес источника.nw_dst— только IP-адрес назначения.
Примечание
Алгоритм определяет способ распределения потоков, а поля хеширования — какие характеристики трафика используются для этого распределения. Выбор полей влияет на то, какие соединения будут направляться на один и тот же внутренний ресурс.
Просмотр правил
На странице детальной информации эндпоинта в разделе Правила отображаются созданные правила балансировки.
Для каждого правила выводятся его статус и внутренний IP-адрес, а также параметры балансировки. Для L4-правил дополнительно отображаются порты источника и назначения и протокол IP.
Для просмотра нужных правил можно использовать строку фильтрации, а для обновления данных — соответствующую кнопку в интерфейсе.
Удаление правил и эндпоинтов
Удаление L3-правила:
Открыть детальную информацию эндпоинта.
В разделе Правила выбрать нужное L3-правило.
Нажать Удалить.
В окне подтверждения проверить ID правила и нажать Подтвердить.
Удаление L4-правила:
Открыть детальную информацию эндпоинта.
В разделе Правила выбрать нужное L4-правило.
Нажать Удалить.
В окне подтверждения проверить ID правила и нажать Подтвердить.
Удаление эндпоинта:
Перейти в NFV → L3/L4 балансировка.
Выбрать эндпоинт и нажать Удалить.
Ознакомиться с предупреждением и подтвердить операцию.
Важно
Удаление эндпоинта приводит к удалению всех связанных с ним правил балансировки. Перед подтверждением операции убедитесь, что эти правила больше не используются.