O Azure Traffic Manager é um load balancer baseado em DNS que permite distribuir o tráfego de maneira ideal para serviços nas regiões globais do Azure, oferecendo alta disponibilidade e capacidade de resposta.
O Traffic Manager usa o DNS para direcionar solicitações de clientes ao ponto de extremidade de serviço mais apropriado, com base em um método de roteamento de tráfego e na integridade dos pontos de extremidade. Um ponto de extremidade é qualquer serviço voltado para a Internet hospedado dentro ou fora do Azure. O Traffic Manager fornece uma variedade de métodos de roteamento de tráfego e opções de monitoramento de terminal para atender a diferentes necessidades de aplicativos e modelos de failover automático. O Traffic Manager é resiliente a falhas, incluindo a falha de uma região inteira do Azure.
O Azure Traffic Manager distribui o tráfego com base no método de balanceamento de carga abaixo:
- Priority – que encaminha todo o tráfego será roteado para o ponto final primário, a menos que ele falhe.
- Performance – que direciona o tráfego para o terminal medindo menor latência da rede.
- Weighted – que distribui o tráfego com base no peso. Quanto maior o peso, maior o tráfego roteado até o ponto final.
- Geographic – os usuários são direcionados para pontos de extremidade específicos com base em sua localização geográfica de onde a consulta DNS se origina.
Cenário
- Duas instancias de aplicativo Web chamados AppServiceTM01 e AppServiceTM02
- Traffic Manager
- Vamos criar duas instancias de aplicativo Web em duas regiões diferentes do Azure.
O Script abaixo cria dois aplicativos web chamados AppServiceTM01 e AppServiceTM02 localizados no WestUS e
EastUS.
Vamos executar o script utilizando o Azure Cloud Shell.
## Criar um Resource Group ##
# Variaveis
$Location1=”WestUS”
# Create a Resource Group
New-AzResourceGroup -Name RG-trafficManager -Location $Location1
Observe na imagem abaixo a execução dos comandos.
## Criar planos do Serviço de Aplicativo da Web ##
# Variables
$App1Name=”AppServiceT01$Random”
$App2Name=”AppServiceT22$Random”
$Location1=”WestUS”
$Location2=”EastUS”
# Create an App service plan
New-AzAppservicePlan -Name “$App1Name-Plan” -ResourceGroupName RG-trafficManager -Location $Location1 -Tier Standard
New-AzAppservicePlan -Name “$App2Name-Plan” -ResourceGroupName RG-trafficManager -Location $Location2 -Tier Standard
Observe na imagem abaixo a execução dos comandos.
## Crie um aplicativo da Web no plano de serviço de aplicativo ##
$App1ResourceId=(New-AzWebApp -Name $App1Name -ResourceGroupName RG-trafficManager -Location $Location1 -AppServicePlan “$App1Name-Plan”).Id
$App2ResourceId=(New-AzWebApp -Name $App2Name -ResourceGroupName RG-trafficManager -Location $Location2 -AppServicePlan “$App2Name-Plan”).Id
2 . Clique em Resource group –> RG-trafficManager e observe que nossos aplicativos web e planos foram criados com sucesso.
3. Clique em AppServiceT01 copie a URL https://appservicet01.azurewebsites.net e cole em seu navegador, de preferencia utilizar o modo anonimo do navegador.
Observe que o aplicativo tem uma página padrão, vamos alterar o nome dessa página.
Vamos alterar o nome da página de exibição do AppServiceT01
3. Clique em AppServiceT01, Deployment Tools e clique em App Service Editor (Previw).
04. Na tela App Service Editor (Preview) clique em Go.
05. A tela App Service Editor será aberta, remova a frase Hey App Service developers!, e adicione um nome de sua preferência em nosso exemplo vamos alterar o nome para AppServiceT01. O arquivo sera salvo automaticamente.
06 . Cole a URL https://appservicet01.azurewebsites.net do AppServiceT01 em seu navegador e observe se o nome AppServiceT01 foi adicionado a página.
O próximo passo será alterar o nome da página de exibição do AppServiceT02.
07. Clique em AppServiceT22, Deployment Tools e clique em App Service Editor (Previw).
08. Na tela App Service Editor (Preview) clique em Go.
09. A tela App Service Editor será aberta, remova a frase Hey App Service developers!, e adicione um nome de sua preferência em nosso exemplo vamos alterar o nome para AppServiceT02. O arquivo sera salvo automaticamente.
10. Cópie a URL do AppServiceT02.
11. Cole a URL https://appservicet22.azurewebsites.net do AppServiceT02 em seu navegador e observe se o nome AppServiceT02 foi adicionado a página.
Agora vamos configurar o Traffic Manager para distribuir as requisições na porta 80 com base na performance dos nossos aplicativos web.
12. No portal do Azure pesquise por Traffic Manager profiles.
13. Na tela Traffic Manager profiles clique em Create traffic manager profile.
14. Na tela Create Traffic Manager profile selecione um nome para o recurso, em Routing method selecione performance, selecione um grupo de recurso, assinatura e localização e clique em Create.
15. Observe que nosso recurso foi criado.
16. Clique em tmAppService e clique em Endpoints.
Na tela Endpoints vamos adicionar o AppServiceT01 e AppServiceT02.
17. Clique em + Add, em Type selecione Azure endpoint, digite um nome para o endpoint, em target resource type selecione App Service, em Target resource selecione o AppServiceT01 e clique em Add.
18. Clique em + Add, o Type selecione Azure endpoint, digite um nome para o endpoint em target resource type selecione App Service em Target resource selecione o AppServiceT02 e clique em Add.
19. Observe que nossos Endpoints foram criados e o Monitor status está Online.
As requisições para AppServiceT01 e AppServiceT02 serão feitas utilizando o DNS name do traffic manager.
20. Clique em Configuration, observe que o traffic manager está monitorando nossas aplicações na porta 80, podemos observar outras opções como número de falhas, etc.
O próximo passo é testar o acesso aos aplicativos web utilizando o DNS name do Traffic Manager.
21. Clique em Overview e copie o DNS name
22. Cole o DNS name http://tmappservice.trafficmanager.net em seu navegador.
Observe que as requisições estão sendo direcionadas para o AppServiceT02 vamos para-ló e verificar se as requisições serão direcionadas para o AppServiceT01
23. Clique em RG-trafficManager, selecione AppServiceT22 e clique em Stop.
24 . Atualize a página do navegador que está aberta com o endereço dns do traffic manager
Observe que as requisições agora foram direcionadas para o AppServiceT01.
Espero que este conteúdo tenha contribuído com o enriquecimento do conhecimento de vocês em Azure.
Tem alguma sugestão ou observação, comente.
Forte abraço, obrigado e até o próximo post. 🙂
Carreira desenvolvida na área de tecnologia da informação, com ampla experiência em Cloud
Computing e Cloud Security.
Forte atuação em projetos de Cloud Security no Microsoft Azure e com tecnologias de
segurança do Microsoft 365.
Tenho Experiência em Microsoft Azure, Microsoft 365, AWS e Windows Server.
Sou Microsoft MVP na categoria Microsoft Azure, AWS Communit Builder Security & Identity e
MCT.
Sou a Marina Da Silva, gostei muito do seu artigo tem
muito conteúdo de valor parabéns nota 10 gostei muito.
Muito obrigado Mariana, que bom que gostou!!!