Verwalten von Azure CDN mit PowerShellManage Azure CDN with PowerShell

PowerShell ermöglicht eine äußerst flexible Methode zur Verwaltung Ihrer Azure CDN-Profile und -Endpunkte.PowerShell provides one of the most flexible methods to manage your Azure CDN profiles and endpoints. Sie können PowerShell interaktiv oder durch Schreiben von Skripts verwenden, um Verwaltungsaufgaben zu automatisieren.You can use PowerShell interactively or by writing scripts to automate management tasks. In diesem Tutorial werden einige allgemeine Aufgaben vorgestellt, die Sie mit PowerShell zum Verwalten Ihrer Azure CDN-Profile und -Endpunkte ausführen können.This tutorial demonstrates several of the most common tasks you can accomplish with PowerShell to manage your Azure CDN profiles and endpoints.

VoraussetzungenPrerequisites

Hinweis

Dieser Artikel wurde aktualisiert und beinhaltet jetzt das neue Az-Modul von Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. Sie können das AzureRM-Modul weiterhin verwenden, das bis mindestens Dezember 2020 weiterhin Fehlerbehebungen erhält.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Weitere Informationen zum neuen Az-Modul und zur Kompatibilität mit AzureRM finden Sie unter Introducing the new Azure PowerShell Az module (Einführung in das neue Az-Modul von Azure PowerShell).To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Anweisungen zur Installation des Az-Moduls finden Sie unter Install Azure PowerShell (Installieren von Azure PowerShell).For Az module installation instructions, see Install Azure PowerShell.

Wenn Sie PowerShell zur Verwaltung Ihrer Azure CDN-Profile und -Endpunkte verwenden möchten, muss das Azure PowerShell-Modul installiert sein.To use PowerShell to manage your Azure CDN profiles and endpoints, you must have the Azure PowerShell module installed. Informationen zum Installieren von Azure PowerShell und zum Herstellen einer Verbindung mit Azure mithilfe des Connect-AzAccount -Cmdlets finden Sie unter Installieren und Konfigurieren von Azure PowerShell.To learn how to install Azure PowerShell and connect to Azure using the Connect-AzAccount cmdlet, see How to install and configure Azure PowerShell.

Wichtig

Melden Sie sich mit Connect-AzAccount an, um Azure PowerShell-Cmdlets ausführen zu können.You must log in with Connect-AzAccount before you can execute Azure PowerShell cmdlets.

Auflisten der Azure CDN-CmdletsListing the Azure CDN cmdlets

Mithilfe des Get-Command -Cmdlets können Sie alle Azure CDN-Cmdlets auflisten.You can list all the Azure CDN cmdlets using the Get-Command cmdlet.

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

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Cmdlet          Get-AzCdnCustomDomain                         2.0.0      Az.Cdn
Cmdlet          Get-AzCdnEndpoint                             2.0.0      Az.Cdn
Cmdlet          Get-AzCdnEndpointNameAvailability             2.0.0      Az.Cdn
Cmdlet          Get-AzCdnOrigin                               2.0.0      Az.Cdn
Cmdlet          Get-AzCdnProfile                              2.0.0      Az.Cdn
Cmdlet          Get-AzCdnProfileSsoUrl                        2.0.0      Az.Cdn
Cmdlet          New-AzCdnCustomDomain                         2.0.0      Az.Cdn
Cmdlet          New-AzCdnEndpoint                             2.0.0      Az.Cdn
Cmdlet          New-AzCdnProfile                              2.0.0      Az.Cdn
Cmdlet          Publish-AzCdnEndpointContent                  2.0.0      Az.Cdn
Cmdlet          Remove-AzCdnCustomDomain                      2.0.0      Az.Cdn
Cmdlet          Remove-AzCdnEndpoint                          2.0.0      Az.Cdn
Cmdlet          Remove-AzCdnProfile                           2.0.0      Az.Cdn
Cmdlet          Set-AzCdnEndpoint                             2.0.0      Az.Cdn
Cmdlet          Set-AzCdnOrigin                               2.0.0      Az.Cdn
Cmdlet          Set-AzCdnProfile                              2.0.0      Az.Cdn
Cmdlet          Start-AzCdnEndpoint                           2.0.0      Az.Cdn
Cmdlet          Stop-AzCdnEndpoint                            2.0.0      Az.Cdn
Cmdlet          Test-AzCdnCustomDomain                        2.0.0      Az.Cdn
Cmdlet          Unpublish-AzCdnEndpointContent                2.0.0      Az.Cdn

HilfeGetting help

Mit dem Get-Help -Cmdlet können Sie Hilfe zu allen diesen Cmdlets aufrufen.You can get help with any of these cmdlets using the Get-Help cmdlet. Get-Help zeigen Sie Nutzungsinformationen und die Syntax und optional auch Beispiele an.Get-Help provides usage and syntax, and optionally shows examples.

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

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".

Auflisten vorhandener Azure CDN-ProfileListing existing Azure CDN profiles

Das Get-AzCdnProfile -Cmdlet ohne Parameter ruft alle vorhandenen CDN-Profile ab.The Get-AzCdnProfile cmdlet without any parameters retrieves all your existing CDN profiles.

Get-AzCdnProfile

Diese Ausgabe kann zur Enumeration an Cmdlets übergeben werden.This output can be piped to cmdlets for enumeration.

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

# Return only **Azure CDN from Verizon** profiles.
Get-AzCdnProfile | Where-Object { $_.Sku.Name -eq "Standard_Verizon" }

Sie können auch ein einzelnes Profil zurückgeben, indem Sie den Profilnamen und die Ressourcengruppe angeben.You can also return a single profile by specifying the profile name and resource group.

Get-AzCdnProfile -ProfileName CdnDemo -ResourceGroupName CdnDemoRG

Tipp

Es ist möglich, mehrere CDN-Profile mit demselben Namen zu verwenden, solange sich die Profile in verschiedenen Ressourcengruppen befinden.It is possible to have multiple CDN profiles with the same name, so long as they are in different resource groups. Durch Auslassen des Parameters ResourceGroupName werden alle Profile mit dem gleichen Namen zurückgegeben.Omitting the ResourceGroupName parameter returns all profiles with a matching name.

Auflisten vorhandener CDN-EndpunkteListing existing CDN endpoints

Get-AzCdnEndpoint kann einen einzelnen Endpunkt oder alle Endpunkte in einem Profil abrufen.Get-AzCdnEndpoint can retrieve an individual endpoint or all the endpoints on a profile.

# 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

# Return all of the endpoints on all of the profiles.
Get-AzCdnProfile | Get-AzCdnEndpoint

# Return all of the endpoints in this subscription that are currently running.
Get-AzCdnProfile | Get-AzCdnEndpoint | Where-Object { $_.ResourceState -eq "Running" }

Erstellen von CDN-Profilen und -EndpunktenCreating CDN profiles and endpoints

New-AzCdnProfile und New-AzCdnEndpoint werden zur Erstellung von CDN-Profilen und -Endpunkten verwendet.New-AzCdnProfile and New-AzCdnEndpoint are used to create CDN profiles and endpoints. Die folgenden SKUs werden unterstützt:The following SKUs are supported:

  • Standard_VerizonStandard_Verizon
  • Premium_VerizonPremium_Verizon
  • Custom_VerizonCustom_Verizon
  • Standard_AkamaiStandard_Akamai
  • Standard_MicrosoftStandard_Microsoft
  • Standard_ChinaCdnStandard_ChinaCdn
# Create a new profile
New-AzCdnProfile -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -Sku Standard_Akamai -Location "Central US"

# Create a new endpoint
New-AzCdnEndpoint -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -Location "Central US" -EndpointName cdnposhdoc -OriginName "Contoso" -OriginHostName "www.contoso.com"

# Create a new profile and endpoint (same as above) in one line
New-AzCdnProfile -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -Sku Standard_Akamai -Location "Central US" | New-AzCdnEndpoint -EndpointName cdnposhdoc -OriginName "Contoso" -OriginHostName "www.contoso.com"

Überprüfen der Verfügbarkeit von EndpunktnamenChecking endpoint name availability

Get-AzCdnEndpointNameAvailability gibt ein Objekt zurück, das angibt, ob ein Endpunktname verfügbar ist.Get-AzCdnEndpointNameAvailability returns an object indicating if an endpoint name is available.

# Retrieve availability
$availability = Get-AzCdnEndpointNameAvailability -EndpointName "cdnposhdoc"

# If available, write a message to the console.
If($availability.NameAvailable) { Write-Host "Yes, that endpoint name is available." }
Else { Write-Host "No, that endpoint name is not available." }

Hinzufügen einer benutzerdefinierten DomäneAdding a custom domain

New-AzCdnCustomDomain fügt einem vorhandenen Endpunkt den Namen einer benutzerdefinierten Domäne hinzu.New-AzCdnCustomDomain adds a custom domain name to an existing endpoint.

Wichtig

CNAME muss mit dem DNS-Anbieter eingerichtet werden. Die Vorgehensweise ist unter Zuordnen einer benutzerdefinierten Domäne zu einem CDN-Endpunkt (Content Delivery Network, Netzwerk für die Inhaltsübermittlung) beschrieben.You must set up the CNAME with your DNS provider as described in How to map Custom Domain to Content Delivery Network (CDN) endpoint. Sie können die Zuordnung mithilfe von Test-AzCdnCustomDomain testen, bevor Sie den Endpunkt ändern.You can test the mapping before modifying your endpoint using Test-AzCdnCustomDomain.

# Get an existing endpoint
$endpoint = Get-AzCdnEndpoint -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -EndpointName cdnposhdoc

# Check the mapping
$result = Test-AzCdnCustomDomain -CdnEndpoint $endpoint -CustomDomainHostName "cdn.contoso.com"

# Create the custom domain on the endpoint
If($result.CustomDomainValidated){ New-AzCdnCustomDomain -CustomDomainName Contoso -HostName "cdn.contoso.com" -CdnEndpoint $endpoint }

Ändern eines EndpunktsModifying an endpoint

Set-AzCdnEndpoint ändert einen vorhandenen Endpunkt.Set-AzCdnEndpoint modifies an existing endpoint.

# Get an existing endpoint
$endpoint = Get-AzCdnEndpoint -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG -EndpointName cdnposhdoc

# Set up content compression
$endpoint.IsCompressionEnabled = $true
$endpoint.ContentTypesToCompress = "text/javascript","text/css","application/json"

# Save the changed endpoint and apply the changes
Set-AzCdnEndpoint -CdnEndpoint $endpoint

Löschen/Vorabladen von CDN-AssetsPurging/Pre-loading CDN assets

Unpublish-AzCdnEndpointContent löscht zwischengespeicherte Assets, und Publish-AzCdnEndpointContent lädt Assets vorab auf unterstützten Endpunkten.Unpublish-AzCdnEndpointContent purges cached assets, while Publish-AzCdnEndpointContent pre-loads assets on supported endpoints.

# Purge some assets.
Unpublish-AzCdnEndpointContent -ProfileName CdnDemo -ResourceGroupName CdnDemoRG -EndpointName cdndocdemo -PurgeContent "/images/kitten.png","/video/rickroll.mp4"

# Pre-load some assets.
Publish-AzCdnEndpointContent -ProfileName CdnDemo -ResourceGroupName CdnDemoRG -EndpointName cdndocdemo -LoadContent "/images/kitten.png","/video/rickroll.mp4"

# Purge everything in /images/ on all endpoints.
Get-AzCdnProfile | Get-AzCdnEndpoint | Unpublish-AzCdnEndpointContent -PurgeContent "/images/*"

Starten/Beenden von CDN-EndpunktenStarting/Stopping CDN endpoints

Start-AzCdnEndpoint und Stop-AzCdnEndpoint können zum Starten und Beenden von einzelnen Endpunkten oder Gruppen mit Endpunkten verwendet werden.Start-AzCdnEndpoint and Stop-AzCdnEndpoint can be used to start and stop individual endpoints or groups of endpoints.

# Stop the cdndocdemo endpoint
Stop-AzCdnEndpoint -ProfileName CdnDemo -ResourceGroupName CdnDemoRG -EndpointName cdndocdemo

# Stop all endpoints
Get-AzCdnProfile | Get-AzCdnEndpoint | Stop-AzCdnEndpoint

# Start all endpoints
Get-AzCdnProfile | Get-AzCdnEndpoint | Start-AzCdnEndpoint

Löschen von CDN-RessourcenDeleting CDN resources

Remove-AzCdnProfile und Remove-AzCdnEndpoint können zum Entfernen von Profilen und Endpunkten verwendet werden.Remove-AzCdnProfile and Remove-AzCdnEndpoint can be used to remove profiles and endpoints.

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

# Remove all the endpoints on a profile and skip confirmation (-Force)
Get-AzCdnProfile -ProfileName CdnPoshDemo -ResourceGroupName CdnDemoRG | Get-AzCdnEndpoint | Remove-AzCdnEndpoint -Force

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

Nächste SchritteNext Steps

Erfahren Sie, wie Sie Azure CDN mit .NET oder Node.js automatisieren.Learn how to automate Azure CDN with .NET or Node.js.

Informationen zu CDN-Features finden Sie unter Übersicht über das Azure Content Delivery Network (CDN).To learn about CDN features, see CDN Overview.