Avvio rapido: Creare una frontdoor di Azure con Azure PowerShell
Questo argomento di avvio rapido illustra come creare un profilo frontdoor di Azure con Azure PowerShell. Si usano due App Web come origine e si verifica la connettività tramite il nome host dell'endpoint di Frontdoor di Azure.
Nota
Per i carichi di lavoro Web, è consigliabile usare la Protezione DDoS di Azure e un web application firewall per proteggersi dagli attacchi DDoS emergenti. Un'altra opzione consiste nell'usare Frontdoor di Azure insieme a un web application firewall. Frontdoor di Azure offre protezione a livello di piattaforma contro gli attacchi DDoS a livello di rete. Per altre informazioni, vedere la baseline di sicurezza per i servizi di Azure.
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Azure PowerShell installato in locale o Azure Cloud Shell.
Nota
È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.
Azure Cloud Shell
Azure Cloud Shell è un ambiente di shell interattivo ospitato in Azure e usato tramite il browser. È possibile usare Bash o PowerShell con Cloud Shell per usare i servizi di Azure. È possibile usare i comandi preinstallati di Cloud Shell per eseguire il codice contenuto in questo articolo senza dover installare strumenti nell'ambiente locale.
Per avviare Azure Cloud Shell:
Opzione | Esempio/Collegamento |
---|---|
Selezionare Prova nell'angolo superiore destro di un blocco di codice o di comando. Quando si seleziona Prova, il codice o il comando non viene copiato automaticamente in Cloud Shell. | |
Passare a https://shell.azure.com o selezionare il pulsante Avvia Cloud Shell per aprire Cloud Shell nel browser. | |
Selezionare il pulsante Cloud Shell nella barra dei menu nell'angolo in alto a destra del portale di Azure. |
Per usare Azure Cloud Shell:
Avviare Cloud Shell.
Selezionare il pulsante Copia in un blocco di codice (o in un blocco di comando) per copiare il codice o il comando.
Incollare il codice o il comando nella sessione di Cloud Shell selezionando CTRL+MAIUSC+V in Windows e Linux o selezionando CMD+MAIUSC+V in macOS.
Selezionare INVIO per eseguire il codice o il comando.
Creare un gruppo di risorse
Creare un gruppo di risorse con New-AzResourceGroup:
New-AzResourceGroup -Name myRGFD -Location centralus
Creare due istanze di app Web
Creare due istanze di app Web in aree di Azure diverse 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
Creare un servizio Frontdoor di Azure
Creare una risorsa Frontdoor di Azure
Eseguire New-AzFrontDoorCdnProfile per creare un profilo frontdoor di Azure:
$fdprofile = New-AzFrontDoorCdnProfile `
-ResourceGroupName myRGFD `
-Name contosoAFD `
-SkuName Premium_AzureFrontDoor `
-Location Global
Aggiungere un endpoint
Eseguire New-AzFrontDoorCdnEndpoint per creare un endpoint nel profilo:
$FDendpoint = New-AzFrontDoorCdnEndpoint `
-EndpointName contosofrontend `
-ProfileName contosoAFD `
-ResourceGroupName myRGFD `
-Location Global
Creare un gruppo di origine
Creare le impostazioni del probe di integrità e del bilanciamento del carico, quindi creare un gruppo di origine 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
Aggiungere origini al gruppo
Aggiungere le origini dell'app Web al gruppo di origine 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
Aggiungere una route
Eseguire il mapping dell'endpoint al gruppo di origine 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
Testare frontdoor di Azure
Dopo aver creato il profilo frontdoor di Azure, la distribuzione globale della configurazione richiede alcuni minuti. Al termine, accedere all'host front-end creato.
Eseguire Get-AzFrontDoorCdnEndpoint per ottenere il nome host dell'endpoint frontdoor di Azure:
$fd = Get-AzFrontDoorCdnEndpoint `
-EndpointName contosofrontend `
-ProfileName contosoafd `
-ResourceGroupName myRGFD
$fd.hostname
In un browser passare al nome host dell'endpoint: contosofrontend-<hash>.z01.azurefd.net
. La richiesta viene instradata all'app Web con la latenza più bassa nel gruppo di origine.
Per testare il failover globale istantaneo:
Aprire un browser e passare al nome host dell'endpoint:
contosofrontend-<hash>.z01.azurefd.net
.Arrestare uno dei App Web eseguendo Stop-AzWebApp:
Stop-AzWebApp -ResourceGroupName myRGFD -Name "WebAppContoso-01"
Aggiorna il browser. Si dovrebbe visualizzare la stessa pagina di informazioni.
Arrestare l'altra app Web:
Stop-AzWebApp -ResourceGroupName myRGFD -Name "WebAppContoso-02"
Aggiorna il browser. Questa volta dovrebbe essere visualizzato un messaggio di errore.
Riavviare una delle app Web eseguendo Start-AzWebApp. Aggiornare il browser e tornare alla pagina normale:
Start-AzWebApp -ResourceGroupName myRGFD -Name "WebAppContoso-01"
Pulire le risorse
Quando le risorse create con Frontdoor di Azure non sono più necessarie, eliminare il gruppo di risorse. Questa azione elimina frontdoor di Azure e tutte le relative risorse correlate. Eseguire Remove-AzResourceGroup:
Remove-AzResourceGroup -Name myRGFD
Passaggi successivi
Per informazioni su come aggiungere un dominio personalizzato alla frontdoor di Azure, passare alle esercitazioni di Frontdoor di Azure.