Gestire la rete per la distribuzione di contenuti di Azure con PowerShell

Importante

Rete CDN di Azure Standard di Microsoft (versione classica) verrà ritirato il 30 settembre 2027. Per evitare interruzioni del servizio, è importante eseguire la migrazione dei profili di Rete CDN di Azure Standard di Microsoft (versione classica) al livello Frontdoor di Azure Standard o Premium entro il 30 settembre 2027. Per altre informazioni, vedere Ritiro di Rete CDN di Azure Standard di Microsoft (versione classica).

Rete CDN di Azure di Edgio verrà ritirato 4 novembre 2025. È necessario eseguire la migrazione del carico di lavoro in Frontdoor di Azure prima di questa data per evitare interruzioni del servizio. Per altre informazioni, vedere Rete CDN di Azure da Domande frequenti sul ritiro di Edgio.

PowerShell offre uno dei metodi più flessibili per gestire i profili e gli endpoint della rete per la distribuzione di contenuti di Azure. È possibile usare PowerShell in modo interattivo o scrivendo script per automatizzare le attività di gestione. Questa esercitazione illustra alcune delle attività più comuni che è possibile eseguire con PowerShell per gestire i profili e gli endpoint della rete per la distribuzione di contenuti di Azure.

Prerequisiti

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.

Per usare PowerShell per gestire i profili e gli endpoint della rete per la distribuzione di contenuti di Azure, è necessario avere il modulo Azure PowerShell installato. Per informazioni su come installare Azure PowerShell e connettersi ad Azure usando il cmdlet Connect-AzAccountCome installare e configurare Azure PowerShell.

Importante

È necessario accedere con Connect-AzAccount per poter eseguire i cmdlet di Azure PowerShell.

Elenco dei cmdlet della rete per la distribuzione di contenuti di Azure

È possibile elencare tutti i cmdlet della rete per la distribuzione di contenuti di Azure usando il cmdlet Get-Command.

PS C:\> Get-Command -Module Az.Cdn

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Cmdlet          Confirm-AzCdnEndpointProbeURL                      2.1.0      Az.Cdn
Cmdlet          Disable-AzCdnCustomDomain                          2.1.0      Az.Cdn
Cmdlet          Disable-AzCdnCustomDomainHttps                     2.1.0      Az.Cdn
Cmdlet          Enable-AzCdnCustomDomain                           2.1.0      Az.Cdn
Cmdlet          Enable-AzCdnCustomDomainHttps                      2.1.0      Az.Cdn
Cmdlet          Get-AzCdnCustomDomain                              2.1.0      Az.Cdn
Cmdlet          Get-AzCdnEdgeNode                                  2.1.0      Az.Cdn
Cmdlet          Get-AzCdnEndpoint                                  2.1.0      Az.Cdn
Cmdlet          Get-AzCdnEndpointResourceUsage                     2.1.0      Az.Cdn
Cmdlet          Get-AzCdnOrigin                                    2.1.0      Az.Cdn
Cmdlet          Get-AzCdnProfile                                   2.1.0      Az.Cdn
Cmdlet          Get-AzCdnProfileResourceUsage                      2.1.0      Az.Cdn
Cmdlet          Get-AzCdnProfileSupportedOptimizationType          2.1.0      Az.Cdn
Cmdlet          Get-AzCdnSubscriptionResourceUsage                 2.1.0      Az.Cdn
Cmdlet          New-AzCdnCustomDomain                              2.1.0      Az.Cdn
Cmdlet          New-AzCdnDeliveryPolicy                            2.1.0      Az.Cdn
Cmdlet          New-AzCdnDeliveryRule                              2.1.0      Az.Cdn
Cmdlet          New-AzCdnDeliveryRuleAction                        2.1.0      Az.Cdn
Cmdlet          New-AzCdnDeliveryRuleCondition                     2.1.0      Az.Cdn
Cmdlet          New-AzCdnEndpoint                                  2.1.0      Az.Cdn
Cmdlet          New-AzCdnProfile                                   2.1.0      Az.Cdn
Cmdlet          Remove-AzCdnCustomDomain                           2.1.0      Az.Cdn
Cmdlet          Remove-AzCdnEndpoint                               2.1.0      Az.Cdn
Cmdlet          Remove-AzCdnProfile                                2.1.0      Az.Cdn
Cmdlet          Set-AzCdnProfile                                   2.1.0      Az.Cdn
Cmdlet          Start-AzCdnEndpoint                                2.1.0      Az.Cdn
Cmdlet          Stop-AzCdnEndpoint                                 2.1.0      Az.Cdn

Visualizzazione delle informazioni della Guida

È possibile visualizzare la Guida con uno di questi cmdlet usando il cmdlet Get-Help . Get-Help fornisce la sintassi e facoltativamente illustra gli esempi.

PS C:\> Get-Help Get-AzCdnProfile

NAME
    Get-AzCdnProfile

SYNOPSIS
    Gets an Azure CDN profile.

SYNTAX
    Get-AzCdnProfile [-ProfileName <String>] [-ResourceGroupName <String>] [-InformationAction
    <ActionPreference>] [-InformationVariable <String>] [<CommonParameters>]

DESCRIPTION
    Gets an Azure CDN profile and all related information.

RELATED LINKS
    https://docs.microsoft.com/powershell/module/az.cdn/get-azcdnprofile

REMARKS
    To see the examples, type: "get-help Get-AzCdnProfile -examples".
    For more information, type: "get-help Get-AzCdnProfile -detailed".
    For technical information, type: "get-help Get-AzCdnProfile -full".
    For online help, type: "get-help Get-AzCdnProfile -online"

Elenco dei profili della rete per la distribuzione di contenuti di Azure esistenti

Il cmdlet Get-AzCdnProfile senza parametri recupera tutti i profili di rete per la distribuzione di contenuti esistenti.

Get-AzCdnProfile

È possibile inviare pipe di questo output ai cmdlet per l'enumerazione.

# Output the name of all profiles on this subscription.
Get-AzCdnProfile | ForEach-Object { Write-Host $_.Name }

È anche possibile restituire un solo profilo specificando il gruppo di risorse e il nome del profilo.

Get-AzCdnProfile -ProfileName CdnDemo -ResourceGroupName CdnDemoRG

Suggerimento

È possibile avere più profili di rete per la distribuzione di contenuti con lo stesso nome, purché si trovino in gruppi di risorse diversi. Se si omette il parametro ResourceGroupName , vengono restituiti tutti i profili con un nome corrispondente.

Elenco degli endpoint di rete per la distribuzione di contenuti esistenti

Get-AzCdnEndpoint può recuperare un singolo endpoint o tutti gli endpoint in un profilo.

# Get a single endpoint.
Get-AzCdnEndpoint -ProfileName CdnDemo -ResourceGroupName CdnDemoRG -EndpointName cdndocdemo

# Get all of the endpoints on a given profile. 
Get-AzCdnEndpoint -ProfileName CdnDemo -ResourceGroupName CdnDemoRG

Creazione di profili ed endpoint della rete per la distribuzione di contenuti

Per creare profili ed endpoint della rete per la distribuzione di contenuti vengono usati i cmdlet New-AzCdnProfile e New-AzCdnEndpoint. Sono supportati i seguenti tipi SKU:

  • Standard_Verizon
  • Premium_Verizon
  • Custom_Verizon
  • Standard_Microsoft
  • Standard_ChinaCdn
# Create a new profile
New-AzCdnProfile -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -Sku Standard_Microsoft -Location "Central US"

# Create a new endpoint
$origin = @{
    Name = "Contoso"
    HostName = "www.contoso.com"
};

New-AzCdnEndpoint -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -Location "Central US" -EndpointName cdnposhdoc -Origin $origin

Aggiunta di un dominio personalizzato

New-AzCdnCustomDomain aggiunge un nome di dominio personalizzato a un endpoint esistente.

Importante

È necessario configurare il record CNAME con il provider DNS, come illustrato in Come eseguire il mapping di un dominio personalizzato all'endpoint della rete per la distribuzione di contenuti. È possibile testare il mapping prima di modificare l'endpoint usando Test-AzCdnCustomDomain.

# Create the custom domain on the endpoint
New-AzCdnCustomDomain -ResourceGroupName CdnDemoRG -ProfileName CdnPoshDemo -Name contoso -HostName "cdn.contoso.com" -EndpointName cdnposhdoc

Modifica di un endpoint

Update-AzCdnEndpoint modifica un endpoint esistente.

# Update endpoint with compression settings
Update-AzCdnEndpoint -Name cdnposhdoc -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -IsCompressionEnabled -ContentTypesToCompress "text/javascript","text/css","application/json"

Rimozione

Clear-AzCdnEndpointContent rimuove gli asset memorizzati nella cache.

# Purge some assets.
Clear-AzCdnEndpointContent -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -EndpointName cdnposhdoc -ContentFilePath @("/images/kitten.png","/video/rickroll.mp4")

Precaricare alcuni asset

Nota

Il precaricamento è disponibile solo nei profili della rete per la distribuzione di contenuti di Azure di Edgio.

Import-AzCdnEndpointContent precarica gli asset nella cache della rete per la distribuzione di contenuti.

Import-AzCdnEndpointContent -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -EndpointName cdnposhdoc -ContentFilePath @("/images/kitten.png","/video/rickroll.mp4")`

Avvio/arresto degli endpoint della rete per la distribuzione di contenuti

Start-AzCdnEndpoint e Stop-AzCdnEndpoint possono essere usati per avviare e arrestare singoli endpoint o gruppi di endpoint.

# Stop the CdnPoshDemo endpoint
Stop-AzCdnEndpoint -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -Name cdnposhdoc

# Start the CdnPoshDemo endpoint
Start-AzCdnEndpoint -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -Name cdnposhdoc

Creazione di criteri del motore regole standard e applicazione a un endpoint di rete per la distribuzione di contenuti esistente

L'elenco seguente di cmdlet consente di creare un criterio del motore regole standard e applicarlo a un endpoint della rete per la distribuzione di contenuti esistente.

Condizioni:

Azioni:

# Create a path based Response header modification rule. 
$cond1 = New-AzCdnDeliveryRuleUrlPathConditionObject -Name UrlPath -ParameterOperator BeginsWith -ParameterMatchValue "/images/"
$action1 = New-AzCdnDeliveryRuleResponseHeaderActionObject -Name ModifyResponseHeader -ParameterHeaderAction Overwrite -ParameterHeaderName "Access-Control-Allow-Origin" -ParameterValue "*"
$rule1 = New-AzCdnDeliveryRuleObject -Name "PathBasedCacheOverride" -Order 1 -Condition $cond1 -Action $action1

# Create a new http to https redirect rule
$cond1 = New-AzCdnDeliveryRuleRequestSchemeConditionObject -Name RequestScheme -ParameterMatchValue HTTPS
$action1 = New-AzCdnUrlRedirectActionObject -Name UrlRedirect -ParameterRedirectType Found -ParameterDestinationProtocol Https
$rule2 = New-AzCdnDeliveryRuleObject -Name "UrlRewriteRule" -Order 2 -Condition $cond1 -Action $action1

# Update existing endpoint with new rules
Update-AzCdnEndpoint -Name cdnposhdoc -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -DeliveryPolicyRule $rule1,$rule2

Eliminazione delle risorse della rete per la distribuzione di contenuti

Remove-AzCdnProfile e Remove-AzCdnEndpoint possono essere usati per rimuovere profili ed endpoint.

# Remove a single endpoint
Remove-AzCdnEndpoint -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -EndpointName cdnposhdoc

# Remove a single profile
Remove-AzCdnProfile -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG

Passaggi successivi