Início Rápido: Criar um perfil do Gerenciador de Tráfego para um aplicativo Web de alta disponibilidade usando o Azure PowerShell

Este início rápido descreve como criar um perfil do Gerenciador de Tráfego que fornece alta disponibilidade para seu aplicativo Web.

Neste início rápido, você criará duas instâncias de um aplicativo Web. Cada uma delas está em execução em uma região diferente do Azure. Você criará um perfil do Gerenciador de Tráfego baseado na prioridade de ponto de extremidade. O perfil direciona o tráfego de usuário para o site primário executando o aplicativo Web. O Gerenciador de Tráfego monitora o aplicativo Web continuamente. Se o site primário estiver indisponível, ele fornece failover automático para o site de backup.

Diagrama do ambiente de implantação do Gerenciador de Tráfego.

Pré-requisitos

Caso não tenha uma assinatura do Azure, crie uma conta gratuita agora.

Azure Cloud Shell

O Azure hospeda o Azure Cloud Shell, um ambiente de shell interativo que pode ser usado por meio do navegador. É possível usar o bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. É possível usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada no seu ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Link
Selecione Experimentar no canto superior direito de um bloco de código ou de comando. Selecionar Experimentar não copia automaticamente o código nem o comando para o Cloud Shell. Captura de tela que mostra um exemplo de Experimente para o Azure Cloud Shell.
Acesse https://shell.azure.com ou selecione o botão Iniciar o Cloud Shell para abri-lo no navegador. Botão para iniciar o Azure Cloud Shell.
Selecione o botão Cloud Shell na barra de menus no canto superior direito do portal do Azure. Captura de tela que mostra o botão Cloud Shell no portal do Azure

Para usar o Azure Cloud Shell:

  1. Inicie o Cloud Shell.

  2. Selecione o botão Copiar em um bloco de código (ou bloco de comando) para copiar o código ou o comando.

  3. Cole o código ou comando na sessão do Cloud Shell selecionando Ctrl+Shift+V no Windows e no Linux, ou selecionando Cmd+Shift+V no macOS.

  4. Selecione Enter para executar o código ou o comando.

Se você optar por instalar e usar o PowerShell localmente, este artigo exigirá o módulo do Azure PowerShell versão 5.4.1 ou posterior. Execute Get-Module -ListAvailable Az para localizar a versão instalada. Se você precisa atualizar, consulte Instalar o módulo do Azure PowerShell. Se você estiver executando o PowerShell localmente, também precisará executar o Connect-AzAccount para criar uma conexão com o Azure.

Criar um grupo de recursos

Crie um grupo de recursos usando New-AzResourceGroup.


# Variables
$Location1="EastUS"

# Create a Resource Group
New-AzResourceGroup -Name MyResourceGroup -Location $Location1

Criar um perfil do Gerenciador de Tráfego

Crie um perfil do Gerenciador de Tráfego usando New-AzTrafficManagerProfile que direciona o tráfego de usuário com base na prioridade de ponto de extremidade.


# Generates a random value
$Random=(New-Guid).ToString().Substring(0,8)
$mytrafficmanagerprofile="mytrafficmanagerprofile$Random"

New-AzTrafficManagerProfile `
-Name $mytrafficmanagerprofile `
-ResourceGroupName MyResourceGroup `
-TrafficRoutingMethod Priority `
-MonitorPath '/' `
-MonitorProtocol "HTTP" `
-RelativeDnsName $mytrafficmanagerprofile `
-Ttl 30 `
-MonitorPort 80

Criar aplicativos Web

Para esse início rápido, você precisará implantar duas instâncias de um aplicativo Web em duas regiões do Azure diferentes (Oeste dos EUA e Leste dos EUA). Cada uma servirá como os pontos de extremidade primário e de failover do Gerenciador de Tráfego.

Criar planos de Serviço de Aplicativo Web

Crie planos do serviço de Aplicativo Web usando New-AzAppServicePlan para as duas instâncias do aplicativo Web que você implantará em duas regiões diferentes do Azure.


# Variables
$Location1="EastUS"
$Location2="WestEurope"

# Create an App service plan
New-AzAppservicePlan -Name "myAppServicePlanEastUS$Random" -ResourceGroupName MyResourceGroup -Location $Location1 -Tier Standard
New-AzAppservicePlan -Name "myAppServicePlanWestEurope$Random" -ResourceGroupName MyResourceGroup -Location $Location2 -Tier Standard

Criar um aplicativo Web no plano do Serviço de Aplicativo

Crie duas instâncias do aplicativo Web usando New-AzWebApp nas regiões do Azure Leste dos EUA e Oeste da Europa dos Planos do Serviço de Aplicativo.

$App1ResourceId=(New-AzWebApp -Name myWebAppEastUS -ResourceGroupName MyResourceGroup -Location $Location1 -AppServicePlan "myAppServicePlanEastUS").Id
$App2ResourceId=(New-AzWebApp -Name myWebAppWestEurope -ResourceGroupName MyResourceGroup -Location $Location2 -AppServicePlan "myAppServicePlanWestEurope").Id

Adicionar pontos de extremidade do Gerenciador de Tráfego

Adicione os dois aplicativos Web como pontos de extremidade do Gerenciador de Tráfego usando New-AzTrafficManagerEndpoint ao perfil do Gerenciador de Tráfego, da seguinte maneira:

  • Adicione o aplicativo Web localizado na região do Azure Leste dos EUA como o ponto de extremidade primário para rotear todo o tráfego do usuário.
  • Adicione o aplicativo Web localizado na região do Azure Oeste da Europa como o ponto de extremidade de failover. Quando o ponto de extremidade primário estiver indisponível, o tráfego será encaminhado automaticamente para o ponto de extremidade de failover.
New-AzTrafficManagerEndpoint -Name "myPrimaryEndpoint" `
-ResourceGroupName MyResourceGroup `
-ProfileName "$mytrafficmanagerprofile" `
-Type AzureEndpoints `
-TargetResourceId $App1ResourceId `
-EndpointStatus "Enabled" `
-Priority 1

New-AzTrafficManagerEndpoint -Name "myFailoverEndpoint" `
-ResourceGroupName MyResourceGroup `
-ProfileName "$mytrafficmanagerprofile" `
-Type AzureEndpoints `
-TargetResourceId $App2ResourceId `
-EndpointStatus "Enabled" `
-Priority 2

Testar perfil de Gerenciador de Tráfego

Nesta seção, você verificará o nome de domínio do seu perfil do Gerenciador de Tráfego. Você também configurará o ponto de extremidade primário para ficar indisponível. Por fim, você poderá ver que o aplicativo Web ainda está disponível. É porque o Gerenciador de Tráfego envia o tráfego para o ponto de extremidade de failover.

Determinar o nome DNS

Determine o nome DNS do perfil do Gerenciador de Tráfego usando Get-AzTrafficManagerProfile.

Get-AzTrafficManagerProfile -Name $mytrafficmanagerprofile `
-ResourceGroupName MyResourceGroup

Copie o valor RelativeDnsName. O nome DNS do seu perfil do Gerenciador de Tráfego é http://<relativednsname>.trafficmanager.net.

Ver o Gerenciador de Tráfego em ação

  1. Em um navegador da Web, insira o nome DNS do seu perfil do Gerenciador de Tráfego (http://<relativednsname>.trafficmanager.net) para ver o site padrão do seu aplicativo Web.

    Observação

    Nesse cenário de início rápido, todas as solicitações são encaminhadas para o ponto de extremidade primário. Ele é definido como Prioridade 1.

  2. Para ver o failover Gerenciador de Tráfego em ação, desabilite o site primário usando Disable-AzTrafficManagerEndpoint.

     Disable-AzTrafficManagerEndpoint -Name "myPrimaryEndpoint" `
     -Type AzureEndpoints `
     -ProfileName $mytrafficmanagerprofile `
     -ResourceGroupName MyResourceGroup `
     -Force
    
  3. Copie o nome DNS do seu perfil do Gerenciador de Tráfego (http://<relativednsname>.trafficmanager.net) para ver o site em uma nova sessão do navegador da Web.

  4. Verifique se o aplicativo Web ainda está disponível.

Limpar os recursos

Ao terminar, exclua os grupos de recursos, os aplicativos Web e todos os recursos relacionados usando Remove-AzResourceGroup.

Remove-AzResourceGroup -Name MyResourceGroup

Próximas etapas

Neste início rápido, você criou um perfil do Gerenciador de Tráfego que fornece alta disponibilidade para seu aplicativo Web. Para saber mais sobre o encaminhamento de tráfego, prossiga para os tutoriais do Gerenciador de Tráfego.