Сети передачи данных

Сети передачи данных обеспечивают взаимодействие узлов и сервисов KeyStack, подключение к СХД и передачу трафика виртуальных машин (ВМ). В архитектуре выделяются три уровня:

  • Underlay — физическая сеть коммутаторов и маршрутизаторов в ЦОД.

  • Инфраструктурные сети — L2/L3-сегменты, выделенные в сети ЦОД для сервисов и узлов платформы.

  • Виртуальные сети (Overlay) — сети проектов, создаваемые и управляемые пользователями или администраторами средствами виртуализации сетей.

Физическая сеть ЦОД (Underlay)

Физическая сеть ЦОД (Underlay) состоит из аппаратных коммутаторов и маршрутизаторов. Она обеспечивает связность серверов и служит основой для обеспечения пропускной способности и надёжности облачной инфраструктуры.

Сеть строится по топологии Spine–Leaf. Каждый коммутатор уровня стойки (Leaf) соединяется с каждым коммутатором уровня зала ЦОД (Spine). Серверы подключаются к Leaf-коммутаторам. Пограничные маршрутизаторы, если они необходимы, подключаются аналогично серверам — к выделенным Leaf-коммутаторам, которые называются Border Leaf.

Трафик между серверами, подключёнными к разным Leaf-коммутаторам, проходит через уровень Spine. Протоколы маршрутизации определяют пути передачи трафика, а механизм ECMP (Equal-Cost Multi-Path) позволяет распределять его между несколькими путями равной стоимости.

Топология физической сети ЦОД

Топология физической сети ЦОД

Физическая сеть состоит из двух независимых доменов сетевых коммутаторов.

Первый домен предназначен для передачи трафика сети OOB и построен по топологии Spine–Leaf без резервирования: используется один Spine-коммутатор, к которому каждый Leaf-коммутатор подключён одним портом. В каждой физической стойке установлен один Leaf-коммутатор.

Второй домен предназначен для передачи трафика остальных инфраструктурных сетей и подключения пограничных маршрутизаторов и межсетевых экранов и построен по топологии Spine–Leaf с резервированием: используется несколько Spine-коммутаторов, а каждый Leaf-коммутатор соединён с каждым Spine-коммутатором одним портом. Leaf-коммутаторы одной стойки объединены в домен MC-LAG (Multi-Chassis Link Aggregation) для резервирования каналов передачи данных.

Домены коммутации физической сети ЦОД

Домены коммутации физической сети ЦОД

Инфраструктурные сети

Инфраструктурные сети — это группа L2/L3-доменов, организованных в физической сети ЦОД (Underlay). KeyStack использует следующие домены для объединения трафика по типам:

  • OOB — управление и мониторинг оборудования через интерфейсы BMC, например iLO, IPMI или iDRAC, независимо от хостовой ОС.

  • Management — управление ОС физических серверов, развёртывание серверов через сетевую загрузку PXE и взаимодействие сервисов платформы.

  • External — взаимодействие сервисов KeyStack с внешними системами, пользователями и администраторами.

  • Tenant Networks — транспорт для виртуальных сетей проектов. Для изоляции трафика используются VLAN или туннели GRE/VXLAN.

  • Floating IP — внешняя маршрутизируемая сеть для доступа к ВМ через трансляцию адресов.

  • Storage — доступ к программно определяемым СХД и хранилищам, подключаемым по iSCSI.

Сети External и Floating IP решают разные задачи: доступ к сервисам платформы и доступ к ВМ соответственно. Размещение инфраструктурных сетей в физических сегментах определяется проектом инсталляции.

Подготовка сети для установки серверов описана в разделе Подготовка серверной инфраструктуры, настройка сетей региона — в разделе Развёртывание сети региона.

Виртуальные сети (Overlay)

Виртуальные сети объединяют ВМ в сети проектов и обеспечивают их связь с внешними сетями. Пользователи управляют сетями, подсетями, портами и маршрутизаторами через Neutron. В базовой конфигурации используется механизм ML2/Open vSwitch (OVS).

OVS работает на вычислительных (Compute) и сетевых (Network) узлах. Compute-узлы подключают порты ВМ к виртуальным коммутаторам, а Network-узлы предоставляют маршрутизацию, NAT и DHCP. Сетевые агенты взаимодействуют с управляющими сервисами через RabbitMQ. В зависимости от конфигурации сети для передачи трафика между узлами используются VLAN или туннели VXLAN/GRE.

Настройка механизма описана в разделе Настройка ML2/OVS, управление сетями и маршрутизаторами — в разделе Подсистема передачи данных.

Трафик между ВМ (East–West)

В одной виртуальной сети ВМ обмениваются трафиком через OVS. Если они находятся на разных Compute-узлах, трафик передаётся через физическую сеть с изоляцией VLAN или инкапсуляцией VXLAN/GRE.

Организация передачи трафика между ВМ в одной VLAN

Организация передачи трафика между ВМ в одной VLAN

Организация передачи трафика между ВМ в разных VLAN

Организация передачи трафика между ВМ в разных VLAN

Для связи между разными виртуальными сетями требуется маршрутизация. Путь через виртуальный маршрутизатор зависит от его размещения и режима работы. В централизованной конфигурации маршрутизатор обслуживается Network-узлом.

Организация передачи трафика между ВМ в одной сети VXLAN/GRE

Организация передачи трафика между ВМ в одной сети VXLAN/GRE

Организация передачи трафика между ВМ в разных сетях VXLAN/GRE

Организация передачи трафика между ВМ в разных сетях VXLAN/GRE

Трафик во внешние сети (North–South)

ВМ может подключаться к внешней сети через провайдерскую сеть или через виртуальный маршрутизатор с трансляцией адресов.

В провайдерской сети порт ВМ связан с сегментом физической сети через OVS на Compute-узле. Дальнейшая маршрутизация выполняется сетевым оборудованием ЦОД.

Организация передачи трафика между ВМ и внешней сетью через провайдерскую сеть

Организация передачи трафика между ВМ и внешней сетью через провайдерскую сеть

В централизованной конфигурации с NAT трафик поступает от Compute-узла к маршрутизатору на Network-узле. Для исходящих соединений применяется SNAT. Floating IP обеспечивает трансляцию внешнего адреса в адрес порта ВМ и обратную трансляцию для ответного трафика.

Организация передачи трафика между ВМ и внешней сетью через централизованный NAT

Организация передачи трафика между ВМ и внешней сетью через централизованный NAT