PowerShell ile Azure Content Delivery Network'i yönetme

PowerShell, Azure Content Delivery Network profillerinizi ve uç noktalarınızı yönetmek için en esnek yöntemlerden birini sağlar. PowerShell'i etkileşimli olarak veya yönetim görevlerini otomatikleştirmek için betikler yazarak kullanabilirsiniz. Bu öğreticide, Azure Content Delivery Network profillerinizi ve uç noktalarınızı yönetmek için PowerShell ile gerçekleştirebileceğiniz en yaygın görevlerden birkaçı gösterilmektedir.

Önkoşullar

Not

Azure ile etkileşim kurmak için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz . Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

Azure Content Delivery Network profillerinizi ve uç noktalarınızı yönetmek için PowerShell'i kullanmak için Azure PowerShell modülünün yüklü olması gerekir. Azure PowerShell'i yüklemeyi ve cmdlet'i kullanarak Azure'a bağlanmayı Connect-AzAccount öğrenmek için bkz . Azure PowerShell'i yükleme ve yapılandırma.

Önemli

Azure PowerShell cmdlet'lerini yürütebilmeniz için önce ile Connect-AzAccount oturum açmanız gerekir.

Azure Content Delivery Network cmdlet'lerini listeleme

cmdlet'ini kullanarak tüm Azure Content Delivery Network cmdlet'lerini Get-Command listeleyebilirsiniz.

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

Yardım alma

Cmdlet'ini kullanarak Get-Help bu cmdlet'lerden herhangi biriyle ilgili yardım alabilirsiniz. Get-Help kullanım ve söz dizimi sağlar ve isteğe bağlı olarak örnekleri gösterir.

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"

Mevcut Azure Content Delivery Network profillerini listeleme

Get-AzCdnProfile Parametresiz cmdlet tüm mevcut içerik teslim ağı profillerinizi alır.

Get-AzCdnProfile

Bu çıkış, numaralandırma için cmdlet'lere yöneltilebilir.

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

Ayrıca, profil adını ve kaynak grubunu belirterek tek bir profil döndürebilirsiniz.

Get-AzCdnProfile -ProfileName CdnDemo -ResourceGroupName CdnDemoRG

İpucu

Farklı kaynak gruplarında oldukları sürece aynı ada sahip birden çok içerik teslim ağ profiline sahip olmak mümkündür. parametresinin atlanması ResourceGroupName , eşleşen ada sahip tüm profilleri döndürür.

Mevcut içerik teslim ağı uç noktalarını listeleme

Get-AzCdnEndpoint tek bir uç noktayı veya bir profildeki tüm uç noktaları alabilir.

# 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

İçerik teslim ağ profilleri ve uç noktaları oluşturma

New-AzCdnProfile ve New-AzCdnEndpoint içerik teslim ağı profilleri ve uç noktaları oluşturmak için kullanılır. Aşağıdaki SKU'lar desteklenir:

  • 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

Özel etki alanı ekleme

New-AzCdnCustomDomain var olan bir uç noktaya özel etki alanı adı ekler.

Önemli

Özel Etki Alanını İçerik Teslim Ağı uç noktasına eşleme bölümünde açıklandığı gibi CNAME'yi DNS sağlayıcınızla ayarlamanız gerekir. kullanarak Test-AzCdnCustomDomainuç noktanızı değiştirmeden önce eşlemeyi test edebilirsiniz.

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

Uç noktayı değiştirme

Update-AzCdnEndpoint mevcut bir uç noktayı değiştirir.

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

Temizleme

Clear-AzCdnEndpointContent önbelleğe alınmış varlıkları temizler.

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

Bazı varlıkları önceden yükleme

Not

Önceden yükleme yalnızca Edgio profillerinden Azure Content Delivery Network'te kullanılabilir.

Import-AzCdnEndpointContent varlıkları içerik teslim ağı önbelleğine önceden yükler.

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

İçerik teslim ağ uç noktalarını başlatma/durdurma

Start-AzCdnEndpoint ve Stop-AzCdnEndpoint tek tek uç noktaları veya uç nokta gruplarını başlatmak ve durdurmak için kullanılabilir.

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

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

Standart Kurallar altyapısı ilkesi oluşturma ve mevcut bir içerik teslim ağ uç noktasına uygulama

Aşağıdaki cmdlet'lerin listesi, standart kurallar altyapısı ilkesi oluşturmak ve bunu mevcut bir içerik teslim ağ uç noktasına uygulamak için kullanılabilir.

Koşullar:

Eylemler:

# 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

İçerik teslim ağ kaynaklarını silme

Remove-AzCdnProfile ve Remove-AzCdnEndpoint profilleri ve uç noktaları kaldırmak için kullanılabilir.

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

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

Sonraki Adımlar