Perubahan yang dapat menyebabkan gangguan untuk Az 1.0.0
Dokumen ini memberikan informasi detail tentang perubahan antara AzureRM 6.x dan modul Az baru, versi 1.x dan yang lebih baru. Daftar isi akan membantu memandu Anda menyelesaikan jalur migrasi penuh, termasuk perubahan khusus modul yang dapat memengaruhi skrip Anda.
Untuk saran umum tentang memulai dengan migrasi dari AzureRM ke Az, lihat Memulai migrasi dari AzureRM ke Az.
Penting
Telah terdapat pula perubahan pemecahan antara Az 1.0.0 dan Az 2.0.0. Setelah mengikuti panduan ini untuk memperbarui dari AzureRM ke Az, lihat perubahan pemecahan Az 2.0.0 untuk mengetahui apakah Anda harus membuat perubahan tambahan.
Daftar Isi
- Perubahan umum yang melanggar
- Perubahan pemecahan modul
- Az.ApiManagement (sebelumnya AzureRM.ApiManagement)
- Az.Billing (sebelumnya AzureRM.Billing, AzureRM.Consumption, dan AzureRM.UsageAggregates)
- Az.CognitiveServices (previously AzureRM.CognitiveServices)
- Az.Compute (sebelumnya AzureRM.Compute)
- Az.DataFactory (sebelumnya AzureRM.DataFactories dan AzureRM.DataFactoryV2)
- Az.DataLakeAnalytics (previously AzureRM.DataLakeAnalytics)
- Az.DataLakeStore (previously AzureRM.DataLakeStore)
- Az.KeyVault (sebelumnya AzureRM.KeyVault)
- Az.Media (previously AzureRM.Media)
- Az.Monitor (sebelumnya AzureRM.Insights)
- Az.Network (sebelumnya AzureRM.Network)
- Az.OperationalInsights (sebelumnya AzureRM.OperationalInsights)
- Az.RecoveryServices (sebelumnya AzureRM.RecoveryServices, AzureRM.RecoveryServices.Backup, dan AzureRM.RecoveryServices.SiteRecovery)
- Az.Resources (sebelumnya AzureRM.Resources)
- Az.ServiceFabric (previously AzureRM.ServiceFabric)
- Az.Sql (sebelumnya AzureRM.Sql)
- Az.Storage (sebelumnya Azure.Storage dan AzureRM.Storage)
- Az.Websites (sebelumnya AzureRM.Websites)
Perubahan umum yang dapat menyebabkan gangguan
Bagian ini merinci perubahan umum yang dapat menyebabkan gangguan yang merupakan bagian dari desain ulang modul Az.
Perubahan Awalan Kata Benda Cmdlet
Di modul AzureRM, cmdlet menggunakan AzureRM
atau Azure
sebagai awalan kata benda. Az menyederhanakan dan menormalkan nama cmdlet, sehingga semua cmdlet menggunakan 'Az' sebagai awalan kata benda cmdlet-nya. Contohnya:
Get-AzureRMVM
Get-AzureKeyVaultSecret
Telah berubah menjadi:
Get-AzVM
Get-AzKeyVaultSecret
Untuk mempermudah transisi ke nama cmdlet baru ini, Az memperkenalkan dua cmdlet baru, Enable-AzureRmAlias dan Disable-AzureRmAlias. Enable-AzureRmAlias
membuat alias untuk nama cmdlet lama di AzureRM yang memetakan ke nama cmdlet Az yang lebih baru. Menggunakan argumen -Scope
dengan Enable-AzureRmAlias
memungkinkan Anda untuk memilih di mana alias diaktifkan.
Misalnya, skrip berikut di AzureRM:
#Requires -Modules AzureRM.Storage
Get-AzureRmStorageAccount | Get-AzureStorageContainer | Get-AzureStorageBlob
Dapat dijalankan dengan perubahan minimal menggunakan Enable-AzureRmAlias
:
#Requires -Modules Az.Storage
Enable-AzureRmAlias -Scope Process
Get-AzureRmStorageAccount | Get-AzureStorageContainer | Get-AzureStorageBlob
Menjalankan Enable-AzureRmAlias -Scope CurrentUser
akan mengaktifkan alias untuk semua sesi PowerShell yang Anda buka, sehingga setelah menjalankan cmdlet ini, skrip seperti ini tidak perlu diubah sama sekali:
Get-AzureRmStorageAccount | Get-AzureStorageContainer | Get-AzureStorageBlob
Untuk detail lengkap tentang penggunaan cmdlet alias, lihat referensi Enable-AzureRmAlias.
Saat Anda siap menonaktifkan alias, Disable-AzureRmAlias
akan menghapus alias yang dibuat. Untuk detail selengkapnya, lihat referensi Disable-AzureRmAlias.
Penting
Saat menonaktifkan alias, pastikan bahwa alias dinonaktifkan untuk semua cakupan yang memiliki alias aktif.
Perubahan Nama Modul
Nama modul telah berubah dari AzureRM.*
ke Az.*
, kecuali untuk modul berikut:
AzureRM module | Modul Az |
---|---|
Azure.Storage | Az.Storage |
Azure.AnalysisServices | Az.AnalysisServices |
AzureRM.Profile | Az.Accounts |
AzureRM.Insights | Az.Monitor |
AzureRM.DataFactories | Az.DataFactory |
AzureRM.DataFactoryV2 | Az.DataFactory |
AzureRM.RecoveryServices.Backup | Az.RecoveryServices |
AzureRM.RecoveryServices.SiteRecovery | Az.RecoveryServices |
AzureRM.Tags | Az.Resources |
AzureRM.MachineLearningCompute | Az.MachineLearning |
AzureRM.UsageAggregates | Az.Billing |
AzureRM.Consumption | Az.Billing |
Perubahan dalam nama modul berarti bahwa setiap skrip yang menggunakan #Requires
atau Import-Module
untuk memuat modul tertentu harus diubah untuk menggunakan modul baru sebagai gantinya. Untuk modul yang akhiran cmdlet-nya tidak berubah, ini berarti meskipun nama modul telah berubah, akhiran yang menunjukkan ruang operasi masih belum.
Memigrasi #Memerlukan dan Mengimpor Pernyataan Modul
Skrip yang menggunakan #Requires
atau Import-Module
untuk mendeklarasikan dependensi pada modul AzureRM harus diperbarui untuk menggunakan nama modul baru. Contohnya:
#Requires -Module AzureRM.Compute
Harus diubah menjadi:
#Requires -Module Az.Compute
Untuk Import-Module
:
Import-Module -Name AzureRM.Compute
Harus diubah menjadi:
Import-Module -Name Az.Compute
Migrasi Pemanggilan Cmdlet yang Memenuhi Syarat
Skrip yang menggunakan pemanggilan cmdlet yang memenuhi syarat modul, seperti:
AzureRM.Compute\Get-AzureRmVM
Harus diubah untuk menggunakan modul dan nama cmdlet baru:
Az.Compute\Get-AzVM
Memigrasi dependensi manifes modul
Modul yang menunjukkan dependensi pada modul AzureRM melalui file manifes modul (.psd1) harus memperbarui nama modul di bagian RequiredModules
:
RequiredModules = @(@{ModuleName="AzureRM.Profile"; ModuleVersion="5.8.2"})
Harus diubah menjadi:
RequiredModules = @(@{ModuleName="Az.Profile"; ModuleVersion="1.0.0"})
Modul yang dihapus
Modul-modul berikut telah dihapus:
AzureRM.Backup
AzureRM.Compute.ManagedService
AzureRM.Scheduler
Alat untuk layanan ini tidak lagi didukung secara aktif. Pelanggan disarankan untuk pindah ke layanan alternatif segera setelah sesuai.
Windows PowerShell 5.1 and .NET 4.7.2
Menggunakan Az dengan PowerShell 5.1 untuk Windows memerlukan penginstalan .NET Framework 4.7.2. Menggunakan PowerShell Core 6.x atau yang lebih baru tidak memerlukan .NET Framework.
Penghapusan sementara masuk Pengguna menggunakan PSCredential
Karena perubahan alur autentikasi untuk .NET Standard, kami untuk sementara menghapus pengguna yang masuk melalui PSCredential. Kemampuan ini akan diperkenalkan kembali dalam rilis 1/15/2019 untuk PowerShell 5.1 untuk Windows. Ini dibahas secara detail dalam masalah GitHub ini.
Masuk kode perangkat default sebagai ganti perintah browser web
Karena perubahan dalam alur autentikasi untuk .NET Standar, kami menggunakan masuk perangkat sebagai alur masuk default selama masuk interaktif. Masuk berbasis browser web akan diperkenalkan kembali untuk PowerShell 5.1 untuk Windows sebagai default dalam rilis 1/15/2019. Pada saat itu, pengguna akan dapat memilih masuk perangkat menggunakan parameter Beralih.
Perubahan modul yang dapat menyebabkan gangguan
Bagian ini merinci perubahan spesifik yang dapat menyebabkan gangguan untuk modul dan cmdlet individual.
Az.ApiManagement (previously AzureRM.ApiManagement)
- Menghapus cmdlet berikut:
- New-AzureRmApiManagementHostnameConfiguration
- Set-AzureRmApiManagementHostnames
- Update-AzureRmApiManagementDeployment
- Import-AzureRmApiManagementHostnameCertificate
- Gunakan cmdlet Set-AzApiMenagement untuk mengatur properti ini sebagai gantinya
- Menghapus properti berikut:
- Properti yang dihapus
PortalHostnameConfiguration
,ProxyHostnameConfiguration
,ManagementHostnameConfiguration
, danScmHostnameConfiguration
pada jenisPsApiManagementHostnameConfiguration
dariPsApiManagementContext
. Sebagai gantinya gunakanPortalCustomHostnameConfiguration
,ProxyCustomHostnameConfiguration
,ManagementCustomHostnameConfiguration
, danScmCustomHostnameConfiguration
pada jenisPsApiManagementCustomHostNameConfiguration
. - Menghapus properti
StaticIPs
dari PsApiManagementContext. Properti telah dibagi menjadiPublicIPAddresses
danPrivateIPAddresses
. - Menghapus properti
Location
yang diperlukan dari cmdlet New-AzureApiManagementVirtualNetwork.
- Properti yang dihapus
Az.Billing (previously AzureRM.Billing, AzureRM.Consumption, and AzureRM.UsageAggregates)
- Parameter
InvoiceName
telah dihapus dari cmdletGet-AzConsumptionUsageDetail
. Skrip perlu menggunakan parameter identitas lain untuk faktur.
Az.CognitiveServices (previously AzureRM.CognitiveServices)
- Menghapus set parameter
GetSkusWithAccountParamSetName
dari cmdletGet-AzCognitiveServicesAccountSkus
. Anda harus mendapatkan Skus dengan Jenis Akun dan Lokasi, bukan menggunakan ResourceGroupName dan Nama Akun.
Az.Compute (previously AzureRM.Compute)
IdentityIds
dihapus dari propertiIdentity
di objekPSVirtualMachine
danPSVirtualMachineScaleSet
Skrip tidak boleh lagi menggunakan nilai kolom ini untuk membuat keputusan pemrosesan.- Jenis properti
InstanceView
objekPSVirtualMachineScaleSetVM
diubah dariVirtualMachineInstanceView
menjadiVirtualMachineScaleSetVMInstanceView
- properti
AutoOSUpgradePolicy
danAutomaticOSUpgrade
dihapus dari propertiUpgradePolicy
- Jenis properti
Sku
objekPSSnapshotUpdate
diubah dariDiskSku
menjadiSnapshotSku
VmScaleSetVMParameterSet
dihapus dari cmdletAdd-AzVMDataDisk
, Anda tidak dapat lagi menambahkan disk data secara individual ke mesin virtual ScaleSet.
Az.DataFactory (sebelumnya AzureRM.DataFactories dan AzureRM.DataFactoryV2)
- Parameter
GatewayName
telah menjadi wajib dalam cmdletNew-AzDataFactoryEncryptValue
- Menghapus cmdlet
New-AzDataFactoryGatewayKey
- Menghapus parameter
LinkedServiceName
dari cmdletGet-AzDataFactoryV2ActivityRun
, Skrip tidak lagi menggunakan nilai bidang ini untuk membuat keputusan pemrosesan.
Az.DataLakeAnalytics (previously AzureRM.DataLakeAnalytics)
- Menghapus cmdlet yang tidak digunakan lagi:
New-AzDataLakeAnalyticsCatalogSecret
,Remove-AzDataLakeAnalyticsCatalogSecret
, danSet-AzDataLakeAnalyticsCatalogSecret
Az.DataLakeStore (previously AzureRM.DataLakeStore)
Cmdlet berikut telah memiliki parameter
Encoding
yang diubah dari jenisFileSystemCmdletProviderEncoding
menjadiSystem.Text.Encoding
. Perubahan ini menghapus nilai pengodeanString
danOem
. Semua nilai pengodean sebelumnya tetap ada.- New-AzureRmDataLakeStoreItem
- Add-AzureRmDataLakeStoreItemContent
- Get-AzureRmDataLakeStoreItemContent
Menghapus alias properti
Tags
yang tidak digunakan lagi dari cmdletNew-AzDataLakeStoreAccount
danSet-AzDataLakeStoreAccount
Skrip menggunakan
New-AzureRMDataLakeStoreAccount -Tags @{TagName="TagValue"}
Harus diubah menjadi
New-AzDataLakeStoreAccount -Tag @{TagName="TagValue"}
Menghapus properti
Identity
,EncryptionState
,EncryptionProvisioningState
,EncryptionConfig
,FirewallState
,FirewallRules
,VirtualNetworkRules
,TrustedIdProviderState
,TrustedIdProviders
,DefaultGroup
,NewTier
,CurrentTier
,FirewallAllowAzureIps
yang tidak digunakan lagi dari objekPSDataLakeStoreAccountBasic
. Setiap skrip yang menggunakanPSDatalakeStoreAccount
yang dikembalikan dariGet-AzDataLakeStoreAccount
seharusnya tidak mereferensikan properti ini.
Az.KeyVault (previously AzureRM.KeyVault)
- Properti
PurgeDisabled
telah dihapus dari objekPSKeyVaultKeyAttributes
,PSKeyVaultKeyIdentityItem
, danPSKeyVaultSecretAttributes
Skrip seharusnya tidak lagi merujuk propertiPurgeDisabled
untuk membuat keputusan pemrosesan.
Az.Media (previously AzureRM.Media)
Menghapus alias properti
Tags
yang tidak digunakan lagi dari cmdletNew-AzMediaService
Skrip menggunakanNew-AzureRMMediaService -Tags @{TagName="TagValue"}
Harus diubah menjadi
New-AzMediaService -Tag @{TagName="TagValue"}
Az.Monitor (previously AzureRM.Insights)
Menghapus parameter
Categories
danTimegrains
nama jamak sebagai ganti nama parameter tunggal dari cmdletSet-AzDiagnosticSetting
Skrip menggunakanSet-AzureRmDiagnosticSetting -Timegrains PT1M -Categories Category1, Category2
Harus diubah menjadi
Set-AzDiagnosticSetting -Timegrain PT1M -Category Category1, Category2
Az.Network (previously AzureRM.Network)
- Menghapus parameter
ResourceId
yang tidak digunakan lagi dari cmdletGet-AzServiceEndpointPolicyDefinition
- Menghapus properti
EnableVmProtection
yang tidak digunakan lagi dari objekPSVirtualNetwork
- Menghapus cmdlet
Set-AzVirtualNetworkGatewayVpnClientConfig
yang tidak digunakan lagi
Skrip seharusnya tidak lagi membuat keputusan pemrosesan berdasarkan nilai-nilai di kolom ini.
Az.OperationalInsights (previously AzureRM.OperationalInsights)
Set parameter default untuk
Get-AzOperationalInsightsDataSource
dihapus, danByWorkspaceNameByKind
menjadi set parameter defaultSkrip yang mencantumkan sumber data menggunakan
Get-AzureRmOperationalInsightsDataSource
Harus diubah untuk menentukan Jenis
Get-AzOperationalInsightsDataSource -Kind AzureActivityLog
Az.RecoveryServices (sebelumnya AzureRM.RecoveryServices, AzureRM.RecoveryServices.Backup, dan AzureRM.RecoveryServices.SiteRecovery)
- Menghapus parameter
Encryption
dari cmdletNew/Set-AzRecoveryServicesAsrPolicy
- Parameter
TargetStorageAccountName
kini wajib untuk pemulihan disk terkelola di cmdletRestore-AzRecoveryServicesBackupItem
- Menghapus parameter
StorageAccountName
danStorageAccountResourceGroupName
dalam cmdletRestore-AzRecoveryServicesBackupItem
- Menghapus parameter
Name
dalam cmdletGet-AzRecoveryServicesBackupContainer
Az.Resources (previously AzureRM.Resources)
Menghapus parameter
Sku
dari cmdletNew/Set-AzPolicyAssignment
Menghapus parameter
Password
dari cmdletNew-AzADServicePrincipal
danNew-AzADSpCredential
Kata sandi dibuat secara otomatis, skrip yang menyediakan kata sandinya:New-AzAdSpCredential -ObjectId 1f99cf81-0146-4f4e-beae-2007d0668476 -Password $secPassword
Harus diubah untuk mengambil kata sandi dari output:
$credential = New-AzAdSpCredential -ObjectId 1f99cf81-0146-4f4e-beae-2007d0668476 $secPassword = $credential.Secret
Az.ServiceFabric (previously AzureRM.ServiceFabric)
- Jenis pengembalian cmdlet berikut telah diubah:
- Properti
ServiceTypeHealthPolicies
jenisApplicationHealthPolicy
telah dihapus. - Properti
ApplicationHealthPolicies
jenisClusterUpgradeDeltaHealthPolicy
telah dihapus. - Properti
OverrideUserUpgradePolicy
jenisClusterUpgradePolicy
telah dihapus. - Perubahan ini memengaruhi cmdlet berikut:
- Add-AzServiceFabricClientCertificate
- Add-AzServiceFabricClusterCertificate
- Add-AzServiceFabricNode
- Add-AzServiceFabricNodeType
- Get-AzServiceFabricCluster
- Remove-AzServiceFabricClientCertificate
- Remove-AzServiceFabricClusterCertificate
- Remove-AzServiceFabricNode
- Remove-AzServiceFabricNodeType
- Remove-AzServiceFabricSetting
- Set-AzServiceFabricSetting
- Set-AzServiceFabricUpgradeType
- Update-AzServiceFabricDurability
- Update-AzServiceFabricReliability
- Properti
Az.Sql (sebelumnya AzureRM.Sql)
- Menghapus parameter
State
danResourceId
dari cmdletSet-AzSqlDatabaseBackupLongTermRetentionPolicy
- Menghapus cmdlet yang tidak digunakan lagi:
Get/Set-AzSqlServerBackupLongTermRetentionVault
,Get/Start/Stop-AzSqlServerUpgrade
,Get/Set-AzSqlDatabaseAuditingPolicy
,Get/Set-AzSqlServerAuditingPolicy
,Remove-AzSqlDatabaseAuditing
,Remove-AzSqlServerAuditing
- Menghapus parameter
Current
yang tidak digunakan lagi dari cmdletGet-AzSqlDatabaseBackupLongTermRetentionPolicy
- Menghapus parameter
DatabaseName
yang tidak digunakan lagi dari cmdletGet-AzSqlServerServiceObjective
- Menghapus parameter
PrivilegedLogin
yang tidak digunakan lagi dari cmdletSet-AzSqlDatabaseDataMaskingPolicy
Az.Storage (previously Azure.Storage and AzureRM.Storage)
- Untuk mendukung pembuatan konteks penyimpanan Oauth hanya dengan nama akun penyimpanan, kumpulan parameter default telah diubah menjadi
OAuthParameterSet
- Contoh:
$ctx = New-AzureStorageContext -StorageAccountName $accountName
- Contoh:
- Parameter
Location
telah menjadi wajib dalam cmdletGet-AzStorageUsage
- Metode API Storage kini menggunakan Pola Asinkron Berbasis Tugas (TAP), bukan panggilan API sinkron. Contoh berikut menunjukkan perintah asinkron baru:
Snapshot Blob
AzureRM:
$b = Get-AzureStorageBlob -Container $containerName -Blob $blobName -Context $ctx
$b.ICloudBlob.Snapshot()
Az:
$b = Get-AzStorageBlob -Container $containerName -Blob $blobName -Context $ctx
$task = $b.ICloudBlob.SnapshotAsync()
$task.Wait()
$snapshot = $task.Result
Berbagi Snapshot
AzureRM:
$Share = Get-AzureStorageShare -Name $containerName -Context $ctx
$snapshot = $Share.Snapshot()
Az:
$Share = Get-AzStorageShare -Name $containerName -Context $ctx
$task = $Share.SnapshotAsync()
$task.Wait()
$snapshot = $task.Result
Membatalkan penghapusan blob yang dihapus sementara
AzureRM:
$b = Get-AzureStorageBlob -Container $containerName -Blob $blobName -IncludeDeleted -Context $ctx
$b.ICloudBlob.Undelete()
Az:
$b = Get-AzStorageBlob -Container $containerName -Blob $blobName -IncludeDeleted -Context $ctx
$task = $b.ICloudBlob.UndeleteAsync()
$task.Wait()
Mengatur Tingkat Blob
AzureRM:
$blockBlob = Get-AzureStorageBlob -Container $containerName -Blob $blockBlobName -Context $ctx
$blockBlob.ICloudBlob.SetStandardBlobTier("hot")
$pageBlob = Get-AzureStorageBlob -Container $containerName -Blob $pageBlobName -Context $ctx
$pageBlob.ICloudBlob.SetPremiumBlobTier("P4")
Az:
$blockBlob = Get-AzStorageBlob -Container $containerName -Blob $blockBlobName -Context $ctx
$task = $blockBlob.ICloudBlob.SetStandardBlobTierAsync("hot")
$task.Wait()
$pageBlob = Get-AzStorageBlob -Container $containerName -Blob $pageBlobName -Context $ctx
$task = $pageBlob.ICloudBlob.SetPremiumBlobTierAsync("P4")
$task.Wait()
Az.Websites (previously AzureRM.Websites)
- Menghapus properti yang tidak digunakan lagi dari objek
PSAppServicePlan
,PSCertificate
,PSCloningInfo
, danPSSite
Azure PowerShell
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk