Правило балансировки определяет, как балансировщик будет обрабатывать входящий трафик и распределять запросы по серверам целевой группы.
Когда соединение устанавливается, балансировщик анализирует порт назначения в запросах и определяет правило, которое надо применить. Затем запросы распределяются по выбранному алгоритму между серверами целевой группы.
Особенности и ограничения
-
На одном балансировщике можно создать несколько правил.
-
Каждое правило связано с только одной целевой группой.
-
Для каждого правила настраивается один алгоритм балансировки: Round Robin, Maglev или Least Request.
-
Для каждого правила настраивается индивидуальная проверка доступности.
-
В каждом правиле указывается один или несколько уникальных TCP-портов балансировщика, например 80, 443, 8080.
-
Один и тот же порт не может быть использован в разных правилах внутри одного балансировщика.
-
Для каждого порта в правиле можно задать внутренний порт сервера целевой группы, например 80 → 8080, 443 → 8443.
Например, в правиле указаны порты 80 и 443. Трафик, поступающий на порт 80, направляется на порт 8080 целевой группы. Трафик, поступающий на порт 443, — на порт 8443 целевой группы.
Алгоритмы балансировки
В правилах балансировки могут использоваться следующие алгоритмы балансировки:
-
Round Robin — балансировщик распределяет запросы между серверами серверу по кругу. После прохождения круга начинается новый цикл.
Алгоритм Round Robin подходит, когда у серверов одинаковая производительность и нет необходимости учитывать фактическую нагрузку на них.
-
Least Request — балансировщик отправляет запрос на наименее загруженный сервер.
Алгоритм Least Request подходит, когда у серверов разная производительность или важно избежать перегрузки серверов.
-
Maglev — балансировщик хеширует IP-адрес клиента и отправляет все запросы этого клиента на один сервер.
Алгоритм Maglev подходит, когда у серверов одинаковая производительность и важно сохранить сессии клиентов для ускорения обработки запросов.
- Особенности и ограничения
- Алгоритмы балансировки