Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Azure NAT Gateway é um serviço totalmente gerido de Tradução de Endereços de Rede (NAT) que fornece conectividade à internet de saída para recursos ligados à sua rede virtual privada. O serviço fornece tanto tradução de endereços de rede de origem (SNAT) para ligações de saída quanto tradução de endereços de rede de destino (DNAT) para pacotes de resposta apenas para ligações iniciadas no sentido de saída. Como se situa nos seus caminhos críticos de rede, o Azure NAT Gateway foi concebido para ser um serviço altamente resiliente.
Quando você usa o Azure, a confiabilidade é uma responsabilidade compartilhada. A Microsoft fornece uma variedade de recursos para oferecer suporte à resiliência e à recuperação. Você é responsável por entender como esses recursos funcionam em todos os serviços que você usa e selecionar os recursos necessários para atender aos seus objetivos de negócios e metas de tempo de atividade.
Este artigo descreve como pode tornar o Azure NAT Gateway resiliente a uma variedade de potenciais interrupções e problemas, incluindo falhas transitórias e interrupções em zonas de disponibilidade. Também destaca algumas informações chave sobre o acordo de nível de serviço (SLA) do Azure NAT Gateway.
Importante
Quando considera a fiabilidade de um gateway NAT, também precisa de considerar a fiabilidade das suas máquinas virtuais (VMs), discos, outras infraestruturas de rede e aplicações que correm nas suas VMs. Melhorar a resiliência do gateway NAT por si só pode ter um impacto limitado se os outros componentes não forem igualmente resilientes. Dependendo dos seus requisitos de resiliência, talvez seja necessário fazer alterações de configuração em várias áreas.
Importante
O Standard V2 SKU Azure NAT Gateway está atualmente em pré-visualização. Consulte os Termos de Utilização Complementares das Visualizações Prévias do Microsoft Azure para obter os termos legais que se aplicam às funcionalidades do Azure que estão em beta, em pré-visualização ou que ainda não foram lançadas para disponibilidade geral.
Recomendações de implantação de produção
Para cargas de trabalho de produção, recomendamos que:
-
Use o SKU StandardV2, que ativa automaticamente a redundância de zonas nas regiões suportadas.
Observação
Revise as principais limitações do StandardV2 NAT Gateway antes de o usar, para garantir que a sua configuração é suportada.
- Configure o seu gateway NAT com endereços IP públicos suficientes para gerir os seus requisitos de ligação de pico, o que reduz a probabilidade de problemas de disponibilidade devido ao esgotamento das portas SNAT.
- Use os endereços IP públicos do SKU StandardV2 com o Gateway NAT StandardV2. Os endereços IP públicos de SKU Standard não são suportados com o Gateway NAT StandardV2.
Visão geral da arquitetura de confiabilidade
Esta secção descreve alguns dos aspetos importantes do funcionamento do serviço que são mais relevantes do ponto de vista da fiabilidade. A secção apresenta a arquitetura lógica, que inclui alguns dos recursos e funcionalidades que implementa e utiliza. Também discute a arquitetura física, detalhando como o serviço funciona nos bastidores.
Arquitetura lógica
Um gateway NAT é um recurso que implementas. Para usar o gateway NAT como rota padrão para o tráfego de saída da internet, liga-o a uma ou mais sub-redes na sua rede virtual. Não precisas de configurar rotas personalizadas ou outras configurações de roteamento.
Arquitetura física
Internamente, um gateway NAT consiste numa ou mais instâncias, que representam a infraestrutura subjacente necessária para operar o serviço.
O Azure NAT Gateway implementa uma arquitetura distribuída usando redes definidas por software para proporcionar elevada fiabilidade e escalabilidade. O serviço opera em múltiplos domínios de falha, permitindo-lhe sobreviver a múltiplas falhas de componentes da infraestrutura sem impacto no serviço. O Azure gere as operações de serviço subjacentes, incluindo a distribuição entre domínios de falha e a redundância da infraestrutura.
Para mais informações sobre arquitetura e redundância do Azure NAT Gateway, consulte o recurso Azure NAT Gateway.
Resiliência a falhas transitórias
Falhas transitórias são falhas curtas e intermitentes em componentes. Eles ocorrem com frequência em um ambiente distribuído, como a nuvem, e são uma parte normal das operações. As falhas transitórias corrigem-se após um curto período de tempo. É importante que seus aplicativos possam lidar com falhas transitórias, geralmente tentando novamente as solicitações afetadas.
Todos os aplicativos hospedados na nuvem devem seguir as diretrizes de tratamento de falhas transitórias do Azure quando se comunicam com quaisquer APIs, bancos de dados e outros componentes hospedados na nuvem. Para obter mais informações, consulte Recomendações para o tratamento de falhas transitórias.
O esgotamento das portas SNAT é uma situação em que as aplicações fazem múltiplas ligações independentes ao mesmo endereço IP e porta, esgotando as portas SNAT disponíveis para o endereço IP de saída. A exaustão da porta SNAT pode manifestar-se como uma falha transitória na sua aplicação. Para reduzir a probabilidade de falhas transitórias relacionadas com a tradução de endereços de rede, deve:
Minimizar a probabilidade de esgotamento das portas SNAT. Configure as suas aplicações para gerir o SNAT de forma eficiente, implementando pooling de ligações e uma gestão adequada do ciclo de vida da ligação.
Implemente endereços IP públicos suficientes. Um único gateway NAT suporta múltiplos endereços IP públicos, e cada endereço IP público fornece um conjunto separado de portas SNAT.
Monitorizar a métrica de disponibilidade do caminho de dados do gateway NAT. Use o Azure Monitor para detetar potenciais problemas de conectividade cedo. Configure alertas para falhas de ligação e esgotamento das portas SNAT para identificar e resolver proativamente as condições de falha transitórias antes que afetem a conectividade de saída das suas aplicações. Para saber mais, veja O que são métricas e alertas do Azure NAT Gateway?.
Evite definir valores elevados de timeout de inatividade. Valores de tempo de espera inativos significativamente superiores aos 4 minutos estabelecidos por defeito para as ligações de gateway NAT podem contribuir para o esgotamento da porta SNAT durante volumes elevados de ligação.
Para orientações abrangentes sobre gestão de ligações e resolução de problemas específicos do Azure NAT Gateway, consulte Resolução de Problemas da conectividade do Azure NAT Gateway.
Resiliência a falhas na zona de disponibilidade
As zonas de disponibilidade são grupos fisicamente separados de centros de dados dentro de uma região Azure. Quando uma zona falha, os serviços podem ser transferidos para uma das zonas restantes.
O Azure NAT Gateway suporta zonas de disponibilidade tanto em configurações redundantes como zonais:
Redundante entre zonas: Quando usa o SKU StandardV2 do Azure NAT Gateway, a redundância entre zonas é ativada automaticamente. A redundância de zonas distribui as instâncias do NAT gateway por todas as zonas de disponibilidade da região. Ao usar uma configuração redundante por zona, pode melhorar a resiliência e fiabilidade das suas cargas de trabalho em produção.
Zonal: Quando usa o SKU Standard (v1), pode opcionalmente criar uma configuração zonal. Um gateway NAT zonal é implementado numa única zona de disponibilidade que seleciona. Quando o gateway NAT é implementado para uma zona específica, fornece conectividade de saída à internet explicitamente a partir dessa zona. Endereços IP públicos zonais de uma zona de disponibilidade diferente não são permitidos. Todo o tráfego das subredes ligadas é encaminhado através do gateway NAT, mesmo que esteja numa zona de disponibilidade diferente.
Se um gateway NAT dentro de uma zona de disponibilidade sofrer uma falha, todas as máquinas virtuais nas sub-redes ligadas falham em ligar-se à internet, mesmo que essas VMs estejam em zonas de disponibilidade saudáveis.
Importante
Fixar numa única zona de disponibilidade só é recomendado quando a latência entre diferentes zonas é demasiado alta para as suas necessidades e depois de verificar que a mesma não satisfaz os seus requisitos. Por si só, um recurso zonal não fornece resiliência a uma interrupção da zona de disponibilidade. Para melhorar a resiliência de um recurso zonal, você precisa implantar explicitamente recursos separados em várias zonas de disponibilidade e configurar o roteamento e o failover de tráfego. Para mais informações, consulte Recursos Zonais e resiliência de zonas.
Se implementar máquinas virtuais em várias zonas de disponibilidade e precisar de usar gateways NAT zonais, pode criar pilhas zonais em cada zona de disponibilidade. Para criar pilhas zonais, é necessário implementar:
- Múltiplas sub-redes: Cria-se sub-redes separadas para cada zona de disponibilidade em vez de usar uma única sub-rede que atravessa as zonas.
- Gateways NAT zonais: Cada sub-rede recebe o seu próprio gateway NAT que está implementado na mesma zona de disponibilidade da própria sub-rede.
- Atribuição manual de VM: Coloca explicitamente cada máquina virtual tanto na zona de disponibilidade correta como na sua sub-rede correspondente.
Se implementares um gateway NAT Standard (v1) e não especificares uma zona de disponibilidade, o gateway NAT é então não zonal, o que significa que o Azure seleciona a zona de disponibilidade. Se alguma zona de disponibilidade na região tiver uma falha, o seu gateway NAT pode ser afetado. Não recomendamos uma configuração não zonal porque não oferece proteção contra falhas nas zonas de disponibilidade.
Requerimentos
Apoio regional: Gateways NAT redundantes de zona e zonais podem ser implementados em qualquer região que suporte zonas de disponibilidade.
SKU: Para implementar um gateway NAT redundante por zona, deve usar o SKU StandardV2. Para implementar um gateway NAT zonal, deve usar o SKU Standard. Recomendamos o uso do SKU StandardV2.
Endereços IP públicos: Os requisitos para endereços IP públicos ligados a um gateway NAT dependem do SKU e da configuração de implementação:
NAT Gateway SKU Tipo de suporte à zona de disponibilidade Requisitos de propriedade intelectual pública StandardV2 Com redundância entre zonas Deve ser implementado com IP Público StandardV2 Standard Zonal O IP Público Standard deve ser redundante em zona ou zonal na mesma zona que o gateway NAT Standard Não zonal O Endereço IP Público Standard pode ter redundância de zonas ou ser zonal em qualquer zona.
Custo
Não há custo adicional para usar o suporte a zonas de disponibilidade para o Azure NAT Gateway. Para mais informações sobre preços, consulte preços do Azure NAT Gateway.
Configurar o suporte à zona de disponibilidade
Novos recursos: Os passos de implementação dependem da configuração da zona de disponibilidade que pretende usar para o seu gateway NAT.
Redundante por zona: Para implementar um novo gateway NAT redundante de zona usando o SKU StandardV2, consulte Criar um Gateway NAT Azure Standard V2.
Zonal: Para implementar um novo gateway NAT zonal usando o SKU Standard, veja Criar um gateway NAT. Quando criares o gateway NAT, seleciona a sua zona de disponibilidade em vez de escolheres Zona Não.
Ativar o suporte da zona de disponibilidade: A configuração da zona de disponibilidade do Azure NAT Gateway não pode ser alterada após a implementação. Para modificar a configuração da zona de disponibilidade, deve implementar um novo gateway NAT com as definições de zona desejadas.
Para atualizar de um NAT gateway Standard para StandardV2, deve também criar um novo endereço IP público que utilize o SKU StandardV2.
Comportamento quando todas as zonas estão íntegras
Esta secção descreve o que esperar quando os gateways NAT são configurados para suporte a zonas de disponibilidade e todas as zonas de disponibilidade estão operacionais.
Encaminhamento de tráfego entre zonas: A forma como o tráfego da sua VM é encaminhado através do seu gateway NAT depende da configuração da zona de disponibilidade que o seu gateway NAT utiliza.
Zone-redundante: O tráfego pode ser encaminhado através de uma instância de gateway NAT dentro de qualquer zona de disponibilidade.
Zonal: Cada instância de gateway NAT opera de forma independente dentro da sua zona de disponibilidade atribuída. O tráfego de saída dos recursos da sub-rede é encaminhado através da zona do gateway NAT, mesmo que a VM esteja numa zona diferente.
Replicação de dados entre zonas: O Azure NAT Gateway não realiza replicação de dados entre zonas, pois é um serviço sem estado para conectividade de saída. Cada instância de gateway NAT opera de forma independente dentro da sua zona de disponibilidade, sem necessidade de sincronização com instâncias noutras zonas.
Comportamento durante uma falha de zona
Esta secção descreve o que esperar quando um gateway NAT é configurado para suporte a zonas de disponibilidade e há uma falha na zona de disponibilidade.
Deteção e resposta: A responsabilidade pela deteção e resposta depende da configuração da zona de disponibilidade que o seu gateway NAT utiliza.
Redundante de zona: O Azure NAT Gateway detecta e responde a falhas numa zona de disponibilidade. Você não precisa fazer nada para iniciar um failover de zona de disponibilidade.
Zonal: És responsável por implementar failover ao nível da aplicação para métodos alternativos de conectividade ou gateways NAT noutras zonas.
Notificação: A Microsoft não o notifica automaticamente quando uma zona está inativa. No entanto, pode utilizar o Azure Resource Health para monitorizar a integridade de um recurso individual, e pode configurar alertas de integridade de recursos para notificá-lo de problemas. Também pode usar o Azure Service Health para compreender o estado geral do serviço, incluindo quaisquer falhas de zona, e pode configurar alertas de Service Health para o notificar de problemas.
Também pode usar a métrica de disponibilidade do datapath do gateway NAT para monitorizar a saúde do seu gateway NAT. Pode configurar alertas na métrica de disponibilidade do datapath para detetar problemas de conectividade.
Pedidos ativos: O que acontece aos pedidos ativos depende da configuração da zona de disponibilidade que o seu gateway NAT utiliza.
Redundância de zonas: Quaisquer ligações ativas de saída através de instâncias na zona com falha são perdidas, e os clientes devem tentar novamente. As tentativas subsequentes de ligação passam por uma instância de gateway NAT noutra zona de disponibilidade.
Zonal: As ligações ativas de saída através de um gateway NAT zonal com falha são perdidas. Tem de decidir se e como restabelecer a conectividade através de caminhos alternativos de conectividade. As aplicações devem implementar lógica de repetição para lidar com falhas de conexão.
Se o tráfego for redirecionado, porque o endereço IP público de saída muda, quaisquer sessões TCP podem ter de ser renegociadas.
Perda de dados esperada: Não ocorre perda de dados porque o Azure NAT Gateway é um serviço sem estado para conectividade de saída. O estado de ligação é recriado quando as ligações são restabelecidas.
Tempo de inatividade previsto: O tempo de inatividade esperado depende da configuração da zona de disponibilidade que o seu gateway NAT utiliza.
Zona-redundante: As ligações existentes da zona afetada podem ser interrompidas. Os clientes podem tentar ligações novamente imediatamente e os pedidos serão encaminhados para uma instância noutra zona. Todas as ligações restantes das zonas saudáveis persistem.
Zonal: A conectividade de saída é perdida até que a zona recupere, ou até que redirecione o tráfego por métodos de conectividade alternativos ou gateways NAT em outras zonas.
Redirecionamento de tráfego: O comportamento de redirecionamento do tráfego depende da configuração da zona de disponibilidade que o seu gateway NAT utiliza.
Redundante de zona: Novas requisições de ligação são encaminhadas através de uma instância de gateway NAT numa zona de disponibilidade saudável.
É improvável que as máquinas virtuais na zona de disponibilidade afetada ainda estejam a funcionar. No entanto, no caso de uma falha parcial na zona que torne o Azure NAT Gateway indisponível enquanto as máquinas virtuais continuam a operar, quaisquer ligações de saída das máquinas virtuais na zona afetada são encaminhadas através de uma instância de gateway NAT noutra zona.
Zonal: És responsável por implementar qualquer failover ao nível da aplicação, como métodos alternativos de conectividade ou para gateways NAT noutras zonas.
Recuperação de zona
Não é necessária intervenção manual para operações de failback porque o Azure NAT Gateway é um serviço sem estado.
Quando uma zona de disponibilidade recupera, as instâncias de gateway NAT nessa zona ficam automaticamente disponíveis para novas ligações de saída. As ligações estabelecidas através de instâncias de gateway NAT noutras zonas durante a interrupção continuam a usar os seus caminhos de conectividade atuais até que as ligações terminem naturalmente.
Teste de falhas de zona
As opções para testar falhas de zona dependem da configuração da zona de disponibilidade usada pela instância.
Redundante de zona: A plataforma Azure NAT Gateway gere o encaminhamento de tráfego, failover e failback para gateways NAT redundantes por zona. Como esse recurso é totalmente gerenciado, você não precisa iniciar nada ou validar processos de falha da zona de disponibilidade.
Zonal: És responsável por preparar e testar planos de failover caso ocorra uma falha de zona.
Resiliência a falhas em toda a região
O Azure NAT Gateway é um serviço de uma única região que opera dentro dos limites de uma região Azure específica. O serviço não oferece capacidades nativas de múltiplas regiões nem alternância automática entre regiões. Se uma região se tornar indisponível, os gateways NAT nessa região também ficam indisponíveis.
Se desenhar uma abordagem de rede com múltiplas regiões, deve implementar gateways NAT independentes em cada região.
Contrato de nível de serviço
O contrato de nível de serviço (SLA) para serviços do Azure descreve a disponibilidade esperada de cada serviço e as condições que sua solução deve atender para atingir essa expectativa de disponibilidade. Para obter mais informações, consulte Acordos de Nível de Serviço (SLAs) para serviços online.
O Azure NAT Gateway é coberto pelo Azure VNet NAT SLA. O SLA de disponibilidade só se aplica quando tens duas ou mais VMs saudáveis, e exclui o esgotamento das portas SNAT dos cálculos de tempo de inatividade.