天天看點

在 Azure 中建立通用 VM 的托管映像

可以從在存儲帳戶中存儲為托管磁盤或非托管磁盤的通用 VM 中建立托管映像資源。 然後可以使用該映像建立多個 VM。

使用 Sysprep 通用化 Windows VM

Sysprep 将删除所有個人帳戶資訊及其他某些資料,并準備好要用作映像的計算機。 有關 Sysprep 的詳細資訊,請參閱如何使用 Sysprep:簡介。

確定 Sysprep 支援計算機上運作的伺服器角色。 有關詳細資訊,請參閱 Sysprep Support for Server Roles

Important

如果在首次将 VHD 上傳到 Azure 之前運作 Sysprep,請確定先準備好 VM,然後再運作 Sysprep。

  1. 登入到 Windows 虛拟機。
  2. 以管理者身份打開“指令提示符”視窗。 将目錄切換到 %windir%\system32\sysprep,然後運作 

    sysprep.exe

  3. 在“系統準備工具”對話框中,選擇“進入系統全新體驗(OOBE)”,確定已選中“通用化”複選框。
  4. 在“關機選項”中選擇“關機”。
  5. 單擊 “确定”。
    在 Azure 中建立通用 VM 的托管映像
  6. 在 Sysprep 完成時,它會關閉虛拟機。 請勿重新開機 VM。

在門戶中建立托管映像

  1. 打開 門戶。
  2. 在左側菜單中,單擊“虛拟機”,然後從清單中選擇 VM。
  3. 在 VM 頁的上部菜單中,單擊“捕獲”。
  4. 在“名稱”中,鍵入想要用于映像的名稱。
  5. 在“資源組”中,選擇“建立”或鍵入名稱,或選擇“使用現有”并從下拉清單中選擇要使用的資源組。
  6. 如果想要在建立映像後删除源 VM,選擇“建立映像後自動删除此虛拟機”。
  7. 完成後,單擊“建立”。
  8. 建立映像後,在資源組的資源清單中,你會看到它作為“映像”資源而出現。

使用 PowerShell 建立 VM 映像

直接從 VM 建立映像可確定映像中包含與 VM 關聯的所有磁盤,包括 OS 磁盤和任何資料磁盤。 本示例示範如何從使用托管磁盤的 VM 建立托管映像。

在開始之前,請確定有最新版本的 AzureRM.Compute PowerShell 子產品。 運作以下指令來安裝該子產品。

PowerShell複制

有關詳細資訊,請參閱 Azure PowerShell 版本控制。

  1. 建立一些變量。

    powershell $vmName = "myVM" $rgName = "myResourceGroup" $location = "ChinaEast" $imageName = "myImage"

  2. 確定 VM 已解除配置設定。

    PowerShell複制

  3. 将虛拟機的狀态設定為“通用化”。

    PowerShell複制

  4. 擷取虛拟機。

    PowerShell複制

  5. 建立映像配置。

    PowerShell複制

  6. 建立映像。

    PowerShell複制

    使用 PowerShell 從托管磁盤建立映像

如果你隻想建立 OS 磁盤的映像,還可通過将托管磁盤 ID 指定為 OS 磁盤來建立映像。

  1. 建立一些變量。

    PowerShell複制

    $vmName = "myVM"
    $rgName = "myResourceGroup"
    $location = "ChinaEast" $snapshotName = "mySnapshot" $imageName = "myImage" 
               
  2. 擷取 VM。

    PowerShell複制

  3. 擷取托管磁盤的 ID。

    PowerShell複制

    $diskID = $vm.StorageProfile.OsDisk.ManagedDisk.Id
    
               
  4. 建立映像配置。

    Azure PowerShell複制試用

    $imageConfig = New-AzureRmImageConfig -Location $location
    $imageConfig = Set-AzureRmImageOsDisk -Image $imageConfig -OsState Generalized -OsType Windows -ManagedDiskId $diskID 
               
  5. 建立映像。

    PowerShell複制

使用 PowerShell 從快照建立映像

可以從通用 VM 的快照建立托管映像。

  1. 建立一些變量。

    PowerShell複制

    $rgName = "myResourceGroup"
    $location = "ChinaEast"
    $snapshotName = "mySnapshot" $imageName = "myImage" 
               
  2. 擷取快照。

    PowerShell複制

  3. 建立映像配置。

    PowerShell複制

    $imageConfig = New-AzureRmImageConfig -Location $location
    $imageConfig = Set-AzureRmImageOsDisk -Image $imageConfig -OsState Generalized -OsType Windows -SnapshotId $snapshot.Id 
               
  4. 建立映像。

    PowerShell複制

從存儲帳戶中的 VHD 建立映像

從存儲帳戶中的通用 OS VHD 建立托管映像。 需要存儲帳戶中 VHD 的 URI,其格式為 https://mystorageaccount.blob.core.chinacloudapi.cn/container/vhd_filename.vhd。 在本示例中,使用的 VHD 位于名為 vhdcontainer 的容器中的 mystorageaccount 中,且 VHD 檔案名為 osdisk.vhd。

  1. 首先,設定公共參數:

    PowerShell複制

    $vmName = "myVM"
    $rgName = "myResourceGroup"
    $location = "ChinaEast" $imageName = "myImage" $osVhdUri = "https://mystorageaccount.blob.core.chinacloudapi.cn/vhdcontainer/osdisk.vhd" 
               
  2. 停止\解除配置設定 VM。

    PowerShell複制

  3. 将 VM 标記為通用。

    PowerShell複制

  4. 使用通用 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