Como Funciona o Gestor de Tráfego
O Gestor de Tráfego do Azure permite-lhe controlar a distribuição do tráfego nos pontos finais da aplicação. Os pontos finais são serviços com acesso à Internet alojados dentro ou fora do Azure.
O Gestor de Tráfego fornece duas vantagens principais:
- Distribuição do tráfego de acordo com um de vários métodos de encaminhamento de tráfego
- Monitorização contínua do estado de funcionamento do ponto final e ativação pós-falha automática quando os pontos finais falham
Quando um cliente tenta estabelecer ligação a um serviço, primeiro tem de resolver o nome DNS do serviço para um endereço IP. Em seguida, o cliente estabelece ligação a esse endereço IP para aceder ao serviço.
O ponto mais importante a compreender é que o Gestor de Tráfego funciona ao nível do DNS, que está na camada Aplicação (Camada 7). O Gestor de Tráfego utiliza o DNS para direcionar os clientes para pontos finais de serviço específicos com base nas regras do método de encaminhamento de tráfego. Os clientes ligam-se diretamente ao ponto final selecionado. O Gestor de Tráfego não é um proxy ou um gateway. O Gestor de Tráfego não vê o tráfego a passar entre o cliente e o serviço.
O Gestor de Tráfego utiliza perfis para controlar o tráfego para os seus serviços cloud ou pontos finais de site. Para obter mais informações sobre perfis, veja Gerir um perfil do Gestor de Tráfego do Azure.
Exemplo do Gestor de Tráfego
A Contoso Corp desenvolveu um novo portal de parceiros. O URL deste portal é https://partners.contoso.com/login.aspx
. A aplicação está alojada em três regiões do Azure. Para melhorar a disponibilidade e maximizar o desempenho global, utilizam o Gestor de Tráfego para distribuir o tráfego do cliente para o ponto final disponível mais próximo.
Para obter esta configuração, conclua os seguintes passos:
- Implemente três instâncias do respetivo serviço. Os nomes DNS destas implementações são "contoso-us.cloudapp.net", "contoso-eu.cloudapp.net" e "contoso-asia.cloudapp.net".
- Crie um perfil do Gestor de Tráfego com o nome "contoso.trafficmanager.net" e configure-o para utilizar o método de encaminhamento de tráfego "Desempenho" nos três pontos finais.
- Configure o respetivo nome de domínio personalizado, "partners.contoso.com", para apontar para "contoso.trafficmanager.net", utilizando um registo CNAME DNS.
Importante
Apenas um Azure [ID do inquilino] pode possuir um nome DNS de gestor de tráfego de raiz especificado. Tentar utilizar um nome que já está a ser utilizado irá apresentar um erro. No exemplo seguinte, o nome DNS de raiz é contoso. Além disso, se um perfil for criado com um nome separado por pontos, como partners.contoso.trafficmanager.net, contoso.trafficmanager.net é automaticamente reservado.
Nota
Ao utilizar um domínio personalizado com o Gestor de Tráfego do Azure, tem de utilizar um CNAME para apontar o seu nome de domínio personalizado para o nome de domínio do Gestor de Tráfego. As normas DNS não lhe permitem criar um CNAME no "apex" (ou raiz) de um domínio. Assim, não pode criar um CNAME para "contoso.com" (por vezes denominado domínio "nu"). Só pode criar um CNAME para um domínio em "contoso.com", como "www.contoso.com". Para contornar esta limitação, recomendamos que aloje o seu domínio DNS no DNS do Azure e utilize registos de Alias para apontar para o perfil do gestor de tráfego. Em alternativa, pode utilizar um redirecionamento HTTP simples para direcionar pedidos de "contoso.com" para um nome alternativo, como "www.contoso.com".
Como os clientes se ligam com o Gestor de Tráfego
Continuando a partir do exemplo anterior, quando um cliente solicita a página https://partners.contoso.com/login.aspx
, o cliente executa os seguintes passos para resolver o nome DNS e estabelecer uma ligação:
O cliente envia uma consulta DNS para o serviço DNS recursivo configurado para resolver o nome "partners.contoso.com". Um serviço DNS recursivo, por vezes denominado serviço "DNS local", não aloja domínios DNS diretamente. Em vez disso, o cliente descarrega o trabalho de contactar os vários serviços DNS autoritativos na Internet necessários para resolver um nome DNS.
Para resolver o nome DNS, o serviço DNS recursivo localiza os servidores de nomes do domínio "contoso.com". Em seguida, contacta esses servidores de nomes para pedir o registo DNS "partners.contoso.com". Os servidores DNS contoso.com devolvem o registo CNAME que aponta para contoso.trafficmanager.net.
Em seguida, o serviço DNS recursivo localiza os servidores de nomes do domínio "trafficmanager.net", que são fornecidos pelo serviço Gestor de Tráfego do Azure. Em seguida, envia um pedido para o registo DNS "contoso.trafficmanager.net" para esses servidores DNS.
Os servidores de nomes do Gestor de Tráfego recebem o pedido. Selecionam um ponto final com base em:
- O estado configurado de cada ponto final (os pontos finais desativados não são devolvidos)
- O estado de funcionamento atual de cada ponto final, conforme determinado pelas verificações de estado de funcionamento do Gestor de Tráfego. Para obter mais informações, veja Monitorização do Ponto Final do Gestor de Tráfego.
- O método de encaminhamento de tráfego escolhido. Para obter mais informações, veja Métodos de Encaminhamento do Gestor de Tráfego.
O ponto final escolhido é devolvido como outro registo CNAME DNS. Neste caso, vamos supor contoso-eu.cloudapp.net é devolvido.
Em seguida, o serviço DNS recursivo localiza os servidores de nomes para o domínio "cloudapp.net". Contacta esses servidores de nomes para pedir o registo DNS "contoso-eu.cloudapp.net". É devolvido um registo DNS "A" que contém o endereço IP do ponto final de serviço baseado na UE.
O serviço DNS recursivo consolida os resultados e devolve uma única resposta DNS ao cliente.
O cliente recebe os resultados DNS e liga-se ao endereço IP especificado. O cliente liga-se diretamente ao ponto final de serviço da aplicação, não através do Gestor de Tráfego. Uma vez que é um ponto final HTTPS, o cliente executa o handshake SSL/TLS necessário e, em seguida, faz um pedido HTTP GET para a página "/login.aspx".
Gestor de Tráfego e cache DNS
O serviço DNS recursivo coloca em cache as respostas DNS que recebe. A resolução de DNS no dispositivo cliente também coloca o resultado em cache. A colocação em cache permite que as consultas DNS subsequentes sejam respondidas mais rapidamente através da utilização de dados da cache em vez de consultar outros servidores de nomes. A duração da cache é determinada pela propriedade "time-to-live" (TTL) de cada registo DNS. Os valores mais curtos resultam numa expiração mais rápida da cache e, por conseguinte, mais percursos de ida e volta para os servidores de nomes do Gestor de Tráfego. Os valores mais longos significam que pode demorar mais tempo a direcionar o tráfego para um ponto final com falha. O Gestor de Tráfego permite-lhe configurar o TTL utilizado nas respostas DNS do Gestor de Tráfego para ser tão baixo como 0 segundos e até 2.147.483.647 segundos (o intervalo máximo em conformidade com RFC-1035), permitindo-lhe escolher o valor que melhor equilibra as necessidades da sua aplicação.
FAQs
Que tipos de tráfego podem ser encaminhados com o Gestor de Tráfego?
Por que motivo estou a ver um erro de HTTP ao utilizar o Gestor de Tráfego?
Como posso resolver um problema 500 (Erro interno do Servidor) ao utilizar o Gestor de Tráfego?
Qual é o impacto no desempenho da utilização do Gestor de Tráfego?
Que protocolos de aplicação posso utilizar com o Gestor de Tráfego?
Posso utilizar o Gestor de Tráfego com um nome de domínio "nu"?
O Gestor de Tráfego considera o endereço da sub-rede do cliente ao processar consultas DNS?
Quão alto ou baixo posso definir o TTL para as respostas do Gestor de Tráfego?
Como posso compreender o volume de consultas que chegam ao meu perfil?
Passos seguintes
Saiba mais sobre a monitorização do ponto final do Gestor de Tráfego e a ativação pós-falha automática.
Saiba mais sobre os métodos de encaminhamento de tráfego do Gestor de Tráfego.