Развертывание виртуальных сетевых модулей высокой доступности в Azure Stack HubDeploy highly available network virtual appliances on Azure Stack Hub

В этой статье показано, как развернуть набор виртуальных сетевых модулей (NVA) для обеспечения высокой доступности в Azure Stack Hub.This article shows you how to deploy a set of network virtual appliances (NVAs) for high availability in Azure Stack Hub. Виртуальный сетевой модуль обычно используется для управления передачей сетевого трафика из сети периметра к другим сетям и подсетям.An NVA is typically used to control the flow of network traffic from a perimeter network, also known as a DMZ, to other networks or subnets. Статья включает примеры архитектуры для передачи входящего и исходящего трафика по отдельности и вместе.The article includes example architectures for ingress only, egress only, and both ingress and egress.

В Azure Stack Hub Marketplace доступны NVA от разных поставщиков. Для достижения оптимальной производительности можно использовать один из них.There are NVAs from different vendors available on Azure Stack Hub Marketplace, use one of them for optimal performance.

Архитектура состоит из следующих компонентов.The architecture has the following components.

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

  • Виртуальные сети и подсети.Virtual network and subnets. Каждая виртуальная машина Azure развертывается в виртуальной сети, которую можно разделить на подсети.Every Azure VM is deployed into a virtual network that can be segmented into subnets. Создайте отдельные подсети для каждого уровня.Create a separate subnet for each tier.

  • Подсистема балансировки нагрузки уровня 7.Layer 7 Load Balancer. Так как в Azure Stack Hub Шлюз приложений пока недоступен, в Azure Stack Hub Marketplace доступны альтернативные варианты, например: подсистема балансировки нагрузки LoadMaster с переключением контента контроллера доставки приложений/ F5 Big-IP Virtual Edition или A10 vThunder ADC.As Application Gateway is not yet available on Azure Stack Hub, there are alternatives available on Azure Stack Hub Market place such as: KEMP LoadMaster Load Balancer ADC Content Switch/ f5 Big-IP Virtual Edition or A10 vThunder ADC

  • Подсистемы балансировки нагрузки.Load balancers. Azure Load Balancer позволяет распределять трафик с уровня Web на уровень Business, а также с уровня Business к SQL Server.Use Azure Load Balancerto distribute network traffic from the web tier to the business tier, and from the business tier to SQL Server.

  • Группы безопасности сети (NSG).Network security groups (NSGs). NSG позволяют ограничить трафик в виртуальной сети.Use NSGs to restrict network traffic within the virtual network. Например, в приведенной здесь трехуровневой архитектуре уровень базы данных не принимает трафик из веб-интерфейса, а только с уровня Business и из подсети управления.For example, in the three-tier architecture shown here, the database tier doesn't accept traffic from the web front end, only from the business tier and the management subnet.

  • Определяемые пользователем маршруты.UDRs. Маршрутизируйте трафик в конкретную подсистему балансировки нагрузки с помощью определяемых пользователем маршрутов.Use user-defined routes (UDRs) to route traffic to the specific load balancer.

Для работы с этой статьей необходимо иметь общее представление о работе с сетями Azure Stack Hub.This article assumes a basic understanding of Azure Stack Hub networking.

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

Виртуальные сетевые модули можно развернуть в сети периметра с разными архитектурами.An NVA can be deployed to a perimeter network in many different architectures. На следующем рисунке показан пример использования одного виртуального сетевого модуля для входящего трафика.For example, the following figure illustrates the use of a single NVA for ingress.

Снимок экрана, на котором показано использование одного NVA для входных данных.

В этой архитектуре виртуальный сетевой модуль позволяет установить границу в виде безопасной сети путем проверки всего входящего и исходящего сетевого трафика и передачи трафика, соответствующего правилам безопасности сети.In this architecture, the NVA provides a secure network boundary by checking all inbound and outbound network traffic and passing only the traffic that meets network security rules. Тот факт, что весь сетевой трафик проходит через NVA, означает, что NVA является единой точкой отказа в сети.The fact that all network traffic must pass through the NVA means that the NVA is a single point of failure in the network. При сбое в работе NVA путь для сетевого трафика и все внутренние подсети недоступны.If the NVA fails, there is no other path for network traffic and all the back-end subnets are unavailable.

Для обеспечения высокой доступности для NVA разверните несколько модулей в группе доступности.To make an NVA highly available, deploy more than one NVA into an availability set.

В следующих примерах архитектур описаны ресурсы и конфигурации, необходимые для обеспечения высокой доступности для NVA:The following architectures describe the resources and configuration necessary for highly available NVAs:

РешениеSolution ПреимуществаBenefits РекомендацииConsiderations
Входящий трафик с NVA уровня 7Ingress with layer 7 NVAs Все узлы NVA активны.All NVA nodes are active. Требуется NVA, который может завершать соединения и использовать SNAT.Requires an NVA that can terminate connections and use SNAT.
Требуется отдельный набор NVA для трафика, поступающего из корпоративной сети или Интернета и Azure Stack Hub.Requires a separate set of NVAs for traffic coming from the Enterprise Network/Internet and from Azure Stack Hub.
Может использоваться только для трафика, внешнего по отношению к среде Azure Stack Hub.Can only be used for traffic originating outside Azure Stack Hub.
Исходящий трафик с NVA уровня 7Egress with layer 7 NVAs Все узлы NVA активны.All NVA nodes are active. Требуется NVA, который может завершить соединения и реализует преобразование адресов исходной сети (SNAT).Requires an NVA that can terminate connections and implements source network address translation (SNAT).
Входящий и исходящий трафик с NVA уровня 7Ingress-Egress with layer 7 NVAs Все узлы активны.All nodes are active.
Возможность обработки трафика, созданного в Azure Stack Hub.Able to handle traffic originated in Azure Stack Hub.
Требуется NVA, который может завершать соединения и использовать SNAT.Requires an NVA that can terminate connections and use SNAT.
Требуется отдельный набор NVA для трафика, поступающего из корпоративной сети или Интернета и Azure Stack Hub.Requires a separate set of NVAs for traffic coming from the Enterprise Network/Internet and from Azure Stack Hub.

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

На следующем рисунке показана архитектура высокой доступности, реализующая входящий трафик сети периметра за пределами подсистемы балансировки нагрузки, доступной в Интернете.The following figure shows a high availability architecture that implements an ingress perimeter network behind an internet-facing load balancer. Эта архитектура предназначена для подключения к рабочим нагрузкам Azure Stack Hub для трафика уровня 7, например HTTP или HTTPS.This architecture is designed to provide connectivity to Azure Stack Hub workloads for layer 7 traffic, such as HTTP or HTTPS:

Снимок экрана автоматически созданного описания карты

Преимущество этой архитектуры состоит в том, что NVA активны и в случае сбоя одного подсистема балансировки нагрузки направляет сетевой трафик на другой.The benefit of this architecture is that all NVAs are active, and if one fails the load balancer directs network traffic to the other NVA. Оба NVA направляют трафик на внутреннюю подсистему балансировки нагрузки, и пока один из них активен, трафик по-прежнему передается.Both NVAs route traffic to the internal load balancer so as long as one NVA is active, traffic continues to flow. Виртуальные сетевые модули необходимы для завершения передачи SSL-трафика, предназначенного для виртуальных машин веб-уровня.The NVAs are required to terminate SSL traffic intended for the web tier VMs. Их невозможно расширить для обработки трафика корпоративной сети, так как для этого требуется другой набор NVA с собственными сетевыми маршрутами.These NVAs cannot be extended to handle Enterprise Network traffic because Enterprise Network traffic requires another dedicated set of NVAs with their own network routes.

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

Чтобы предоставить исходящий трафик сети периметра для исходящих запросов рабочей нагрузки Azure Stack Hub, можно развернуть архитектуру входящего трафика с NVA уровня 7.The Ingress with layer 7 NVAs architecture can be expanded to provide an egress perimeter network for requests originating in the Azure Stack Hub workload. Следующая архитектура предназначена для обеспечения высокого уровня доступности NVA в сети периметра для трафика уровня 7, например HTTP или HTTPS:The following architecture is designed to provide high availability of the NVAs in the perimeter network for layer 7 traffic, such as HTTP or HTTPS:

Снимок экрана с автоматически созданным описанием сотового телефона

В этой архитектуре весь исходящий трафик в Azure Stack Hub направляется во внутреннюю подсистему балансировки нагрузки.In this architecture, all traffic originating in Azure Stack Hub is routed to an internal load balancer. Подсистема балансировки нагрузки распределяет исходящие запросы между набором виртуальных сетевых модулей.The load balancer distributes outgoing requests between a set of NVAs. Эти модули направляют трафик в Интернет по отдельным общедоступным IP-адресам.These NVAs direct traffic to the Internet using their individual public IP addresses.

Входящий и исходящий трафик с NVA уровня 7Ingress-egress with layer 7 NVAs

В двух архитектурах входящего и исходящего трафика существовала отдельная сеть периметра для входящего и исходящего трафика.In the two ingress and egress architectures, there was a separate perimeter network for ingress and egress. На схеме следующей архитектуры представлены сведения о том, как создать сеть периметра, которая может использоваться для входящего и исходящего трафика уровня 7, например HTTP или HTTPS:The following architecture demonstrates how to create a perimeter network that can be used for both ingress and egress for layer 7 traffic, such as HTTP or HTTPS:

Снимок экрана с автоматически созданным описанием публикации в социальных сетях

В архитектуре входящего и исходящего трафика с NVA уровня 7 NVA обрабатывают входящие запросы от Load Balancer уровня 7.In the Ingress-egress with layer 7 NVAs architecture, the NVAs process incoming requests from a Layer 7 Load Balancer. Кроме того, они обрабатывают исходящие запросы из рабочей нагрузки виртуальных машин в пуле внутренней подсистемы балансировки нагрузки.The NVAs also process outgoing requests from the workload VMs in the back-end pool of the load balancer. Так как входящий трафик направляется подсистемой балансировки нагрузки уровня 7, а исходящий — SLB (Load Balancer уровня "Базовый" Azure Stack Hub), NVA отвечают за обеспечение сходства сеансов.Because incoming traffic is routed with a layer 7 load balancer, and outgoing traffic is routed with an SLB (Azure Stack Hub Basic Load Balancer), the NVAs are responsible for maintaining session affinity. То есть подсистема балансировки нагрузки уровня 7 поддерживает сопоставление входящих и исходящих запросов. Благодаря этому она может перенаправлять правильный ответ запросившей стороне.That is, the layer 7 load balancer maintains a mapping of inbound and outbound requests so it can forward the correct response to the original requestor. Но внутренняя подсистема балансировки нагрузки не имеет доступа к сопоставлениям подсистемы балансировки нагрузки уровня 7 и использует собственную логику для отправки ответов на NVA.However, the internal load balancer doesn't have access to the layer 7 load balancer mappings, and uses its own logic to send responses to the NVAs. Подсистема балансировки нагрузки может отправить ответ на NVA, который изначально не получил запрос из подсистемы балансировки нагрузки уровня 7.It's possible the load balancer could send a response to an NVA that did not initially receive the request from the layer 7 load balancer. В этом случае модули должны взаимодействовать и передавать ответ между собой, чтобы правильный модуль переслал ответ подсистеме балансировки нагрузки уровня 7.In this case, the NVAs must communicate and transfer the response between them so the correct NVA can forward the response to the layer 7 load balancer.

Примечание

Вы также можете решить проблему асимметричной маршрутизации, настроив виртуальные системные модули таким образом, чтобы они выполняли преобразование адресов исходной сети (SNAT).You can also solve the asymmetric routing issue by ensuring the NVAs perform inbound source network address translation (SNAT). При этом исходный IP-адрес источника запросившей стороны заменяется на один из IP-адресов входящего потока NVA.This would replace the original source IP of the requestor to one of the IP addresses of the NVA used on the inbound flow. Теперь вы можете использовать несколько виртуальных системных модулей одновременно, сохраняя симметрию маршрута.This ensures that you can use multiple NVAs at a time, while preserving the route symmetry.

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