Изолированная сеть на VLAN
- Проверено на версии — 2.2.1
- Требуется — два сетевых агента в кластере, VLAN 300 на коммутаторе до обеих машин
Выделенной сети даётся собственная таблица маршрутизации: её трафик изолирован от остального трафика балансировщиков и от других таких же сетей, даже если адреса пересекаются. Сеть заходит на агенты по VLAN. Значения — из сквозного примера.
Что получится
- На каждом агенте кластера появится устройство
demoсо своей таблицей маршрутизации и подчинённый ему интерфейсens19.300. - Каждый агент получит адрес в сети
10.88.0.0/24. - Адрес
10.88.0.1будет поднят на одном из агентов и переедет на второй, если тот откажет. - Трафик этой сети не будет виден из общей таблицы маршрутизации и наоборот.
Перед началом
- Оба сетевых агента зарегистрированы в кластере и находятся в состоянии Работает. Список — в разделе Сеть.
- VLAN 300 доведён коммутатором до интерфейса
ens19обеих машин. Система тег на коммутаторе не настраивает. - Адреса
10.88.0.0/24не используются в общей сети балансировщиков.
Настройка
- Откройте раздел Главная → Кластеры балансировки и перейдите в кластер
slb-1. - В боковом меню выберите раздел VRF и нажмите Создать VRF.
- В поле Имя введите
demo. - В блоке Сегменты подключения заполните единственный сегмент:
- Интерфейс на агентах — Data-интерфейс агента, если рабочий трафик на обеих машинах идёт через один и тот же интерфейс. Иначе выберите Указать имя и введите
ens19. - Тип подключения — VLAN.
- VLAN ID —
300. - Сеть, IPv4 —
10.88.0.0/24. - Плавающий шлюз, IPv4 —
10.88.0.1.
- Интерфейс на агентах — Data-интерфейс агента, если рабочий трафик на обеих машинах идёт через один и тот же интерфейс. Иначе выберите Указать имя и введите
- Блок Узлы заполнять не нужно: оба агента кластера уже в списке, а адреса им выдаст система. Поля IPv4 оставьте пустыми.
- Нажмите Сохранить.
Система назначит профилю номер таблицы маршрутизации и разошлёт настройки агентам. Выданные адреса появятся под полями IPv4 при следующем открытии формы.
Адреса выдаются предсказуемо: система переносит хостовую часть адреса рабочего трафика агента в сеть сегмента. Агент с адресом 10.10.10.11 получит 10.88.0.11, агент с 10.10.10.12 — 10.88.0.12. Если такой адрес занят или лежит вне диапазона выдачи, подбирается другой свободный.
Проверка
В интерфейсе системы
- В списке VRF профиль
demoпоказывает сеть10.88.0.0/24, число агентов2и статус Работает. - На вкладке Сеть → <сетевой агент> → Интерфейсы у каждого агента появились устройство
demoтипаvrfи интерфейсens19.300, оба в рабочем состоянии. - На вкладке IP/VIP у каждого агента есть адрес из сети
10.88.0.0/24, а у одного из них — ещё и плавающий шлюз10.88.0.1. - На вкладке Соседи видны узлы сети
10.88.0.0/24на интерфейсеens19.300. Это подтверждает, что VLAN действительно доведён до машины: соседи появляются только при реальном обмене на канальном уровне. - Трафик сегмента можно снять инструментом TCP Dump, выбрав интерфейс
ens19.300.
Переезд плавающего шлюза проверяется остановкой агента, который его держит: адрес 10.88.0.1 должен появиться на вкладке IP/VIP второго агента.
На машине
Нужно, только если картина в интерфейсе не сходится — например, устройство есть, а связности нет.
ip route show vrf demo # таблица маршрутизации сети
ip vrf exec demo ping -c3 10.88.0.114 # связность внутри VRF
ping -c3 10.88.0.114 # то же вне VRF: пакеты идти НЕ должныПоследняя команда должна закончиться потерей всех пакетов либо сообщением о недоступности сети. Если она проходит, изоляции нет: проверьте, что тот же адрес не настроен где-то ещё, вне профиля.
Частые ошибки
| Сообщение | Что означает | Что сделать |
|---|---|---|
не задана сеть сегмента: укажите сеть IPv4 или IPv6 — из неё выдаются адреса агентам | У сегмента не заполнено ни одно поле Сеть | Заполните Сеть, IPv4 или Сеть, IPv6 |
вне подсети 10.88.0.0/24 узла slb-node-1 — клиенты сегмента не увидят шлюз вне своей подсети | Плавающий шлюз задан вне сети сегмента | Выберите адрес шлюза внутри сети сегмента |
совпадает с адресом узла ... — плавающий шлюз обязан быть свободным | Адрес шлюза уже выдан агенту | Возьмите другой адрес либо выведите его из диапазона выдачи |
Привязка VRF (vlan-сегмент, интерфейс ens19, VLAN 300) уже используется другим VRF | Пара «интерфейс и VLAN» занята другим профилем | Возьмите другой VLAN либо перенесите сегмент в существующий профиль |
Интерфейс "ens19" — data-интерфейс агента slb-node-1: целиком отдать его тенантскому VRF нельзя, заведите vlan-сегмент на этом же интерфейсе | Выбран тип подключения Без тега на интерфейсе рабочего трафика | Смените тип подключения на VLAN |
Производное имя интерфейса VRF ... при лимите ядра | Имя профиля вместе с именем интерфейса и номером VLAN не помещается в ограничение ядра | Сократите имя профиля |
Профиль сохранился, но на агентах ничего не появилось — откройте Проверку и диагностику.
Дальше
- Балансировка внутри VRF — поднять в этой сети конфигурацию балансировки.
- IPv4 и IPv6 в одном VRF — добавить сети IPv6.