次の方法で共有


Azure PowerShell を使用して、特殊化されたイメージから Azure Stack Edge Pro GPU デバイスに VM をデプロイする

適用対象:はい (Pro GPU SKU の場合)Azure Stack Edge Pro - GPUはい (Pro 2 SKU の場合)Azure Stack Edge Pro 2はい (Pro R SKU の場合)Azure Stack Edge Pro Rはい (Mini R SKU の場合)Azure Stack Edge Mini R

この記事では、特殊化されたイメージから Azure Stack Edge Pro GPU デバイスに仮想マシン (VM) をデプロイするために必要な手順について説明します。

Azure Stack Edge Pro GPU で VM をデプロイするための一般化されたイメージを準備するには、Windows VHD から一般化されたイメージを準備する方法または ISO から一般化されたイメージを準備する方法に関する記事をご覧ください。

VM イメージについて

Windows VHD または VHDX を使用すると、"特殊化された" イメージまたは "一般化された" イメージを作成できます。 次の表は、"特殊化" されたイメージと "一般化" されたイメージの主な違いをまとめたものです。

画像の種類 一般化されたイメージ 専用イメージ
移行先 どのシステムにもデプロイされる 特定のシステムが対象
ブート後のセットアップ VM の初回ブート時にセットアップが必要。 セットアップは必要ありません。
VM はプラットフォームによってオンにされる。
構成 ホスト名、管理者ユーザー、その他の VM 固有の設定が必要。 事前構成済み。
どのような場合に使用するか 同じイメージからの複数の新しい VM の作成。 特定のマシンの移行または以前のバックアップからの VM の復元。

ワークフロー

特殊化されたイメージから VM をデプロイするための大まかなワークフローは次のとおりです。

  1. Azure Stack Edge Pro GPU デバイス上のローカル ストレージ アカウントに VHD をコピーします。
  2. VHD から新しいマネージド ディスクを作成します。
  3. マネージド ディスクから新しい仮想マシンを作成し、マネージド ディスクをアタッチします。

前提条件

PowerShell を使用してデバイス上に VM をデプロイする前に、以下を確認してください。

ローカル Azure Resource Manager への接続を確認する

クライアントがローカル Azure Resource Manager に接続できることを確認します。

  1. ローカル デバイス API を呼び出して認証します。

    Login-AzureRMAccount -EnvironmentName <Environment Name>
    
  2. ユーザー名 (EdgeArmUser) とパスワードを指定して Azure Resource Manager 経由で接続します。 パスワードを覚えていない場合は、Azure Resource Manager のパスワードを再設定し、そのパスワードを使用してサインインします。

特殊化されたイメージから VM をデプロイする

以下のセクションでは、特殊化されたイメージから VM をデプロイする手順について詳しく説明します。

デバイス上のローカル ストレージ アカウントに VHD をコピーする

VHD をローカル ストレージ アカウントにコピーするには、次の手順に従います。

  1. 自分の Azure Stack Edge のローカル BLOB ストレージ アカウントにソース VHD をコピーします。

  2. 結果の URI をメモしておきます。 この URI は、後の手順で使用します。

    ローカル ストレージ アカウントを作成してアクセスする方法については、「Azure PowerShell を使用して Azure Stack Edge デバイスに VM をデプロイする」の「ストレージ アカウントの作成」から「VHD のアップロード」までのセクションを参照してください。

VHD からマネージド ディスクを作成する

先ほどストレージ アカウントにアップロードした VHD からマネージド ディスクを作成するには、次の手順に従います。

  1. パラメーターを設定する。

    $VhdURI = <URI of VHD in local storage account>
    $DiskRG = <managed disk resource group>
    $DiskName = <managed disk name>    
    

    出力例を次に示します。

    PS C:\WINDOWS\system32> $VHDURI = "https://myasevmsa.blob.myasegpudev.wdshcsso.com/vhds/WindowsServer2016Datacenter.vhd"
    PS C:\WINDOWS\system32> $DiskRG = "myasevm1rg"
    PS C:\WINDOWS\system32> $DiskName = "myasemd1"
    
  2. 新しいマネージド ディスクを作成します。

    $StorageAccountId = (Get-AzureRmStorageAccount -ResourceGroupName $ResourceGroupName -Name $StorageAccountName).Id
    
    $DiskConfig = New-AzureRmDiskConfig -Location DBELocal -StorageAccountId $StorageAccountId -CreateOption Import -SourceUri "Source URL for your VHD"
    
    

    出力例を次に示します。 ここでの場所は、ローカル ストレージ アカウントの場所に設定され、Azure Stack Edge Pro GPU デバイス上のすべてのローカル ストレージ アカウントに対して常に DBELocal となります。

    PS C:\WINDOWS\system32> $DiskConfig = New-AzureRmDiskConfig -Location DBELocal -CreateOption Import -SourceUri $VHDURI
    PS C:\WINDOWS\system32> $disk = New-AzureRMDisk -ResourceGroupName $DiskRG -DiskName $DiskName -Disk $DiskConfig
    PS C:\WINDOWS\system32>    
    

マネージド ディスクから VM を作成する

マネージド ディスクから VM を作成するには、次の手順に従います。

  1. パラメーターを設定する。

    $NicRG = <NIC resource group>
    $NicName = <NIC name>
    $IPConfigName = <IP config name>
    $PrivateIP = <IP address> #Optional
    
    $VMRG = <VM resource group>
    $VMName = <VM name>
    $VMSize = <VM size> 
    

    Note

    PrivateIP パラメーターは省略可能です。 静的 IP を割り当てるには、このパラメーターを使用します。そうしない場合の既定値は DHCP を使用した動的 IP となります。

    出力例を次に示します。 必要に応じて、リソースに対して個別のリソース グループを作成して指定することもできますが、この例では、すべての VM リソースに対して同じリソース グループが指定されています。

    PS C:\WINDOWS\system32> $NicRG = "myasevm1rg"
    PS C:\WINDOWS\system32> $NicName = "myasevmnic1"
    PS C:\WINDOWS\system32> $IPConfigName = "myaseipconfig1" 
    
    PS C:\WINDOWS\system32> $VMRG = "myasevm1rg"
    PS C:\WINDOWS\system32> $VMName = "myasetestvm1"
    PS C:\WINDOWS\system32> $VMSize = "Standard_D1_v2"   
    
  2. 仮想ネットワークの情報を取得し、新しいネットワーク インターフェイスを作成します。

    このサンプルでは、既定のリソース グループ ASERG に関連付けられている既定の仮想ネットワーク ASEVNET 上に 1 つのネットワーク インターフェイスを作成することを前提にしています。 必要に応じて、別の仮想ネットワークを指定することも、複数のネットワーク インターフェイスを作成することもできます。 詳細については、Azure portal を使用した VM へのネットワーク インターフェイスの追加に関する記事を参照してください。

    $armVN = Get-AzureRMVirtualNetwork -Name ASEVNET -ResourceGroupName ASERG
    $ipConfig = New-AzureRmNetworkInterfaceIpConfig -Name $IPConfigName -SubnetId $armVN.Subnets[0].Id [-PrivateIpAddress $PrivateIP]
    $nic = New-AzureRmNetworkInterface -Name $NicName -ResourceGroupName $NicRG -Location DBELocal -IpConfiguration $ipConfig
    

    出力例を次に示します。

    PS C:\WINDOWS\system32> $armVN = Get-AzureRMVirtualNetwork -Name ASEVNET -ResourceGroupName ASERG
    PS C:\WINDOWS\system32> $ipConfig = New-AzureRmNetworkInterfaceIpConfig -Name $IPConfigName -SubnetId $armVN.Subnets[0].Id
    PS C:\WINDOWS\system32> $nic = New-AzureRmNetworkInterface -Name $NicName -ResourceGroupName $NicRG -Location DBELocal -IpConfiguration $ipConfig
    WARNING: The output object type of this cmdlet will be modified in a future release.
    PS C:\WINDOWS\system32>    
    
  3. 新しい VM 構成オブジェクトを作成します。

    $vmConfig = New-AzureRmVMConfig -VMName $VMName -VMSize $VMSize
    
  4. VM にネットワーク インターフェイスを追加します。

    $vm = Add-AzureRmVMNetworkInterface -VM $vmConfig -Id $nic.Id
    
  5. VM 上の OS ディスクのプロパティを設定します。

    $vm = Set-AzureRmVMOSDisk -VM $vm -ManagedDiskId $disk.Id -StorageAccountType StandardLRS -CreateOption Attach –[Windows/Linux]
    

    このコマンドの最後のフラグは、VM で使用している OS に応じて -Windows または -Linux のいずれかになります。

  6. VM を作成します。

    New-AzureRmVM -ResourceGroupName $VMRG -Location DBELocal -VM $vm 
    

    出力例を次に示します。

    PS C:\WINDOWS\system32> $vmConfig = New-AzureRmVMConfig -VMName $VMName -VMSize $VMSize
    PS C:\WINDOWS\system32> $vm = Add-AzureRmVMNetworkInterface -VM $vmConfig -Id $nic.Id
    PS C:\WINDOWS\system32> $vm = Set-AzureRmVMOSDisk -VM $vm -ManagedDiskId $disk.Id -StorageAccountType StandardLRS -CreateOption Attach -Windows
    PS C:\WINDOWS\system32> New-AzureRmVM -ResourceGroupName $VMRG -Location DBELocal -VM $vm
    WARNING: Since the VM is created using premium storage or managed disk, existing standard storage account, myasevmsa, is used for
    boot diagnostics.    
    RequestId IsSuccessStatusCode StatusCode ReasonPhrase
    --------- ------------------- ---------- ------------
                             True         OK OK        
    PS C:\WINDOWS\system32>
    

VM とリソースを削除する

この記事では、リソース グループを 1 つだけ使用して、すべての VM リソースを作成しました。 そのリソース グループを削除すると、VM とすべての関連リソースが削除されます。

  1. 最初に、リソース グループの下に作成されているすべてのリソースを表示します。

    Get-AzureRmResource -ResourceGroupName <Resource group name>
    

    出力例を次に示します。

    PS C:\WINDOWS\system32> Get-AzureRmResource -ResourceGroupName myasevm1rg
    
    
    Name              : myasemd1
    ResourceGroupName : myasevm1rg
    ResourceType      : Microsoft.Compute/disks
    Location          : dbelocal
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myasevm1rg/providers/Microsoft.Compute/disk
                        s/myasemd1
    
    Name              : myasetestvm1
    ResourceGroupName : myasevm1rg
    ResourceType      : Microsoft.Compute/virtualMachines
    Location          : dbelocal
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myasevm1rg/providers/Microsoft.Compute/virt
                        ualMachines/myasetestvm1
    
    Name              : myasevmnic1
    ResourceGroupName : myasevm1rg
    ResourceType      : Microsoft.Network/networkInterfaces
    Location          : dbelocal
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myasevm1rg/providers/Microsoft.Network/netw
                        orkInterfaces/myasevmnic1
    
    Name              : myasevmsa
    ResourceGroupName : myasevm1rg
    ResourceType      : Microsoft.Storage/storageaccounts
    Location          : dbelocal
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myasevm1rg/providers/Microsoft.Storage/stor
                        ageaccounts/myasevmsa
    
    PS C:\WINDOWS\system32>
    
  2. リソース グループとすべての関連リソースを削除します。

    Remove-AzureRmResourceGroup -ResourceGroupName <Resource group name>
    

    出力例を次に示します。

    PS C:\WINDOWS\system32> Remove-AzureRmResourceGroup -ResourceGroupName myasevm1rg
    
    Confirm
    Are you sure you want to remove resource group 'myasevm1rg'
    [Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"): Y
    True
    PS C:\WINDOWS\system32>
    
  3. リソース グループが削除されたことを確認します。 デバイス上に存在するすべてのリソース グループを取得します。

    Get-AzureRmResourceGroup
    

    出力例を次に示します。

    PS C:\WINDOWS\system32> Get-AzureRmResourceGroup
    
    ResourceGroupName : ase-image-resourcegroup
    Location          : dbelocal
    ProvisioningState : Succeeded
    Tags              :
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/ase-image-resourcegroup
    
    ResourceGroupName : ASERG
    Location          : dbelocal
    ProvisioningState : Succeeded
    Tags              :
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/ASERG
    
    ResourceGroupName : myaserg
    Location          : dbelocal
    ProvisioningState : Succeeded
    Tags              :
    ResourceId        : /subscriptions/992601bc-b03d-4d72-598e-d24eac232122/resourceGroups/myaserg
    
    PS C:\WINDOWS\system32>
    

次のステップ