Добавлена локальная локальная балансировка

This commit is contained in:
ayurishchev committed 2026-08-17 16:59:16 +03:00
1 parent afd4f057be
commit d80a6c44b0
17 files changed
+1628 -369

No files matched your search

+39 -2
View File
@@ -17,18 +17,35 @@ LB_PUB_IP=192.168.5.20
VIP=192.168.5.21
VIP_PORT=80
# --- сеть 2: приватный сегмент бэкенда be1 -----------------------------------
# --- сеть 2: приватный сегмент 10.20.0.0/24 ----------------------------------
# С шага 3 сегмент коммутирует сам br-lb: каждая ВМ сегмента подключена
# отдельным портом (см. scripts/attach-segment.sh). Порт p2 остался аплинком к
# docker-бриджу: через него идёт egress бэкендов на шлюз .254 (профиль A).
#
# Адрес шлюза LB_P2_IP и VIP приватного листенера P2_VIP отвечают одним MAC
# (P2_MAC) — по нему пайплайн отличает L3-трафик к маршрутизатору от
# L2-трафика сегмента.
P2_IFNAME=p2
P2_OFPORT=2
P2_MAC=02:42:0a:14:00:01
P2_NET=10.20.0.0/24
P2_DOCKER_GW=10.20.0.254
LB_P2_IP=10.20.0.1
BE1_IP=10.20.0.2
BE1_MAC=02:42:0a:14:00:02
BE1_PORT=8080
BE1_OFPORT=10
BE1_ID=0x1
BE3_IP=10.20.0.3
BE3_MAC=02:42:0a:14:00:03
BE3_PORT=8080
BE3_OFPORT=11
BE3_ID=0x3
# Клиент внутри сегмента — та самая ВМ, что живёт рядом с бэкендами.
# В его ОС не настраивается ничего, кроме адреса: VIP находится в его подсети.
CLI2_IP=10.20.0.10
CLI2_MAC=02:42:0a:14:00:0a
CLI2_OFPORT=12
# Уникальный адрес узла в сегменте — источник health-проб (§7.1 дизайна v1).
# Живёт на internal-порту OVS: это единственный адрес, который узел держит в
# ядре, весь остальной форвардинг идёт мимо стека.
@@ -37,23 +54,43 @@ HC2_OFPORT=4
HC2_MAC=02:42:0a:14:00:fd
HC2_IP=10.20.0.253
# --- сеть 3: приватный сегмент бэкенда be2 -----------------------------------
# --- сеть 3: приватный сегмент 10.30.0.0/24 ----------------------------------
P3_IFNAME=p3
P3_OFPORT=3
P3_MAC=02:42:0a:1e:00:01
P3_NET=10.30.0.0/24
P3_DOCKER_GW=10.30.0.254
LB_P3_IP=10.30.0.1
BE2_IP=10.30.0.2
BE2_MAC=02:42:0a:1e:00:02
BE2_PORT=8080
BE2_OFPORT=20
BE2_ID=0x2
BE4_IP=10.30.0.3
BE4_MAC=02:42:0a:1e:00:03
BE4_PORT=8080
BE4_OFPORT=21
BE4_ID=0x4
CLI3_IP=10.30.0.10
CLI3_MAC=02:42:0a:1e:00:0a
CLI3_OFPORT=22
HC3_IFNAME=hcif-p3
HC3_OFPORT=5
HC3_MAC=02:42:0a:1e:00:fd
HC3_IP=10.30.0.253
# --- приватные листенеры (шаг 3) ---------------------------------------------
# VIP берётся из подсети сегмента: клиенту не нужны ни маршруты, ни настройки —
# адрес находится в его собственной сети, ARP-респондер OVS отвечает за него.
#
# PRIV_LISTENERS перечисляет сегменты, где листенер поднят. Пустое значение
# выключает приватные листенеры целиком, "p2" — включает один сегмент,
# "p2 p3" — оба. Пул и таблица слотов общие с публичным листенером.
PRIV_LISTENERS="p2 p3"
PRIV_VIP_PORT=80
P2_VIP=10.20.0.100
P3_VIP=10.30.0.100
# --- пул и таблица слотов ----------------------------------------------------
# POOL_ID служит basis хэша multipath: разные пулы дают независимые раскладки.
POOL_ID=1