Развертывание виртуальных сетевых модулей высокой доступности в Azure Stack Hub

В этой статье показано, как развернуть набор виртуальных сетевых модулей (NVA) для обеспечения высокой доступности в Azure Stack Hub. Виртуальный сетевой модуль обычно используется для управления передачей сетевого трафика из сети периметра к другим сетям и подсетям. Статья включает примеры архитектуры для передачи входящего и исходящего трафика по отдельности и вместе.

В Azure Stack Hub Marketplace доступны NVA от разных поставщиков. Для достижения оптимальной производительности можно использовать один из них.

Архитектура состоит из следующих компонентов.

Сети и балансировка нагрузки

  • Виртуальная сеть и подсети. Каждая виртуальная машина Azure развертывается в виртуальной сети, которую можно разделить на подсети. Создайте отдельные подсети для каждого уровня.

  • Подсистема балансировки нагрузки уровня 7. Так как Шлюз приложений пока недоступен в Azure Stack Hub, на рынке Azure Stack Hub доступны альтернативные варианты, такие как: KEMP LoadMaster Load Balancer ADC Content Switchf5/ Big-IP Virtual Edition или A10 vThunder ADC

  • Подсистемы балансировки нагрузки. Azure Load Balancer позволяет распределять трафик с уровня Web на уровень Business, а также с уровня Business к SQL Server.

  • Группы безопасности сети (NSG). NSG позволяют ограничить трафик в виртуальной сети. Например, в приведенной здесь трехуровневой архитектуре уровень базы данных не принимает трафик из веб-интерфейса, а только с уровня Business и из подсети управления.

  • определяемые пользователем ТИПЫ. Маршрутизируйте трафик в конкретную подсистему балансировки нагрузки с помощью определяемых пользователем маршрутов.

Для работы с этой статьей необходимо иметь общее представление о работе с сетями Azure Stack Hub.

Схемы архитектуры

Виртуальные сетевые модули можно развернуть в сети периметра с разными архитектурами. На следующем рисунке показан пример использования одного виртуального сетевого модуля для входящего трафика.

Screenshot that shows the use of a single NVA for ingress.

В этой архитектуре виртуальный сетевой модуль позволяет установить границу в виде безопасной сети путем проверки всего входящего и исходящего сетевого трафика и передачи трафика, соответствующего правилам безопасности сети. Тот факт, что весь сетевой трафик проходит через NVA, означает, что NVA является единой точкой отказа в сети. При сбое в работе NVA путь для сетевого трафика и все внутренние подсети недоступны.

Для обеспечения высокой доступности для NVA разверните несколько модулей в группе доступности.

В следующих примерах архитектур описаны ресурсы и конфигурации, необходимые для обеспечения высокой доступности для NVA:

Решение Преимущества Рекомендации
Входящий трафик с NVA уровня 7 Все узлы NVA активны. Требуется NVA, который может завершать соединения и использовать SNAT.
Требуется отдельный набор NVA для трафика, поступающего из корпоративной сети или Интернета и Azure Stack Hub.
Может использоваться только для трафика, внешнего по отношению к среде Azure Stack Hub.
Исходящий трафик с NVA уровня 7 Все узлы NVA активны. Требуется NVA, который может завершить соединения и реализует преобразование адресов исходной сети (SNAT).
Входящий и исходящий трафик с NVA уровня 7 Все узлы активны.
Возможность обработки трафика, созданного в Azure Stack Hub.
Требуется NVA, который может завершать соединения и использовать SNAT.
Требуется отдельный набор NVA для трафика, поступающего из корпоративной сети или Интернета и Azure Stack Hub.

Входящий трафик с NVA уровня 7

На следующем рисунке показана архитектура высокой доступности, реализующая входящий трафик сети периметра за пределами подсистемы балансировки нагрузки, доступной в Интернете. Эта архитектура предназначена для подключения к рабочим нагрузкам Azure Stack Hub для трафика уровня 7, например HTTP или HTTPS.

A screenshot of a map Description automatically generated

Преимущество этой архитектуры состоит в том, что NVA активны и в случае сбоя одного подсистема балансировки нагрузки направляет сетевой трафик на другой. Оба NVA направляют трафик на внутреннюю подсистему балансировки нагрузки, и пока один из них активен, трафик по-прежнему передается. Виртуальные сетевые модули необходимы для завершения передачи SSL-трафика, предназначенного для виртуальных машин веб-уровня. Их невозможно расширить для обработки трафика корпоративной сети, так как для этого требуется другой набор NVA с собственными сетевыми маршрутами.

Исходящий трафик с NVA уровня 7

Чтобы предоставить исходящий трафик сети периметра для исходящих запросов рабочей нагрузки Azure Stack Hub, можно развернуть архитектуру входящего трафика с NVA уровня 7. Следующая архитектура предназначена для обеспечения высокого уровня доступности NVA в сети периметра для трафика уровня 7, например HTTP или HTTPS:

A screenshot of a cell phone Description automatically generated

В этой архитектуре весь исходящий трафик в Azure Stack Hub направляется во внутреннюю подсистему балансировки нагрузки. Подсистема балансировки нагрузки распределяет исходящие запросы между набором виртуальных сетевых модулей. Эти модули направляют трафик в Интернет по отдельным общедоступным IP-адресам.

Входящий и исходящий трафик с NVA уровня 7

В двух архитектурах входящего и исходящего трафика существовала отдельная сеть периметра для входящего и исходящего трафика. На схеме следующей архитектуры представлены сведения о том, как создать сеть периметра, которая может использоваться для входящего и исходящего трафика уровня 7, например HTTP или HTTPS:

A screenshot of a social media post Description automatically generated

В архитектуре входящего и исходящего трафика с NVA уровня 7 NVA обрабатывают входящие запросы от Load Balancer уровня 7. Кроме того, они обрабатывают исходящие запросы из рабочей нагрузки виртуальных машин в пуле внутренней подсистемы балансировки нагрузки. Так как входящий трафик направляется подсистемой балансировки нагрузки уровня 7, а исходящий — SLB (Load Balancer уровня "Базовый" Azure Stack Hub), NVA отвечают за обеспечение сходства сеансов. То есть подсистема балансировки нагрузки уровня 7 поддерживает сопоставление входящих и исходящих запросов. Благодаря этому она может перенаправлять правильный ответ запросившей стороне. Но внутренняя подсистема балансировки нагрузки не имеет доступа к сопоставлениям подсистемы балансировки нагрузки уровня 7 и использует собственную логику для отправки ответов на NVA. Подсистема балансировки нагрузки может отправить ответ на NVA, который изначально не получил запрос из подсистемы балансировки нагрузки уровня 7. В этом случае модули должны взаимодействовать и передавать ответ между собой, чтобы правильный модуль переслал ответ подсистеме балансировки нагрузки уровня 7.

Примечание

Вы также можете решить проблему асимметричной маршрутизации, настроив виртуальные системные модули таким образом, чтобы они выполняли преобразование адресов исходной сети (SNAT). При этом исходный IP-адрес источника запросившей стороны заменяется на один из IP-адресов входящего потока NVA. Теперь вы можете использовать несколько виртуальных системных модулей одновременно, сохраняя симметрию маршрута.

Дальнейшие действия