Az 2.0.0 の移行ガイド

このドキュメントでは、Az のバージョン 1.0.0 と 2.0.0 の間での変更点について説明します

目次

モジュールの破壊的変更

Az.Compute

  • Sku = Aligned の使用を優先して、New-AzAvailabilitySet および Update-AzAvailabilitySet コマンドレットから Managed パラメーターを削除しました

    以前

    Update-AzAvailabilitySet -Managed
    

    これらの手順の完了後、

    Update-AzAvailabilitySet -Sku Aligned
    
  • 一貫性を保つのために、Update-AzImageの 'ByName' および 'ByResourceId' パラメーター セットから Image パラメーターを削除しました

    以前

    以下のコードは機能しますが、渡された ImageName は使用されないため、このパラメーターを削除しても機能への影響はないことに注意してください。

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

    これらの手順の完了後、

    Update-AzImage -ResourceGroupName $Rg -ImageName $Name -Tag $tags
    
    Update-AzImage -ResourceId $Id -Tag $tags
    
  • 一貫性を保つのために、Restart-AzVMの 'ByObject' および 'ByResourceId' パラメーター セットから Name パラメーターを削除しました

    以前

    以下のコードは機能しますが、渡された Name は使用されないため、このパラメーターを削除しても機能への影響はないことに注意してください。

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

    これらの手順の完了後、

    Restart-AzVM -InputObject $VM
    
    Restart-AzVM -ResourceId $Id
    
  • 一貫性を保つのために、Start-AzVMの 'ByObject' および 'ByResourceId' パラメーター セットから Name パラメーターを削除しました

    以前

    以下のコードは機能しますが、渡された Name は使用されないため、このパラメーターを削除しても機能への影響はないことに注意してください。

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

    これらの手順の完了後、

    Start-AzVM -InputObject $VM
    
    Start-AzVM -ResourceId $Id
    
  • 一貫性を保つのために、Stop-AzVMの 'ByObject' および 'ByResourceId' パラメーター セットから Name パラメーターを削除しました

    以前

    以下のコードは機能しますが、渡された Name は使用されないため、このパラメーターを削除しても機能への影響はないことに注意してください。

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

    これらの手順の完了後、

    Stop-AzVM -InputObject $VM
    
    Stop-AzVM -ResourceId $Id
    
  • 一貫性を保つのために、Remove-AzVMの 'ByObject' および 'ByResourceId' パラメーター セットから Name パラメーターを削除しました

    以前

    以下のコードは機能しますが、渡された Name は使用されないため、このパラメーターを削除しても機能への影響はないことに注意してください。

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

    これらの手順の完了後、

    Remove-AzVM -InputObject $VM
    
    Remove-AzVM -ResourceId $Id
    
  • 一貫性を保つのために、Set-AzVMの 'ByObject' および 'ByResourceId' パラメーター セットから Name パラメーターを削除しました

    以前

    以下のコードは機能しますが、渡された Name は使用されないため、このパラメーターを削除しても機能への影響はないことに注意してください。

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

    これらの手順の完了後、

    Set-AzVM -InputObject $VM ...
    
    Set-AzVM -ResourceId $Id ...
    
  • 一貫性を保つのために、Save-AzVMImageの 'ByObject' および 'ByResourceId' パラメーター セットから Name パラメーターを削除しました

    以前

    以下のコードは機能しますが、渡された Name は使用されないため、このパラメーターを削除しても機能への影響はないことに注意してください。

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

    これらの手順の完了後、

    Save-AzVMImage -InputObject $VM ...
    
    Save-AzVMImage -ResourceId $Id ...
    
  • PSVirtualMachineScaleSetVMProtectFromScaleIn プロパティをカプセル化するために ProtectionPolicy プロパティを追加しました

    以前

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

    これらの手順の完了後、

    $vmss = Get-AzVMssVM ...
    $vmss.ProtectionPolicy.ProtectFromScaleIn = $true
    
    $vmss = Update-AzVMssVM ...
    $vmss.ProtectionPolicy.ProtectFromScaleIn = $true
    
    $vmss = Remove-AzVMssVMDataDisk ...
    $vmss.ProtectionPolicy.ProtectFromScaleIn = $true
    
    
  • PSDiskEncryptionSettings プロパティを囲むために EncryptionSettingsCollection プロパティを追加しました

    以前

    $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
    

    これらの手順の完了後、

    $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
    
  • PSSnapshotEncryptionSettings プロパティを囲むために EncryptionSettingsCollection プロパティを追加しました

    以前

    $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
    

    これらの手順の完了後、

    $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
    
  • PSVirtualMachineScaleSet から VirtualMachineProfile プロパティを削除しました

    以前

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

    これらの手順の完了後、

    $vmss = New-AzVMSSConfig ...
    $vmss.AdditionalCapabilities.UltraSSDEnabled = $true
    
  • コマンドレット Set-AzVMBootDiagnostic のエイリアス Set-AzVMBootDiagnostics を削除しました

    以前

    非推奨のエイリアスを使用

    Set-AzVMBootDiagnostics
    

    これらの手順の完了後、

    Set-AzVMBootDIagnostic
    
  • コマンドレット Export-AzLogAnalyticThrottledRequest のエイリアス Export-AzLogAnalyticThrottledRequests を削除しました

    以前

    非推奨のエイリアスを使用

    Export-AzLogAnalyticThrottledRequests
    

    これらの手順の完了後、

    Export-AzLogAnalyticThrottledRequest
    

Az.HDInsight

  • Grant-AzHDInsightHttpServicesAccess および Revoke-AzHDInsightHttpServicesAccess コマンドレットを削除しました。 HTTP アクセスは常にすべての HDInsight クラスターで有効になっているため、これらは不要になりました。
  • 新しい Set-AzHDInsightGatewayCredential コマンドレットを追加しました。 このコマンドレットを使用して、ゲートウェイの HTTP ユーザー名とパスワードを変更します (Grant-AzHDInsightHttpServicesAccess に代わるもの)。
  • ストレージ キーに対するきめ細かいロールベースのアクセスをサポートするため、Get-AzHDInsightJobOutput コマンドレットを更新しました。
    • HDInsight クラスターのオペレーター、共同作成者、または所有者のロールを持つユーザーには影響を及ぼしません。
    • 閲覧者のロールのみを持つユーザーは、DefaultStorageAccountKey パラメーターを明示的に指定する必要があります。

これらのロールベースのアクセスの変更の詳細については、aka.ms/hdi-config-update を参照してください

以前

Grant-AzHDInsightHttpServicesAccess -ClusterName $cluster -HttpCredential $credential

これらの手順の完了後、

Set-AzHDInsightGatewayCredential -ClusterName $cluster -HttpCredential $credential

コマンドレット Get AzHDInsightJobOutput の閲覧者のロールのみを持つユーザー

以前

Get-AzHDInsightJobOutput  -ClusterName $clusterName -JobId $jobId

これらの手順の完了後、

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

Az.Storage

  • Blob、キュー、およびファイルのコマンドレットから返される型の名前空間は、名前空間を Microsoft.WindowsAzure.Storage から Microsoft.Azure.Storage に変更しました。 これは厳密に言えば重大な変更ポリシーに従った重大な変更ではありませんが、これらのコマンドレットから返されたオブジェクトを操作するために Storage .Net SDK からのメソッドを使用するコードに、何らかの変更が必要になる場合があります。

    例 1: メッセージをキューに追加します (CloudQueueMessage オブジェクトの名前空間を変更)

    次の処理の前

    $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)
    

    次の処理の後

    $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)
    

    例 2: AccessCondition を使用して BLOB/ファイル属性を取得します (AccessCondition オブジェクトの名前空間を変更)

    次の処理の前

    $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)
    

    次の処理の後

    $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)
    
  • 厳密に言えば重大な変更ではありませんが、New/Get/Set-AzStorageAccount の変更から返されるストレージ アカウントの Sku.Name プロパティの出力の違いが次のようになることがわかります。 (この変更の後、出力と入力の SkuName が調整されます。)

    • "StandardLRS" -> "Standard_LRS";
    • "StandardGRS" -> "Standard_GRS";
    • "StandardRAGRS" -> "Standard_RAGRS";
    • "StandardZRS" -> "Standard_ZRS";
    • "PremiumLRS" -> "Premium_LRS";
  • 種類を指定せずにストレージ アカウントを作成するときの既定のサービスの動作が変更されました。 以前のバージョンでは、Kind を指定せずにストレージ アカウントを作成すると、種類が Storage のストレージ アカウントが使用されました。新しいバージョンでは、StorageV2 が既定の Kind の値です。 種類が 'Storage' の V1 ストレージ アカウントを作成する必要がある場合は、パラメーター '-Kind Storage' を追加します

    例: ストレージ アカウントを作成する (既定の種類の変更)

    次の処理の前

    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
    

    次の処理の後

    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