Condividi tramite


Guida alla migrazione per Az 2.0.0

Questo documento descrive le modifiche tra le versioni 1.0.0 e 2.0.0 di Az

Sommario

Modifiche che causano un'interruzione del modulo

Az.Compute

  • Rimozione del parametro Managed da cmdlet New-AzAvailabilitySet e Update-AzAvailabilitySet a favore dell'uso di Sku = Aligned

    Prima

    Update-AzAvailabilitySet -Managed
    

    Dopo

    Update-AzAvailabilitySet -Sku Aligned
    
  • Per coerenza, rimosso Image parametro dai set di parametri 'ByName' e 'ByResourceId' in Update-AzImage

    Prima

    Si noti che il codice seguente è funzionale, ma non viene usato ImageName passato, quindi la rimozione di questo parametro non ha alcun impatto funzionale.

    Update-AzImage -ResourceGroupName $Rg -ImageName $Name -Image $Image -Tag $tags
    
    Update-AzImage -ResourceId $Id -Image $Image -Tag $tags
    

    Dopo

    Update-AzImage -ResourceGroupName $Rg -ImageName $Name -Tag $tags
    
    Update-AzImage -ResourceId $Id -Tag $tags
    
  • Per coerenza, rimosso Name parametro dai set di parametri 'ByObject' e 'ByResourceId' in Restart-AzVM

    Prima

    Si noti che il codice seguente è funzionale, ma il nome passato non viene usato, quindi la rimozione di questo parametro non ha alcun impatto funzionale.

    Restart-AzVM -InputObject $VM -Name $Name
    
    Restart-AzVM -ResourceId $Id -Name $Name
    

    Dopo

    Restart-AzVM -InputObject $VM
    
    Restart-AzVM -ResourceId $Id
    
  • Per coerenza, rimosso Name parametro dai set di parametri 'ByObject' e 'ByResourceId' in Start-AzVM

    Prima

    Si noti che il codice seguente è funzionale, ma il nome passato non viene usato, quindi la rimozione di questo parametro non ha alcun impatto funzionale.

    Start-AzVM -InputObject $VM -Name $Name
    
    Start-AzVM -ResourceId $Id -Name $Name
    

    Dopo

    Start-AzVM -InputObject $VM
    
    Start-AzVM -ResourceId $Id
    
  • Per coerenza, rimosso Name parametro dai set di parametri 'ByObject' e 'ByResourceId' in Stop-AzVM

    Prima

    Si noti che il codice seguente è funzionale, ma il nome passato non viene usato, quindi la rimozione di questo parametro non ha alcun impatto funzionale.

    Stop-AzVM -InputObject $VM -Name $Name
    
    Stop-AzVM -ResourceId $Id -Name $Name
    

    Dopo

    Stop-AzVM -InputObject $VM
    
    Stop-AzVM -ResourceId $Id
    
  • Per coerenza, rimosso Name parametro dai set di parametri 'ByObject' e 'ByResourceId' in Remove-AzVM

    Prima

    Si noti che il codice seguente è funzionale, ma il nome passato non viene usato, quindi la rimozione di questo parametro non ha alcun impatto funzionale.

    Remove-AzVM -InputObject $VM -Name $Name
    
    Remove-AzVM -ResourceId $Id -Name $Name
    

    Dopo

    Remove-AzVM -InputObject $VM
    
    Remove-AzVM -ResourceId $Id
    
  • Per coerenza, rimosso Name parametro dai set di parametri 'ByObject' e 'ByResourceId' in Set-AzVM

    Prima

    Si noti che il codice seguente è funzionale, ma il nome passato non viene usato, quindi la rimozione di questo parametro non ha alcun impatto funzionale.

    Set-AzVM -InputObject $VM -Name $Name ...
    
    Set-AzVM -ResourceId $Id -Name $Name ...
    

    Dopo

    Set-AzVM -InputObject $VM ...
    
    Set-AzVM -ResourceId $Id ...
    
  • Per coerenza, rimosso Name parametro dai set di parametri 'ByObject' e 'ByResourceId' in Save-AzVMImage

    Prima

    Si noti che il codice seguente è funzionale, ma il nome passato non viene usato, quindi la rimozione di questo parametro non ha alcun impatto funzionale.

    Save-AzVMImage -InputObject $VM -Name $Name ...
    
    Save-AzVMImage -ResourceId $Id -Name $Name ...
    

    Dopo

    Save-AzVMImage -InputObject $VM ...
    
    Save-AzVMImage -ResourceId $Id ...
    
  • Aggiunta della proprietà ProtectionPolicy per incapsulare la proprietà ProtectFromScaleIn in PSVirtualMachineScaleSetVM

    Prima

    $vmss = Get-AzVMssVM ...
    $vmss.ProtectFromScaleIn = $true
    
    $vmss = Update-AzVMssVM ...
    $vmss.ProtectFromScaleIn = $true
    
    $vmss = Remove-AzVMssVMDataDisk ...
    $vmss.ProtectFromScaleIn = $true
    

    Dopo

    $vmss = Get-AzVMssVM ...
    $vmss.ProtectionPolicy.ProtectFromScaleIn = $true
    
    $vmss = Update-AzVMssVM ...
    $vmss.ProtectionPolicy.ProtectFromScaleIn = $true
    
    $vmss = Remove-AzVMssVMDataDisk ...
    $vmss.ProtectionPolicy.ProtectFromScaleIn = $true
    
    
  • Aggiunta la proprietà EncryptionSettingsCollection per racchiudere la proprietà EncryptionSettings in PSDisk

    Prima

    $disk = New-AzDisk ... | Set-AzDiskDiskEncrytionKey ...
    $disk.EncryptionSettings
    
    $disk = New-AzDisk ... | Set-AzDiskKeyEncrytionKey ...
    $disk.EncryptionSettings
    
    $update = New-AzDiskUpdateConfig | Set-AzDiskUpdateDiskEncryptionKey ...
    $update.EncryptionSettings
    
    $update = New-AzDiskUpdateConfig | Set-AzDiskUpdateKeyEncryptionKey ...
    $update.EncryptionSettings
    

    Dopo

    $disk = New-AzDisk ... | Set-AzDiskDiskEncrytionKey ...
    $disk.EncryptionSettingsCollection.EncryptionSettings
    
    $disk = New-AzDisk ... | Set-AzDiskKeyEncrytionKey ...
    $disk.EncryptionSettingsCollection.EncryptionSettings
    
    $update = New-AzDiskUpdateConfig | Set-AzDiskUpdateDiskEncryptionKey ...
    $update.EncryptionSettingsCollection.EncryptionSettings
    
    $update = New-AzDiskUpdateConfig | Set-AzDiskUpdateKeyEncryptionKey ...
    $update.EncryptionSettingsCollection.EncryptionSettings
    
  • Aggiunta la proprietà EncryptionSettingsCollection per racchiudere la proprietà EncryptionSettings in PSSnapshot

    Prima

    $snap = New-AzSnapshotConfig ... | Set-AzSnapshotDiskEncryptionKey ...
    $snap.EncryptionSettings
    
    $snap = New-AzSnapshotConfig ... | Set-AzSnapshotKeyEncryptionKey ...
    $snap.EncryptionSettings
    
    $update = New-AzSnapshotUpdateConfig ... | Set-AzSnapshotUpdateDiskEncryptionKey ...
    $update.EncryptionSettings
    
    $update = New-AzSnapshotUpdateConfig ... | Set-AzSnapshotUpdateKeyEncryptionKey ...
    $update.EncryptionSettings
    

    Dopo

    $snap = New-AzSnapshotConfig ... | Set-AzSnapshotDiskEncryptionKey ...
    $snap.EncryptionSettingsCollection.EncryptionSettings
    
    $snap = New-AzSnapshotConfig ... | Set-AzSnapshotKeyEncryptionKey ...
    $snap.EncryptionSettingsCollection.EncryptionSettings
    
    $update = New-AzSnapshotUpdateConfig ... | Set-AzSnapshotUpdateDiskEncryptionKey ...
    $update.EncryptionSettingsCollection.EncryptionSettings
    
    $update = New-AzSnapshotUpdateConfig ... | Set-AzSnapshotUpdateKeyEncryptionKey ...
    $update.EncryptionSettingsCollection.EncryptionSettings
    
  • Rimozione della proprietà VirtualMachineProfile da PSVirtualMachineScaleSet

    Prima

    $vmss = New-AzVMSSConfig ...
    $vmss.VirtualMachineProfile.AdditionalCapabilities.UltraSSDEnabled = $true
    

    Dopo

    $vmss = New-AzVMSSConfig ...
    $vmss.AdditionalCapabilities.UltraSSDEnabled = $true
    
  • Cmdlet Set-AzVMBootDiagnostic ha rimosso l'alias per Set-AzVMBootDiagnostics

    Prima

    Uso dell'alias deprecato

    Set-AzVMBootDiagnostics
    

    Dopo

    Set-AzVMBootDIagnostic
    
  • Cmdlet Export-AzLogAnalyticThrottledRequest ha rimosso l'alias a Export-AzLogAnalyticThrottledRequests

    Prima

    Uso dell'alias deprecato

    Export-AzLogAnalyticThrottledRequests
    

    Dopo

    Export-AzLogAnalyticThrottledRequest
    

Az.HDInsight

  • Sono stati rimossi i cmdlet Grant-AzHDInsightHttpServicesAccess e Revoke-AzHDInsightHttpServicesAccess. Non sono più necessari perché l'accesso HTTP è sempre abilitato in tutti i cluster HDInsight.
  • È stato aggiunto un nuovo cmdlet Set-AzHDInsightGatewayCredential. Usare questo cmdlet per modificare il nome utente e la password HTTP del gateway (sostituisce Grant-AzHDInsightHttpServicesAccess).
  • Aggiornamento del cmdlet Get-AzHDInsightJobOutput per supportare l'accesso granulare in base al ruolo alla chiave di archiviazione.
    • Gli utenti con ruoli Operatore cluster HDInsight, Collaboratore o Proprietario non saranno interessati.
    • Gli utenti con un ruolo solo di Lettore dovranno specificare il parametro DefaultStorageAccountKey esplicitamente.

Per altre informazioni su queste modifiche all'accesso in base al ruolo, vedere aka.ms/hdi-config-update

Prima

Grant-AzHDInsightHttpServicesAccess -ClusterName $cluster -HttpCredential $credential

Dopo

Set-AzHDInsightGatewayCredential -ClusterName $cluster -HttpCredential $credential

Utenti con solo ruolo lettore per il cmdlet Get-AzHDInsightJobOutput

Prima

Get-AzHDInsightJobOutput  -ClusterName $clusterName -JobId $jobId

Dopo

Get-AzHDInsightJobOutput  -ClusterName $clusterName -JobId $jobId -DefaultStorageAccountKey $storageAccountKey

Az.Storage

  • Gli spazi dei nomi per i tipi restituiti dai cmdlet Blob, Queue e File hanno cambiato il loro spazio dei nomi da Microsoft.WindowsAzure.Storage a Microsoft.Azure.Storage. Anche se questa non è tecnicamente una modifica di rilievo in base ai criteri di modifica di rilievo, potrebbe richiedere alcune modifiche al codice che utilizza i metodi di Storage .NET SDK per interagire con gli oggetti restituiti da questi cmdlet.

    Esempio 1: Aggiungere un messaggio a una coda (modificare lo spazio dei nomi dell'oggetto CloudQueueMessage)

    Prima:

    $queue = Get-AzStorageQueue –Name $queueName –Context $ctx
    $queueMessage = New-Object -TypeName "Microsoft.WindowsAzure.Storage.Queue.CloudQueueMessage,$($queue.CloudQueue.GetType().Assembly.FullName)" -ArgumentList "This is message 1"
    $queue.CloudQueue.AddMessageAsync($QueueMessage)
    

    Dopo:

    $queue = Get-AzStorageQueue –Name $queueName –Context $ctx
    $queueMessage = New-Object -TypeName "Microsoft.Azure.Storage.Queue.CloudQueueMessage,$($queue.CloudQueue.GetType().Assembly.FullName)"  -ArgumentList "This is message 1"
    $queue.CloudQueue.AddMessageAsync($QueueMessage)
    

    Esempio 2: Recuperare attributi BLOB/file con AccessCondition (modificare lo spazio dei nomi dell'oggetto AccessCondition)

    Prima:

    $accessCondition= New-Object Microsoft.WindowsAzure.Storage.AccessCondition
    
    $blob = Get-AzureStorageBlob -Container $containerName -Blob $blobName
    $blob.ICloudBlob.FetchAttributes($accessCondition)
    
    $file = Get-AzureStorageFile -ShareName $shareName -Path $filepath
    $file.FetchAttributes($accessCondition)
    

    Dopo:

    $accessCondition= New-Object Microsoft.Azure.Storage.AccessCondition
    
    $blob = Get-AzureStorageBlob -Container $containerName -Blob $blobName
    $blob.ICloudBlob.FetchAttributes($accessCondition)
    
    $file = Get-AzureStorageFile -ShareName $shareName -Path $filepath
    $file.FetchAttributes($accessCondition)
    
  • Anche se tecnicamente non si tratta di una modifica di rilievo, noterete delle differenze nell'output della proprietà Sku.Name degli account di archiviazione provenienti dalle modifiche di New/Get/Set-AzStorageAccount, che sono le seguenti. Dopo la modifica, l'output e l'input SkuName sono allineati.

    • "StandardLRS" -> "Standard_LRS";
    • "StandardGRS" -> "Standard_GRS";
    • "StandardRAGRS" -> "Standard_RAGRS";
    • "StandardZRS" -> "Standard_ZRS";
    • "PremiumLRS" -> "Premium_LRS";
  • Il comportamento predefinito del servizio durante la creazione di un account di archiviazione senza specificare un tipo è cambiato. Nelle versioni precedenti, quando è stato creato un account di archiviazione senza Kind specificato, è stato usato il tipo di account di archiviazione Tipo di Storage, nella nuova versione StorageV2 è il valore Kind predefinito. Se hai bisogno di creare un account di archiviazione V1 con Tipo 'Storage', aggiungi il parametro '-Kind Storage'.

    Esempio: Creare un account di archiviazione (modifica tipo predefinito)

    Prima:

    PS c:\> New-AzStorageAccount -ResourceGroupName groupname -Name accountname -SkuName Standard_LRS -Location "westus"
    
    StorageAccountName ResourceGroupName Location SkuName     Kind      AccessTier CreationTime          ProvisioningState EnableHttpsTrafficOnly
    ------------------ ----------------- -------- -------     ----      ---------- ------------          ----------------- ----------------------
    accountname        groupname         westus   StandardLRS Storage   Hot        4/17/2018 10:34:32 AM Succeeded         False
    

    Dopo:

    PS c:\> New-AzStorageAccount -ResourceGroupName groupname -Name accountname -SkuName Standard_LRS -Location "westus"
    
    StorageAccountName ResourceGroupName Location SkuName      Kind      AccessTier CreationTime          ProvisioningState EnableHttpsTrafficOnly
    ------------------ ----------------- -------- -------      ----      ----------  ------------          ----------------- ----------------------
    accountname        groupname         westus   Standard_LRS StorageV2 Hot        4/17/2018 10:34:32 AM Succeeded         False