Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O roteamento anycast permite que você anuncie o mesmo endereço IP de várias regiões do Azure, fornecendo melhor disponibilidade, desempenho e resiliência do aplicativo. Com o Servidor de Rota do Azure, você pode implementar o roteamento anycast para direcionar automaticamente o tráfego para a instância de aplicativo mais próxima ou ideal com base nas métricas de roteamento.
Este artigo explica como implementar o roteamento anycast com o Servidor de Rota do Azure para implantações de aplicativos de várias regiões em redes privadas.
O que é o roteamento anycast?
O roteamento anycast é uma metodologia de endereçamento e roteamento de rede em que o mesmo endereço IP é atribuído a vários servidores ou instâncias de aplicativo em locais diferentes. Quando um cliente envia uma solicitação para um endereço IP anycast, a infraestrutura de rede roteia automaticamente o tráfego para o servidor mais próximo ou ideal com base em protocolos e métricas de roteamento.
Benefícios do roteamento anycast
O roteamento anycast oferece várias vantagens para implantações de várias regiões:
- Melhor desempenho: o tráfego é roteado automaticamente para a instância de aplicativo mais próxima, reduzindo a latência
- Disponibilidade aprimorada: se uma região ficar indisponível, o tráfego fará failover automaticamente para outras regiões
- Distribuição de carga: o tráfego pode ser distribuído em várias regiões com base nas métricas de roteamento
- Configuração simplificada do cliente: os clientes se conectam a um único endereço IP, independentemente do local real do servidor
- Suporte à rede privada: ao contrário das soluções baseadas em DNS, o anycast funciona com endereços IP privados e redes
Abordagens de anycast versus outras abordagens de multi-região
Embora o Azure ofereça vários serviços para implantações de várias regiões, como o Gerenciador de Tráfego do Azure, o Azure Front Door e o Azure Load Balancer entre regiões, esses serviços são projetados para tráfego público de Internet e endereçamento IP público.
O roteamento anycast com o Servidor de Rota do Azure foi projetado para:
- Cenários de rede privada: aplicativos que exigem endereçamento IP privado
- Conectividade híbrida: cenários envolvendo conexões ExpressRoute ou VPN com redes locais
- Gerenciamento de tráfego baseado em roteamento: em que o cache de DNS ou o comportamento do cliente podem interferir em soluções baseadas em DNS
Implementação do Anycast com o Servidor de Rota do Azure
O Servidor de Rota do Azure habilita o roteamento anycast facilitando o anúncio de rotas idênticas de várias regiões do Azure para redes locais por meio de conexões ExpressRoute ou VPN.
Visão geral da arquitetura
A implementação anycast usa os seguintes componentes:
- Várias regiões do Azure: cada região hospeda uma instância do aplicativo
- Servidor de Rota do Azure: implantado em cada região para gerenciar anúncios de rota
- NVAs (dispositivos virtuais de rede): anuncie o endereço IP anycast em cada região
- Topologia hub-and-spoke: fornece conectividade entre a NVA e instâncias de aplicativo
- ExpressRoute ou VPN: conecta regiões do Azure a redes locais
Topologia de implementação
O diagrama a seguir mostra uma implementação típica de anycast com duas regiões do Azure. Cada região contém:
- Uma rede virtual de hub com um NVA e um Azure Route Server
- Uma rede virtual spoke que hospeda a instância do aplicativo
- Conectividade do ExpressRoute com redes locais
Como o roteamento anycast funciona
-
Anúncio de rota: NVAs em cada região anunciam o mesmo prefixo de endereço IP (por exemplo,
a.b.c.d/32) para o Servidor de Rota do Azure local - Propagação de Rotas: o Servidor de Rota do Azure propaga essas rotas para redes locais por meio de conexões ExpressRoute ou VPN
- Seleção de rota: os protocolos de roteamento local selecionam o melhor caminho para alcançar o endereço IP anycast com base nas métricas de roteamento
- Distribuição de tráfego: o tráfego do cliente é roteado automaticamente para a região ideal com base no caminho selecionado
Seleção de rota e balanceamento de carga
A seleção de qual região recebe tráfego depende de atributos de roteamento:
- Multi-Caminhos de Custo Igual (ECMP): quando as rotas de várias regiões têm métricas idênticas, o tráfego é distribuído uniformemente em todos os caminhos disponíveis
- Preferências de caminho BGP: você pode influenciar as decisões de roteamento ajustando atributos BGP, como comprimento do caminho AS, preferência local ou valores MED
- Preenchimento de caminho AS: aumenta artificialmente o comprimento do caminho AS para rotas específicas, tornando-as menos preferidas e criando um cenário de primário/backup
Importante
As NVAs devem implementar mecanismos de verificação de integridade para interromper as rotas de publicidade quando a instância do aplicativo local ficar indisponível. Isso impede que o tráfego seja roteado para instâncias com falha (blackholing).
Considerações sobre tráfego de retorno
A manipulação adequada do tráfego de retorno é crucial para implementações de anycast bem-sucedidas. O método depende de como a NVA processa o tráfego de entrada.
Métodos de processamento de tráfego
O modo proxy reverso fornece o fluxo de tráfego mais previsível quando a NVA opera como um proxy reverso. Nessa configuração, a NVA encerra a conexão original do cliente e estabelece uma nova conexão com a instância do aplicativo. O tráfego de retorno naturalmente flui de volta pela mesma NVA porque a NVA gerencia ambos os lados da conexão.
O modo NAT (Conversão de Endereços de Rede) requer considerações diferentes quando a NVA executa a Conversão de Endereços de Rede de Destino (DNAT). A NVA converte o endereço IP de destino do IP anycast para o endereço IP real do aplicativo. Se a NVA também executar NAT de origem (SNAT), os fluxos de tráfego retornarão pela mesma NVA. No entanto, se nenhum SNAT for executado, a configuração extra será necessária para garantir o roteamento de tráfego de retorno adequado.
Roteamento de retorno do tráfego
Quando o aplicativo recebe tráfego com o endereço IP do cliente original (sem SNAT), você deve garantir o retorno dos fluxos de tráfego por meio da NVA correta. UDRs (rotas definidas pelo usuário) podem ser configuradas na sub-rede do aplicativo para direcionar o tráfego de volta para a NVA. Essas UDRs devem abranger os intervalos de endereços IP locais e funcionar bem para implantações de NVA simples.
Para implantações com várias instâncias de NVA por região, considerações de tráfego assimétrico tornam-se importantes. As NVAs sem estado podem lidar com o tráfego assimétrico em que os fluxos de entrada e saída passam por instâncias diferentes. No entanto, NVAs com estado exigem fluxo de tráfego simétrico para manter o estado da conexão. As soluções para NVAs com estado incluem o uso de mecanismos de afinidade de conexão, a implementação do compartilhamento de sessão entre instâncias de NVA ou a configuração de balanceadores de carga com persistência de sessão.
Práticas recomendadas para o fluxo de tráfego
O monitoramento de integridade deve implementar verificações de integridade robustas para detectar falhas de aplicações e NVA rapidamente. O tempo de failover requer a configuração de temporizadores BGP apropriados para equilibrar a rapidez do failover e a estabilidade. A engenharia de tráfego pode usar comunidades BGP ou outros atributos para implementar políticas de tráfego. O monitoramento e os alertas abrangentes devem acompanhar anúncios de rota e padrões de tráfego entre regiões para garantir o desempenho ideal e a detecção rápida de problemas.
Considerações sobre implementação
Pré-requisitos e requisitos
Antes de implementar o roteamento anycast com o Servidor de Rota do Azure, você deve planejar cuidadosamente sua alocação de endereço IP para garantir que o endereço IP anycast não entre em conflito com redes locais ou do Azure existentes. Uma compreensão sólida das políticas de roteamento bgp e seu efeito na distribuição de tráfego é essencial para a implantação bem-sucedida. Sua arquitetura de aplicativo deve ser projetada para lidar com o tráfego de várias regiões com eficiência e você precisa implementar o monitoramento de integridade abrangente para aplicativos e dispositivos virtuais de rede para garantir uma operação confiável.
Melhores práticas de implantação
Ao implantar o roteamento anycast, recomendamos começar com uma implantação simples de duas regiões antes de expandir para outras regiões. O teste regular de cenários de failover ajuda a garantir que o sistema atenda aos seus requisitos de disponibilidade e se comporte conforme o esperado durante interrupções. Monitorar métricas de desempenho, como latência e taxa de transferência de diferentes locais, fornece insights valiosos sobre a eficácia da configuração de roteamento. Manter uma documentação clara das políticas do BGP e seus efeitos pretendidos é crucial para o gerenciamento contínuo e a solução de problemas.
Limitações e considerações
Vários fatores devem ser considerados ao implementar o roteamento anycast com o Servidor de Rota do Azure. Os tempos de convergência BGP podem introduzir atrasos durante eventos de failover, potencialmente afetando os objetivos de tempo de recuperação. A complexidade adicional do roteamento de camada de rede em comparação com soluções baseadas em DNS requer mais conhecimento e planejamento cuidadoso. Solucionar problemas de roteamento de camada de rede pode ser mais desafiador do que diagnosticar problemas de camada de aplicativo, exigindo conhecimento especializado e ferramentas. Além disso, os custos de infraestrutura aumentam devido à necessidade de mais appliances virtuais de rede e instâncias de Servidores de Roteamento em várias regiões.