Подсистема балансировки нагрузки автоматически добавляет маршруты для каждого пути в таблицу маршрутизации и балансирует трафик между настроенными интерфейсами в зависимости от работоспособности и веса интерфейса.
Минимально необходимая конфигурация для балансировки WAN-интерфейса должна включать в себя следующие элементы:
требуется добавить как минимум один сетевой интерфейс маршрутизатора с заданным адресом и адресом следующего узла;
необходимо добавить хотя бы одно правило с балансируемыми интерфейсами.
Примечание
Балансировка нагрузки не используется совместно с динамической маршрутизацией. Сервис создаёт настраиваемые таблицы маршрутизации и правила брандмауэра, что делает его несовместимым с протоколами динамической маршрутизации.
Для настройки балансировочной нагрузки на WAN-интерфейс необходимо перейти в меню «Интерфейсы», а затем в раздел «Балансировка нагрузки на WAN-интерфейсах» (см. Рисунок – Балансировка нагрузки на WAN-интерфейсах).
Рисунок – Балансировка нагрузки на WAN-интерфейсах
«Наименование» - выбирать сетевой интерфейс из предложенного списка для активации на нём проверки WAN-канала;
«Количество ошибок» - указать количество неудачных проверок, после которых WAN-канал будет считаться недоступным. Возможно указать значение в диапазоне от «1» до «10»;
«Количество успешных запросов» - указать количество успешных проверок, после которых WAN-канал будет отмечен как доступный. Возможно указать значение в диапазоне от «1» до «10»;
«Следующий узел» - адрес узла, через который будет осуществляться доступ к хосту-получателю. Возможно указать «IPv4-адрес» или «DHCP».
Для редактирования настроек проверяемого интерфейса необходимо нажать ЛКМ на строке с нужным интерфейсом и в открывшейся боковой панели внести корректировки. По завершению нажать кнопку «Сохранить».
Для удаления проверяемого интерфейса необходимо выбрать один или несколько интерфейсов, установив флажок в чек-боксе слева от наименования интерфейса, и нажать кнопку «Удалить». В открывшемся окне, подтвердить удаление нажатием кнопки «Удалить».
Примечание
В случае удаления последнего проверяемого интерфейса или всех проверяемых интерфейсов система предупредит о том, что все правила и основные параметры балансировки будут удалены. Для продолжения необходимо подтвердить удаление (см. Рисунок – Удаление проверяемого интерфейса):
Каждая проверка настраивается для отдельного хоста-получателя и предполагает выполнение соответствующего теста. В случае необходимости проверки нескольких хостов-получателей необходимо настроить несколько тестов, каждый из которых будет выполняться в определённом порядке.
Для добавления правил проверки интерфейса необходимо выполнить следующие действия:
В таблице «Проверка состояния интерфейсов» раздела «Балансировка нагрузки на WAN-интерфейсах» нажать кнопку «+Добавить».
В открывшейся боковой панели выбрать создаваемый объект «Правила проверки» и ввести необходимые параметры (см. Рисунок – Добавление правил проверки):
«Интерфейс» - указать из списка проверяемый интерфейс;
«Приоритет» - указать номер правила в соответствии с его очерёдностью. Возможно указать значение в диапазоне от «0» до «4294967295»;
«Тип» - указать тип теста. Возможно указать следующие значения:
«ping»;
«TTL»;
«Пользовательский» - указать пользовательский скрипт, описывающий характер проверки.
Для загрузки скрипта необходимо нажать кнопку «Загрузить скрипт» и в открывшемся окне проводника выбрать необходимый скрипт (см. Рисунок –Загрузка пользовательского скрипта):
Скрипт должен возвращать «0» для обозначения успешного результата и значение отличное от «0» - для неудачных результатов. Система перестанет отвечать на запросы, если выполнение скрипта не завершится!
Примечание
Скрипт сохраняется в каталоге /config/scripts.
«Время отклика» - указать значение максимального времени ожидания ответа на сообщение ICMP в секундах. Возможно указать значение в диапазоне от «1» до «30». По умолчанию используется значение «5».
«Предельное время жизни (число узлов)» - параметр, который определяет количество переходов между каждой парой шлюзов на пути к хосту-получателю. Он используется для тестирования с протоколом UDP, когда выбирается тип тестирования «TTL». Успешным результатом является получение в ответ сообщения ICMP Time Expired.
«Проверяемый адрес» - указать IPv4-адрес хоста-получателя, на который будут отправляться сообщения ICMP Echo Request.
Для изменения настроек правил проверки интерфейса необходимо нажать ЛКМ на кнопку «» в правом углу строки с нужным интерфейсом в таблице «Проверка состояния интерфейсов». В открывшемся списке правил необходимо выбрать нужное правило, также нажав на него ЛКМ. В боковой панели внести необходимые изменения. По завершению нажать кнопку «Сохранить».
Для удаления правил проверки интерфейса необходимо выбрать одно или несколько правил проверки интерфейсов, установив флажок в чек-боксе слева от наименования правила, и нажать кнопку «Удалить». В открывшемся окне подтвердить удаление нажатием кнопки «Удалить».
Блок фильтрации предоставляет возможность сортировки и фильтрации данных из таблицы «Проверка состояния интерфейсов» по всем столбцам в списке (см. Рисунок – Панель поиск и фильтрации). Он включает в себя следующие поля:
Сквозной поиск по полям таблицы «Проверка состояния интерфейсов» осуществляется с помощью ввода искомого значения в поле параметра «Поиск». Поиск производится по наименованию сетевого интерфейса и номеру правил.
Фильтрация по полю «Наименование» позволяет осуществлять отбор данных на основе названий сетевых интерфейсов. В данном поле представлен раскрывающийся список с именами интерфейсов, добавленных в таблицу «Проверка состояния интерфейсов».
Фильтрация по полю «Тип правила» позволяет отфильтровать правила по типу теста. Поле содержит выпадающий список и предоставляет выбор из следующих вариантов значений: «ping», «TTL», «Пользовательский».
Сброс всех установленных фильтров осуществляется нажатием кнопки «Сбросить фильтры».
Балансировка нагрузки представляет собой совокупность правил, определяющих тип трафика, подлежащего распределению, а также перечень таблиц маршрутизации и их значимости.
Каждое правило включает в себя критерии соответствия и таблицы маршрутизации с присвоенной значимостью. Правила пронумерованы и выполняются в установленном порядке, начиная с «1» и заканчивая «9999».
Важно отметить, что номер правила является уникальным идентификатором, который не может быть изменён. Для изменения номера правила необходимо удалить его и создать заново с новым номером. Рекомендуется назначать номера правил балансировки нагрузки, оставляя свободные интервалы. Например, возможно создать набор правил с номерами 10, 20, 30 и т. д. Это позволит в случае необходимости добавить новое правило в определённое место в текущей последовательности без удаления текущего набора правил.
«Приоритет» - уникальный номер приоритета правила балансировки трафика. Возможно указать номер приоритета в диапазоне от «1» до «9999».
«Режим» - режим работы правила:
«Балансировка трафика» - выполняется распределение трафика пропорционально отношению значимости интерфейса.
«Резервирование канала» - весь трафик идёт через основной интерфейс, а в случае его отказа - через резервный. В этом случае вместо балансировки трафика между всеми работоспособными WAN каналами трафик передаётся только по активному. В случае отказа активного WAN канала на эту роль выбирается другой из списка резервных на основе состояния и значимости интерфейса. Оставшиеся WAN каналы становятся резервными по отношению к новому активному.
Роли WAN-каналов и соответствующих им интерфейсов могут быть выбраны на основе порядка правил балансировки. В связи с тем, что автоматическое перераспределение установленных ранее сессий между активными и резервными каналами WAN не осуществляется, необходимо включить параметр «Очищать таблицы отслеживания подключений при изменении состояния соединения».
«Тип проверки трафика» - тип проверки трафика правилом:
«Потоковый» - для исходящего трафика по умолчанию применяется балансировка потоков в полном объёме. Для функционирования в данном режиме используется механизм отслеживания соединений на основе IP-адресов отправителя и получателя, а также номеров портов отправителя и получателя. Каждый поток связывается с определённым сетевым интерфейсом в соответствии с установленными правилами балансировки, в результате чего все сетевые пакеты, относящиеся к данному потоку, перенаправляются через этот интерфейс. Преимуществом данного режима работы является сохранение последовательности пакетов при использовании различных скоростей передачи данных для различных подключений.
«Пакетный» - балансировка пакетов для исходящего трафика позволяет достичь лучших показателей, но только при условии, что нарушение порядка пакетов не повлияет на функционирование сетевой инфраструктуры.
«Небалансируемый трафик» - трафик, который соответствует правилу, не балансируется, а маршрутизируется в соответствии с записями в системной таблице маршрутизации. Параметр доступен при выборе режима «Балансировка трафика».
«Балансируемые интерфейсы»:
«Интерфейс» - выбор из списка внешнего WAN-интерфейса для правила балансировки.
«Значимость» - отношение значимостей интерфейсов будет применяться с помощью алгоритма взвешенного случайного распределения в балансировке трафика. Пример, значимости 2 и 1 балансируемых интерфейсов означают, что через первый пойдёт 66% трафика, а через второй - 33%.
Кнопки «+Добавить» и «Удалить» позволяют добавлять или удалять балансируемые интерфейсы.
«Входящий интерфейс» - выбор из списка внутреннего интерфейса для правила балансировки.
«Ограничение скорости» - для правила возможно установить ограничение скорости передачи пакетов, чтобы применять правило к трафику выше или ниже заданного порога. Если в поле «Небалансируемый трафик» установлен флажок, то блок компонентов не отображается. Блок содержит следующие параметры:
«Порог» - выбор варианта сравнения, «Выше» или «Ниже» заданного лимита скорости.
«Количество пакетов» - количество сетевых пакетов. Возможно указать значение в диапазоне от «0» до «4294967295».
«Период» - период времени, в течение которого производится расчёт скорости.
«Допустимое превышение лимита» - количество пакетов, допустимое для превышения лимита в течение указанного периода времени. Возможно указать значение в диапазоне от «0» до «4294967295».
«Транспортный протокол» - блок настройки протокола транспортного уровня инкапсулируемый в IP протокол. Возможно выбрать один из следующих вариантов:
«Номер» - ввести номер протокола в соответствии с документом IANA;
Примечание
В случае необходимости выбора протоколов TCP или UDP, следует выбирать их из списка, представленного в поле «Название», а не указывать их числовое обозначение (6 - TCP, 17 - UDP) в поле «Номер». Указание протоколов TCP или UDP через числовое обозначение приводит к некорректной работе правила.
«Название» - выбор протокола из выпадающего списка.
При установке флажка в чек-боксе «Все, кроме указанного протокола» правило будет срабатывать на трафик всех протоколов, кроме указанного.
«Отправитель» - блок, в котором возможно настроить параметры правил в зависимости от источника трафика. Возможно выбрать один из следующих вариантов:
«IP-адрес» - ввести IPv4-адрес отправителя в поле «Адрес»;
«Диапазон адресов» - указать начальный и конечный IPv4-адрес отправителя в соответствующих полях;
«Сеть» - ввести IPv4-сеть отправителя в формате «x.x.x.x/x» в поле «Сеть».
Если установить флажок в чек-боксе «Все, кроме указанного отправителя», то правило будет срабатывать для всех адресов, кроме заданных.
«Порт отправителя» - блок настроек доступен, если в блоке «Транспортный протокол» в поле «Название» указано одно из следующих значений: «tcp» или «udp». Указать порт возможно одним из следующих способов:
«Номер порта» - возможно указать значение в диапазоне от «1» до «65535»;
«Диапазон портов» - позволяет задать интервал портов в диапазоне от «1» до «65535»;
«Протокол» - выбор протокола из выпадающего списка.
При установке флажка в чек-боксе «Все, кроме указанных портов» правило будет срабатывать на все порты, кроме указанных. Кнопки «+Добавить» и «Удалить» позволяют добавлять или удалять порты отправителя.
«Получатель» - блок, в котором настраиваются параметры правил в зависимости от адресата трафика. Возможно выбрать один из следующих вариантов:
«IP-адрес» - ввести IPv4-адрес получателя в поле «Адрес»;
«Диапазон адресов» - указать начальный и конечный IPv4-адрес получателя в соответствующих полях;
«Сеть» - ввести IPv4-сеть получателя в формате «x.x.x.x/x» в поле «Сеть».
Если установить флажок в чек-боксе «Все, кроме указанного получателя», правило будет действовать на все адреса, кроме заданных.
«Порт получателя» - блок настроек доступен, если в блоке «Транспортный протокол» в поле «Название» указано одно из следующих значений: «tcp» или «udp». Указать порт возможно одним из следующих способов:
«Номер порта» - возможно указать значение в диапазоне от «1» до «65535»;
«Диапазон портов» - позволяет задать интервал портов в диапазоне от «1» до «65535»;
«Протокол» - выбор протокола из выпадающего списка.
При установке флажка в чек-боксе «Все, кроме указанных портов» правило будет срабатывать на все порты, кроме указанных. Кнопки «+Добавить» и «Удалить» позволяют добавлять или удалять порты получателя.
Для редактирования правила балансировки необходимо нажать ЛКМ на строке с нужным правилом и в открывшейся боковой панели внести корректировки в атрибуты правила. По завершению нажать кнопку «Сохранить».
Для удаления правила балансировки необходимо выбрать одно или несколько правил, установив флажок в чек-боксе слева от приоритета правила, и нажать кнопку «Удалить». В открывшемся окне, подтвердить удаление нажатием кнопки «Удалить».
Примечание
В случае удаления последнего правила балансировки система выдаст предупреждение о том, что служба балансировки перестанет функционировать. Будет предложено подтвердить удаление правила (см. Рисунок – Подтверждения удаления последнего правила балансировки):
Рисунок – Подтверждения удаления последнего правила балансировки
Общие параметры балансировки нагрузки недоступны для редактирования, если в таблице «Проверка состояний интерфейсов» не указан хотя бы один интерфейс.
«Отключить правила NAT для источника» - отключение механизма автоматической генерации правил SNAT.
По умолчанию интерфейсы, используемые в пуле балансировки нагрузки, заменяют IP-адрес источника исходящего пакета на свой собственный адрес, что гарантирует поступление ответов на один и тот же интерфейс. Это работает с помощью автоматически сгенерированных правил SNAT, которые применяются только к сбалансированному трафику. В тех случаях, когда такое поведение нежелательно, автоматическую генерацию правил SNAT возможно отключить.
«Включить балансировку локального трафика» - включение балансировки нагрузки WAN для локального трафика.
«Очищать таблицы отслеживания подключений при изменении состояния соединения» - очистка таблицы соединений при изменении состояния активного WAN-канала.
Примечание
Очистка таблицы соединений приведёт к тому, что будет выполняться балансировка пакетов вместо балансировки потоков до момента повторного установления соединений.
«Липкие сессии» - включение возможности отправки ответных пакетов с сетевого интерфейса, откуда поступил запрос.
«Скрипт, выполняемый по изменению статуса интерфейса» - выбор пользовательского скрипта, который будет запускаться при изменении состояния балансируемого интерфейса.
Для загрузки пользовательского скрипта в систему ARMA Стена необходимо нажать кнопку «Загрузить скрипт» (см. Рисунок – Загрузка пользовательского скрипта). В появившемся диалоговом окне следует выбрать файл скрипта, располагающийся на локальном устройстве пользователя. Скрипты загружаются в директорию /config/scripts.
В названии файла скрипта недопустимо использовать символы: пробел, «“», «\». Максимальный размер файла не более 1 мегабайта.
Примечание
Скрипт должен возвращать «0» для обозначения успешного результата и значение отличное от «0» - для неудачных результатов. Система перестанет отвечать на запросы, если выполнение скрипта не завершится!
Для сохранения изменений в общих настройках балансировочной нагрузки необходимо нажать кнопку «Сохранить (см. Рисунок – Сохранение настроек).
Если минимально необходимые настройки балансировки не будут соблюдены, при попытке сохранить изменения система выдаст предупреждение о невозможности обновления настроек балансировки нагрузки на WAN-интерфейсах.