Zarządzanie usługą Azure Content Delivery Network przy użyciu programu PowerShell

Program PowerShell zapewnia jedną z najbardziej elastycznych metod zarządzania profilami i punktami końcowymi usługi Azure Content Delivery Network. Program PowerShell można użyć interaktywnie lub pisząc skrypty w celu zautomatyzowania zadań zarządzania. W tym samouczku przedstawiono kilka typowych zadań, które można wykonać za pomocą programu PowerShell, aby zarządzać profilami i punktami końcowymi usługi Azure Content Delivery Network.

Wymagania wstępne

Uwaga

Do interakcji z platformą Azure zalecamy używanie modułu Azure Az w programie PowerShell. Zobacz Instalowanie programu Azure PowerShell, aby rozpocząć. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.

Aby zarządzać profilami i punktami końcowymi usługi Azure Content Delivery Network przy użyciu programu PowerShell, musisz mieć zainstalowany moduł Azure PowerShell. Aby dowiedzieć się, jak zainstalować program Azure PowerShell i nawiązać połączenie z platformą Connect-AzAccount Azure przy użyciu polecenia cmdlet, zobacz Jak zainstalować i skonfigurować program Azure PowerShell.

Ważne

Przed wykonaniem poleceń cmdlet programu Azure PowerShell należy zalogować się za pomocą Connect-AzAccount polecenia cmdlet.

Wyświetlanie listy poleceń cmdlet usługi Azure Content Delivery Network

Wszystkie polecenia cmdlet usługi Azure Content Delivery Network można wyświetlić przy użyciu Get-Command polecenia cmdlet .

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

Uzyskiwanie pomocy

Możesz uzyskać pomoc dotyczącą dowolnego z tych poleceń cmdlet przy użyciu Get-Help polecenia cmdlet . Get-Help udostępnia informacje o użyciu i składni, a opcjonalnie przedstawiono przykłady.

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"

Wyświetlanie listy istniejących profilów usługi Azure Content Delivery Network

Polecenie Get-AzCdnProfile cmdlet bez żadnych parametrów pobiera wszystkie istniejące profile sieci dostarczania zawartości.

Get-AzCdnProfile

Te dane wyjściowe mogą być przesyłane potokami do poleceń cmdlet w celu wyliczenia.

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

Możesz również zwrócić jeden profil, określając nazwę profilu i grupę zasobów.

Get-AzCdnProfile -ProfileName CdnDemo -ResourceGroupName CdnDemoRG

Napiwek

Istnieje możliwość posiadania wielu profilów sieci dostarczania zawartości o tej samej nazwie, o ile znajdują się one w różnych grupach zasobów. Pominięcie parametru ResourceGroupName zwraca wszystkie profile o pasującej nazwie.

Wyświetlanie listy istniejących punktów końcowych sieci dostarczania zawartości

Get-AzCdnEndpoint program może pobrać pojedynczy punkt końcowy lub wszystkie punkty końcowe w profilu.

# 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

Tworzenie profilów i punktów końcowych sieci dostarczania zawartości

New-AzCdnProfile i New-AzCdnEndpoint są używane do tworzenia profilów sieci dostarczania zawartości i punktów końcowych. Obsługiwane są następujące jednostki 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

Dodawanie domeny niestandardowej

New-AzCdnCustomDomain Dodaje niestandardową nazwę domeny do istniejącego punktu końcowego.

Ważne

Należy skonfigurować rekord CNAME u dostawcy DNS zgodnie z opisem w temacie Jak mapować domenę niestandardową na punkt końcowy usługi Content Delivery Network. Mapowanie można przetestować przed zmodyfikowaniem punktu końcowego przy użyciu polecenia Test-AzCdnCustomDomain.

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

Modyfikowanie punktu końcowego

Update-AzCdnEndpoint modyfikuje istniejący punkt końcowy.

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

Przeczyszczanie

Clear-AzCdnEndpointContent przeczyszczanie buforowanych zasobów.

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

Wstępne ładowanie niektórych zasobów

Uwaga

Wstępne ładowanie jest dostępne tylko w usłudze Azure Content Delivery Network z profilów Edgio.

Import-AzCdnEndpointContent wstępnie ładuje zasoby do pamięci podręcznej sieci dostarczania zawartości.

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

Uruchamianie/zatrzymywanie punktów końcowych sieci dostarczania zawartości

Start-AzCdnEndpoint i Stop-AzCdnEndpoint może służyć do uruchamiania i zatrzymywania poszczególnych punktów końcowych lub grup punktów końcowych.

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

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

Tworzenie zasad aparatu reguł standardowych i stosowanie ich do istniejącego punktu końcowego sieci dostarczania zawartości

Poniższa lista poleceń cmdlet może służyć do tworzenia zasad aparatu reguł standardowych i stosowania ich do istniejącego punktu końcowego sieci dostarczania zawartości.

Warunki:

Akcje:

# 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

Usuwanie zasobów sieciowych dostarczania zawartości

Remove-AzCdnProfile i Remove-AzCdnEndpoint może służyć do usuwania profilów i punktów końcowych.

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

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

Następne kroki

  • Dowiedz się, jak zautomatyzować usługę Azure Content Delivery Network przy użyciu platformy .NET lub Node.js.

  • Aby dowiedzieć się więcej o funkcjach sieci dostarczania zawartości, zobacz Omówienie sieci dostarczania zawartości.