IP-fabric
IP-fabric — один из типов настройки сети кластера. Такой тип настройки позволяет создавать виртуальные машины (ВМ) с публичными IP-адресами в приватной сети.
ВМ в кластере IP-fabric получают IPv4-адреса с маской /32 или IPv6-адреса с маской /128. В качестве шлюза по умолчанию для каждой ВМ используется отдельный виртуальный интерфейс. Узлы кластера выполняют функцию маршрутизаторов.
Маршрутизация в кластере осуществляется с использованием протокола iBGP. Передачу информации о маршрутах iBGP выполняет оборудование Route Reflector (RR). В качестве такого оборудования могут использоваться физические или виртуальные маршрутизаторы и/или серверы. Рекомендуем использовать не менее двух комплектов оборудования RR в одном кластере — основного и резервного.
Для работы IPv4-сети в кластере используйте не менее одного комплекта оборудования RR с IPv4-адресом, для работы IPv6-сети — не менее одного комплекта с IPv6-адресом.
Преимущества использования IP-fabric:
- снижение объёма служебного трафика;
- экономия адресного пространства;
- изоляция трафика ВМ;
- отсутствие привязки IP-адресов к узлам кластера;
- возможность оперативной миграции ВМ между узлами кластера.
На узлах кластера IP-fabric не поддерживается создание сетевых мостов (бриджей).
Логика работы
При создании ВМ в кластере IP-fabric:
- Платформа VMmanager:
- Создаёт отдельный виртуальный интерфейс <vmname>_net0. Например, для ВМ с именем sea_gold, интерфейс будет называться sea_gold_net0. Все виртуальные интерфейсы на узле будут иметь одинаковые IP и MAC-адреса.
- Устанавливает IP-адрес созданного интерфейса в качестве шлюза для ВМ. Маршрутизация между ВМ и шлюзом осуществляется через соединение "точка-точка" (PtP).
- Добавляет созданный маршрут в конфигурацию сервиса FRR на узле кластера.
- Создаёт отдельный виртуальный интерфейс <vmname>_net0. Например, для ВМ с именем sea_gold, интерфейс будет называться sea_gold_net0. Все виртуальные интерфейсы на узле будут иметь одинаковые IP и MAC-адреса.
- Сервис FRR передаёт информацию о созданном маршруте по протоколу iBGP на оборудование RR.
- Оборудование RR передаёт информацию о маршруте на оборудование Core Gateway. После этого ВМ становится доступна из внешней сети (интернета).
Пример работы кластера IP-fabric
Порядок настройки
- В VMmanager:
- Создайте пул IP-адресов для ВМ. Подробнее см. Работа с пулами.
- Создайте кластер с типом настройки сети IP-fabric. Подробнее см. Создание кластера. При создании укажите:
- IP-адрес шлюза для ВМ. VMmanager будет присваивать этот адрес всем виртуальным интерфейсам на узле кластера и использовать его только для маршрутизации между ВМ на узле. Рекомендуем указать частный IP-адрес (например, 10.0.0.1). Этот адрес не должен использоваться где-либо ещё в локальной сети;
- BGP-комьюнити;
- IP-адреса и номера автономных систем оборудования RR.
Добавьте узлы в кластер. Подробнее см. Управление серверами кластера.
На узлах кластера IP-fabric с виртуализацией KVM должна быть установлена ОС AlmaLinux 8, с виртуализацией LXD — ОС Ubuntu 20.04.
- Настройте BGP-сессии для каждого узла кластера на оборудовании RR: укажите в настройках IP-адреса узлов и номера автономных систем BGP. Максимальное количество BGP-сессий — 32.
Пример настройки
В примере рассматривается настройка IP-fabric в кластере серверов, используемых в качестве гипервизоров. Роль Core Gateway выполняет маршрутизатор Juniper MX. В качестве Route Reflector используются физические серверы с ОС Linux.
Подготовка
Для настройки понадобится следующее оборудование:
- сервер с платформой VMmanager;
- один или несколько узлов кластера с установленной ОС AlmaLinux 8 или Ubuntu 20.04;
- один или два сервера Route Reflector;
- маршрутизатор Juniper MX.
Перед настройкой:
- Получите у провайдера информацию о настройках BGP: номере автономной системы и комьюнити.
- Убедитесь, что протокол BGP настроен и функционирует правильно.
- Создайте пул IP-адресов для виртуальных машин в VMmanager.
Настройка маршрутизатора Core Gateway
Чтобы настроить "соседство" Core Gateway и Route Reflector:
Добавьте в конфигурацию маршрутизатора новый фильтр:
CODEДобавьте в конфигурацию маршрутизатора новую группу:
CODEПроверьте и примените конфигурацию:
CODECODEПроверьте, что маршруты BGP получены:
CODEПодтвердите изменения в конфигурации:
CODE
Настройка серверов Route Reflector
Чтобы настроить "соседство" между Route Reflector, Core Gateway и узлами кластера, установите и настройте ПО FRRouting (FRR) версии 10.2 и выше. Вы можете автоматизировать этот процесс с помощью скрипта.
Для установки FRR сервер должен иметь прямой доступ к сети Интернет без использования прокси. При необходимости настройте правила сети так, чтобы подключение к Интернет выполнялось в обход прокси через маршрутизаторы или межсетевые экраны.
Если для Route Reflector используется виртуальная машина под управлением VMmanager, запустите на ней скрипт Route Reflector:
- Перейдите в Виртуальные машины → меню → Запустить скрипт.
- Выберите скрипт Route Reflector и укажите его параметры:
- AS — номер автономной системы BGP.
- NEIGHBOR — IP-адрес "соседа" — узла кластера VMmanager.
- PREFIX — префикс IP-сетей, которые будет принимать Route Reflector.
- Поддержка VxLAN — нужно ли передавать информацию о виртуальных сетях (VxLAN).
- AS — номер автономной системы BGP.
- Нажмите Запустить скрипт.
Если для Route Reflector используется физический сервер:
Создайте файл route_reflector.sh следующего содержания:
- Замените макросы в тексте файла:
- ($AS) — на номер автономной системы BGP.
- ($NEIGHBOR) — на IP-адрес "соседа" — узла кластера VMmanager.
- ($PREFIX) — на префикс IP-сетей, которые будет принимать Route Reflector.
- ($VXLAN) — на:
- уеs — если сервис должен передавать информацию о виртуальных сетях (VxLAN);
- no — если информацию о виртуальных сетях передавать не нужно.
Запустите скрипт:
BASH
При добавлении новых узлов в кластер информацию о них нужно будет добавить в конфигурационный файл FRR. Для этого повторно запустите скрипт с нужными параметрами или внесите изменения вручную в файл /etc/frr/frr.conf.
Настройка VMmanager
Для настройки IP-fabric в VMmanager:
- Cоздайте кластер с типом сети IP-Fabric. При создании укажите настройки для соединения с Core Gateway и Route Reflector.
- Подключите серверы в созданный кластер.
- Создайте ВМ в кластере.
Может быть полезно
Связанные статьи: