透過 Azure PowerShell 從 Azure Stack Edge Pro GPU 裝置上的特製化映射部署 VM

適用于: Yes for Pro GPU SKU Azure Stack Edge Pro - GPU Yes for Pro 2 SKU Azure Stack Edge Pro 2 Yes for Pro R SKU Azure Stack Edge Pro R Yes for 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. 將 VHD 複製到 Azure Stack Edge Pro GPU 裝置上的本機儲存體帳戶。
  2. 從 VHD 建立新的受控磁片。
  3. 從受控磁片建立新的虛擬機器,並連結受控磁片。

必要條件

在您可以透過 PowerShell 在裝置上部署 VM 之前,請確定:

  • 您可以存取用來連線到裝置的用戶端。
    • 您的用戶端會執行 支援的 OS
    • 您的用戶端已設定為根據裝置連線至 Azure Resource Manager 中的指示,連線到您裝置 本機 Azure Resource Manager。

確認本機 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. 將來源 VHD 複製到 Azure Stack Edge 上的本機 Blob 儲存體帳戶。

  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"
    
    

    以下是範例輸出。 此處的位置會設定為本機儲存體帳戶的位置,而且一律 DBELocal 適用于 Azure Stack Edge Pro GPU 裝置上的所有本機儲存體帳戶。

    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> 
    

    注意

    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 上建立單一網路介面。 如有需要,您可以指定替代虛擬網路,或建立多個網路介面。 如需詳細資訊,請參閱 透過Azure 入口網站 將網路介面新增至 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]
    

    此命令中的最後一個旗標將會 -Windows 是 ,或 -Linux 取決於您用於 VM 的作業系統。

  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 和資源

本文只使用一個資源群組來建立所有 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>
    

下一步