可以從在存儲帳戶中存儲為托管磁盤或非托管磁盤的通用 VM 中建立托管映像資源。 然後可以使用該映像建立多個 VM。
使用 Sysprep 通用化 Windows VM
Sysprep 将删除所有個人帳戶資訊及其他某些資料,并準備好要用作映像的計算機。 有關 Sysprep 的詳細資訊,請參閱如何使用 Sysprep:簡介。
確定 Sysprep 支援計算機上運作的伺服器角色。 有關詳細資訊,請參閱 Sysprep Support for Server Roles
Important
如果在首次将 VHD 上傳到 Azure 之前運作 Sysprep,請確定先準備好 VM,然後再運作 Sysprep。
- 登入到 Windows 虛拟機。
- 以管理者身份打開“指令提示符”視窗。 将目錄切換到 %windir%\system32\sysprep,然後運作
。sysprep.exe
- 在“系統準備工具”對話框中,選擇“進入系統全新體驗(OOBE)”,確定已選中“通用化”複選框。
- 在“關機選項”中選擇“關機”。
- 單擊 “确定”。
在 Azure 中建立通用 VM 的托管映像 - 在 Sysprep 完成時,它會關閉虛拟機。 請勿重新開機 VM。
在門戶中建立托管映像
- 打開 門戶。
- 在左側菜單中,單擊“虛拟機”,然後從清單中選擇 VM。
- 在 VM 頁的上部菜單中,單擊“捕獲”。
- 在“名稱”中,鍵入想要用于映像的名稱。
- 在“資源組”中,選擇“建立”或鍵入名稱,或選擇“使用現有”并從下拉清單中選擇要使用的資源組。
- 如果想要在建立映像後删除源 VM,選擇“建立映像後自動删除此虛拟機”。
- 完成後,單擊“建立”。
- 建立映像後,在資源組的資源清單中,你會看到它作為“映像”資源而出現。
使用 PowerShell 建立 VM 映像
直接從 VM 建立映像可確定映像中包含與 VM 關聯的所有磁盤,包括 OS 磁盤和任何資料磁盤。 本示例示範如何從使用托管磁盤的 VM 建立托管映像。
在開始之前,請確定有最新版本的 AzureRM.Compute PowerShell 子產品。 運作以下指令來安裝該子產品。
PowerShell複制
有關詳細資訊,請參閱 Azure PowerShell 版本控制。
- 建立一些變量。
powershell $vmName = "myVM" $rgName = "myResourceGroup" $location = "ChinaEast" $imageName = "myImage"
-
確定 VM 已解除配置設定。
PowerShell複制
-
将虛拟機的狀态設定為“通用化”。
PowerShell複制
-
擷取虛拟機。
PowerShell複制
-
建立映像配置。
PowerShell複制
-
建立映像。
PowerShell複制
使用 PowerShell 從托管磁盤建立映像
如果你隻想建立 OS 磁盤的映像,還可通過将托管磁盤 ID 指定為 OS 磁盤來建立映像。
-
建立一些變量。
PowerShell複制
$vmName = "myVM" $rgName = "myResourceGroup" $location = "ChinaEast" $snapshotName = "mySnapshot" $imageName = "myImage"
-
擷取 VM。
PowerShell複制
-
擷取托管磁盤的 ID。
PowerShell複制
$diskID = $vm.StorageProfile.OsDisk.ManagedDisk.Id
-
建立映像配置。
Azure PowerShell複制試用
$imageConfig = New-AzureRmImageConfig -Location $location $imageConfig = Set-AzureRmImageOsDisk -Image $imageConfig -OsState Generalized -OsType Windows -ManagedDiskId $diskID
-
建立映像。
PowerShell複制
使用 PowerShell 從快照建立映像
可以從通用 VM 的快照建立托管映像。
-
建立一些變量。
PowerShell複制
$rgName = "myResourceGroup" $location = "ChinaEast" $snapshotName = "mySnapshot" $imageName = "myImage"
-
擷取快照。
PowerShell複制
-
建立映像配置。
PowerShell複制
$imageConfig = New-AzureRmImageConfig -Location $location $imageConfig = Set-AzureRmImageOsDisk -Image $imageConfig -OsState Generalized -OsType Windows -SnapshotId $snapshot.Id
-
建立映像。
PowerShell複制
從存儲帳戶中的 VHD 建立映像
從存儲帳戶中的通用 OS VHD 建立托管映像。 需要存儲帳戶中 VHD 的 URI,其格式為 https://mystorageaccount.blob.core.chinacloudapi.cn/container/vhd_filename.vhd。 在本示例中,使用的 VHD 位于名為 vhdcontainer 的容器中的 mystorageaccount 中,且 VHD 檔案名為 osdisk.vhd。
-
首先,設定公共參數:
PowerShell複制
$vmName = "myVM" $rgName = "myResourceGroup" $location = "ChinaEast" $imageName = "myImage" $osVhdUri = "https://mystorageaccount.blob.core.chinacloudapi.cn/vhdcontainer/osdisk.vhd"
-
停止\解除配置設定 VM。
PowerShell複制
-
将 VM 标記為通用。
PowerShell複制
-
使用通用 OS VHD 建立映像。
PowerShell複制
$imageConfig = New-AzureRmImageConfig -Location $location $imageConfig = Set-AzureRmImageOsDisk -Image $imageConfig -OsType Windows -OsState Generalized -BlobUri $osVhdUri $image = New-AzureRmImage -ImageName $imageName -ResourceGroupName $rgName -Image $imageConfig
後續步驟
-
現在,可以從通用托管映像建立 VM。
立即通路http://market.azure.cn