Руководство разработчика nftlb

Просмотр категорий

Руководство разработчика nftlb

1 min read

Обзор #

nftlb полагается на сетевой стек netfilter / nftables linux. С этим новым стеком предоставляются новые концепции и возможности, которые нам необходимы, чтобы соответствовать текущему дизайну распределения нагрузки.

Цель этой статьи - дать общее представление о том, как спроектированы путь данных балансировки нагрузки и путь управления nftables.

Путь к данным #

Это ловушки Netfilter, которые использует nftlb, используя преимущества настраиваемых цепочек. Необходимо включить новые концепции, такие как разгрузка отслеживания соединений, чтобы ускорить установление перенаправленных соединений с бэкэндами.

                                                                  ------------ | DNSBL | ------------ | вход в очередь | prerouting вперед postrouting ------------ ------------- -------------- -------- ---- ------- -------------- ------- | фильтр | фильтр | фильтр | | фильтр | нац | | фильтр | | нац | | 0 | 50-99 | 100 | | -150 | 0 | | 0 | | 100 | --> | | | Политики безопасности |-( Conntrack )-> | Ограничения в секундах | |-(Маршрутизация)-> | | --> | | | Кластеризация | Таблицы расхода | ДСР | ПРОТИВ {} | Помощники | дНАТ | ПРОТИВ {} | Разгрузка потока | | сНАТ | | | | нестабильный дНАТ | | знаки | | -------------- ------- ------------ ------------- ---- ---------- ------------ ------- 

вход #

(0) фильтр: Зарезервировано для управления кластерами. Еще не включен в nftlb.
(50-99) фильтр: Зарезервировано для ускорения таблиц потоков. Еще не включен в nftlb.
(100) фильтр: Зарезервировано для: политик безопасности (черные и белые списки), прямого возврата сервера и топологии dNAT без сохранения состояния.

PREROUTING #

(-150) фильтр: Зарезервировано для Пределов безопасности для виртуальных сервисов или для каждого бэкенда, например: максимальное количество установленных соединений, ограничение TCP RST в секунду, ограничение TCP SYN в секунду, отбрасывание нестрогих TCP-соединений, очередь в службу DNSBL, виртуальная служба и метки бэкэнда , использование помощников, регистрация входных подключений по виртуальной службе.
(0) nat: Зарезервировано для назначения NAT искажения.

вперед #

(0) фильтр: Зарезервировано для разгрузки потока. Еще не включен в nftlb.

POSTROUTING #

(100) nat: Зарезервировано для назначения NAT искажения.

Путь управления #

Путь управления nftlb выполнен в виде демона, который предоставляет простой http-сервер с API, или автономного двоичного файла, который принимает файл конфигурации в формате JSON.

                ------------- перевод ------------- -------- JSON API | | объекты в nft | | сетевая ссылка | | ------------> | http-сервер | --------------> | libnftables | --------> | ядро | | | | | | | | ------------- | ------------- -------- | сетевая ссылка | ---------------------------------------

📄 Загрузите этот документ в формате PDF #

    EMAIL: *

    Powered by BetterDocs