Guia de início rápido: criar uma porta frontal do Azure usando o Azure PowerShell

Aplica-se a: ✔️ Front Door Standard ✔️ Front Door Premium

Neste guia de início rápido, você aprenderá a criar um perfil do Azure Front Door usando o Azure PowerShell. Você utiliza duas Web Apps como sua origem e verifica a conectividade por meio do nome de host do endpoint do Azure Front Door.

Diagrama do ambiente de implantação do Azure Front Door usando o Azure PowerShell.

Nota

Para cargas de trabalho web, recomendamos vivamente que utilize Azure DDoS Protection e um firewall de aplicações web para se proteger contra ataques DDoS emergentes. Outra opção é usar o Azure Front Door juntamente com um firewall para aplicações web. O Azure Front Door oferece proteção ao nível da plataforma contra ataques DDoS ao nível da rede. Para mais informações, consulte Linha de Base de Segurança para serviços Azure.

Pré-requisitos

Nota

Recomendamos que utilize o módulo Azure Az do PowerShell para interagir com o Azure. Para começar, consulte Instalar o Azure PowerShell. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

Azure Cloud Shell

O Azure aloja o Azure Cloud Shell, um ambiente de shell interativo que pode utilizar através do seu browser. Pode utilizar o Bash ou o PowerShell com o Cloud Shell para trabalhar com os serviços do Azure. Você pode usar os comandos pré-instalados do Cloud Shell para executar o código neste artigo, sem precisar instalar nada em seu ambiente local.

Para iniciar o Azure Cloud Shell:

Opção Exemplo/Ligação
Selecione Experimentar no canto superior direito de um código ou bloco de comandos. Selecionar Experimentar não copia automaticamente o código ou comando para o Cloud Shell. Captura de tela que mostra um exemplo de Try It for Azure Cloud Shell.
Aceda a https://shell.azure.com ou selecione o botão Iniciar Cloud Shell para abrir o Cloud Shell no browser. Botão para iniciar o Azure Cloud Shell.
Selecione o botão Cloud Shell na barra de menus, na parte direita 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 comando.

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

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

Criar um grupo de recursos

Crie um grupo de recursos com New-AzResourceGroup:

New-AzResourceGroup -Name myRGFD -Location centralus

Criar duas instâncias de aplicativo Web

Crie duas instâncias de aplicativo Web em regiões diferentes do Azure usando New-AzWebApp:

# Create first web app in Central US region.
$webapp1 = New-AzWebApp `
    -Name "WebAppContoso-01" `
    -Location centralus `
    -ResourceGroupName myRGFD `
    -AppServicePlan myAppServicePlanCentralUS

# Create second web app in East US region.
$webapp2 = New-AzWebApp `
    -Name "WebAppContoso-02" `
    -Location EastUS `
    -ResourceGroupName myRGFD `
    -AppServicePlan myAppServicePlanEastUS

Criar uma porta de entrada do Azure

Criar um perfil do Azure Front Door

Execute New-AzFrontDoorCdnProfile para criar um perfil do Azure Front Door:

$fdprofile = New-AzFrontDoorCdnProfile `
    -ResourceGroupName myRGFD `
    -Name contosoAFD `
    -SkuName Premium_AzureFrontDoor `
    -Location Global

Adicionar um ponto final

Execute New-AzFrontDoorCdnEndpoint para criar um ponto de extremidade no seu perfil:

$FDendpoint = New-AzFrontDoorCdnEndpoint `
    -EndpointName contosofrontend `
    -ProfileName contosoAFD `
    -ResourceGroupName myRGFD `
    -Location Global

Criar um grupo de origem

Crie configurações de teste de integridade e balanceamento de carga e, em seguida, crie um grupo de origem usando New-AzFrontDoorCdnOriginGroup:

# Create health probe settings
$HealthProbeSetting = New-AzFrontDoorCdnOriginGroupHealthProbeSettingObject `
    -ProbeIntervalInSecond 60 `
    -ProbePath "/" `
    -ProbeRequestType GET `
    -ProbeProtocol Http

# Create load balancing settings
$LoadBalancingSetting = New-AzFrontDoorCdnOriginGroupLoadBalancingSettingObject `
    -AdditionalLatencyInMillisecond 50 `
    -SampleSize 4 `
    -SuccessfulSamplesRequired 3

# Create origin group
$originpool = New-AzFrontDoorCdnOriginGroup `
    -OriginGroupName og `
    -ProfileName contosoAFD `
    -ResourceGroupName myRGFD `
    -HealthProbeSetting $HealthProbeSetting `
    -LoadBalancingSetting $LoadBalancingSetting

Adicionar origens ao grupo

Adicione suas origens de aplicativo Web ao grupo de origem usando New-AzFrontDoorCdnOrigin:

# Add first web app origin to origin group.
$origin1 = New-AzFrontDoorCdnOrigin `
    -OriginGroupName og `
    -OriginName contoso1 `
    -ProfileName contosoAFD `
    -ResourceGroupName myRGFD `
    -HostName webappcontoso-01.azurewebsites.net `
    -OriginHostHeader webappcontoso-01.azurewebsites.net `
    -HttpPort 80 `
    -HttpsPort 443 `
    -Priority 1 `
    -Weight 1000

# Add second web app origin to origin group.
$origin2 = New-AzFrontDoorCdnOrigin `
    -OriginGroupName og `
    -OriginName contoso2 `
    -ProfileName contosoAFD `
    -ResourceGroupName myRGFD `
    -HostName webappcontoso-02.azurewebsites.net `
    -OriginHostHeader webappcontoso-02.azurewebsites.net `
    -HttpPort 80 `
    -HttpsPort 443 `
    -Priority 1 `
    -Weight 1000

Adicionar uma rota

Mapeie seu ponto de extremidade para o grupo de origem usando New-AzFrontDoorCdnRoute:

$Route = New-AzFrontDoorCdnRoute `
    -EndpointName contosofrontend `
    -Name defaultroute `
    -ProfileName contosoAFD `
    -ResourceGroupName myRGFD `
    -ForwardingProtocol MatchRequest `
    -HttpsRedirect Enabled `
    -LinkToDefaultDomain Enabled `
    -OriginGroupId $originpool.Id `
    -SupportedProtocol Http,Https

Testar a porta da frente do Azure

Depois de criar o perfil do Azure Front Door, leva alguns minutos para que a configuração seja implantada globalmente. Uma vez concluído, acesse o host frontend que você criou.

Execute o comando Get-AzFrontDoorCdnEndpoint para obter o nome do host do ponto de extremidade do Azure Front Door:

$fd = Get-AzFrontDoorCdnEndpoint `
    -EndpointName contosofrontend `
    -ProfileName contosoafd `
    -ResourceGroupName myRGFD

$fd.hostname

Em um navegador, vá para o nome do host do ponto final: contosofrontend-<hash>.z01.azurefd.net. Sua solicitação é roteada para o aplicativo Web com a menor latência no grupo de origem.

Captura de ecrã da mensagem: A sua aplicação Web está em execução e a aguardar o seu conteúdo.

Para testar o failover global instantâneo:

  1. Abra um navegador e aceda ao nome de anfitrião do endpoint: contosofrontend-<hash>.z01.azurefd.net.

  2. Pare um dos aplicativos Web executando Stop-AzWebApp:

    Stop-AzWebApp -ResourceGroupName myRGFD -Name "WebAppContoso-01"
    
  3. Atualize o seu browser. Você deve ver a mesma página de informações.

  4. Pare o outro aplicativo Web:

    Stop-AzWebApp -ResourceGroupName myRGFD -Name "WebAppContoso-02"
    
  5. Atualize o seu browser. Desta vez, você verá uma mensagem de erro.

    Captura de ecrã da mensagem: Ambas as instâncias da aplicação Web foram interrompidas.

  6. Reinicie um dos aplicativos Web executando Start-AzWebApp. Atualize o navegador e a página volte ao normal:

    Start-AzWebApp -ResourceGroupName myRGFD -Name "WebAppContoso-01"
    

Limpar recursos

Quando não precisar mais dos recursos criados com a Porta da Frente do Azure, exclua o grupo de recursos. Esta ação exclui a Porta da Frente do Azure e todos os seus recursos relacionados. Execute Remove-AzResourceGroup:

Remove-AzResourceGroup -Name myRGFD

Próximos passos

Para saber como adicionar um domínio personalizado ao Azure Front Door, consulte os tutoriais do Azure Front Door.