跳到主內容
版本:3.0

從 ISO 映像檔建立虛擬機器

從 ISO 映像檔建立虛擬機器的概覽​

若您的來賓作業系統沒有對應的雲端映像檔,您可以透過從來賓 ISO 檔案開機來手動安裝。 本指南說明如何安裝基於 ISO 檔案的 Windows 客體作業系統虛擬機器。

安裝過程需要準備並上傳正確的映像檔、執行命令列(CLI)介面指令來設定虛擬硬體,並將完成的安裝轉換為可重複使用的 Glance 映像範本。 完成後,即可使用該範本部署新的虛擬機器,無需重複安裝程序。

您將負責​

  1. 取得所需映像檔:下載 Windows 安裝 ISO 檔以及任何必要的驅動程式映像檔。 對於 Windows 虛擬機器,這通常包含 VirtIO 驅動程式 ISO 檔,以確保硬體相容性。
  2. 上傳並設定映像檔:將您的 ISO 檔案加入環境,並將其掛載至新的虛擬機器。 此步驟將設定虛擬硬體,以便虛擬機器能從安裝媒體開機。 此步驟將設定虛擬硬體,以便虛擬機器能從安裝媒體開機。
  3. 安裝作業系統:從 ISO 檔案啟動虛擬機器,並完成 Windows 的安裝。 這與標準的作業系統安裝流程相似,僅在驅動程式設定方面有幾項針對虛擬機的特定步驟。 這與標準的作業系統安裝流程相似,僅在驅動程式設定方面有幾項針對虛擬機的特定步驟。
  4. 將虛擬機器轉換為範本:安裝完成後,將已安裝的磁碟進行通用化處理,並將其儲存為可重複使用的映像檔範本至 Glance。 這是未來虛擬機器將以此為基礎建構的主映像檔。
  5. 從範本部署虛擬機器:使用已儲存的範本,按需啟動新的 Windows 虛擬機器——設定一致、可重複部署,且開箱即用。

先決條件​

要使用 ISO 映像檔建立虛擬機器,您需要以下檔案:

  1. ISO 映像檔:請透過官方來源或儲存庫下載您的客體作業系統的可開機 ISO 映像檔。
  2. VirtIO 驅動程式套件:為確保在 CubeCOS 上獲得最佳的相容性與效能,請安裝適用於 Windows 作業系統的 VirtIO 驅動程式。

將必要的 ISO 映像檔上傳至 CubeCOS 映像庫​

上傳客製 ISO 映像檔​

  1. 在你的本地機器上,從官方作業系統供應商或經核實的儲存庫下載所需的 ISO 映像檔。

  2. 開啟一個終端機工作階段。

  3. 使用具有叢集 VIP 管理存取權限的電腦,透過 scp 指令將 ISO 映像檔上傳至 CubeCOS 映像儲存庫。

    請使用你的映像檔名稱與叢集 IP 取代指令中的欄位:

    scp replace-with-your-image-name.iso root@<your-cluster-vip>:/mnt/cephfs/glance/
  4. 請等待上傳完成。 上傳所需時間取決於影像大小與網路頻寬。

上傳 VirtIO 驅動程式套件​

  1. 請從 VirtIO 穩定版下載頁面 下載 VirtIO 驅動程式套件。

  2. 開啟一個終端機工作階段。

  3. 使用具有叢集 VIP 管理存取權限的電腦,透過 scp 指令將 ISO 映像檔上傳至 CubeCOS 映像儲存庫。

    請使用你的映像檔名稱與叢集 IP 取代指令中的欄位:

    scp virtio-win.iso root@<your-cluster-vip>:/mnt/cephfs/glance/
  4. 請等待上傳完成。 上傳所需時間取決於影像大小與網路頻寬。

為虛擬機器安裝準備安裝磁碟區​

在虛擬機器安裝過程中,必須先將 ISO 映像檔和驅動程式套件匯入為映像檔,才能將其掛載為磁碟。

Repeat 適用於作業系統 ISO 檔及驅動程式套件的操作

在繼續之前,請針對以下項目重複此步驟:

  1. 作業系統安裝 ISO 檔。
  2. 如有適用,請提供驅動程式套件。
  1. 開啟一個終端機工作階段。

  2. 透過 SSH 連線至叢集 VIP,並以 root 使用者身分登入

    ssh root@<your-cluster-vip>
  3. 請確認您的 ISO 檔案已成功上傳至映像檔目錄。

    ls /mnt/cephfs/glance/
  4. 從 ISO 映像檔建立可開機硬碟區。

    • 對於 Windows,請使用 Windows 作業系統 索引標籤,以加入 Windows 系統所需的額外作業系統規格。
    • 若要設定 Linux 及其他安裝媒體(包括 VirtIO 驅動程式套件),請使用 Linux 及其他作業系統 索引標籤。
    openstack image create \
    --disk-format iso \
    --container-format bare \
    --public \
    --property hw_firmware_type=uefi \
    --property hw_machine_type=q35 \
    --property hw_scsi_model=virtio-scsi \
    --property hw_disk_bus=virtio \
    --property os_secure_boot='optional' \
    --property os_type=windows \
    --file <replace-with-full-path-to-iso-image>.iso \
    <replace-with-imported-image-name>.iso

建立基於 ISO 的可開機虛擬機器範本​

建立基於 ISO 的虛擬機器需要透過 Nova 命令列介面 (CLI) 進行手動操作。

透過命令列(CLI)介面建立基於 ISO 的虛擬機器​

  1. 透過 SSH 開啟終端機提示符。

  2. 透過 SSH 連線至叢集 VIP,並以 root 使用者身分登入

    ssh root@<your-cluster-vip>
  3. 要建立範本虛擬機器,請先替換以下參數,然後執行該指令。

    1. 虛擬機器名稱:輸入虛擬機器的顯示名稱。
    2. 規格:輸入規格詳細資訊,以將資源分配給虛擬機器。
    3. 網路:前往 網路 > 網路 取得網路 ID,並複製該網路 ID 供虛擬機器使用。
    4. 開機映像 UUID:前往 運算 > 映像檔,並複製 ISO 開機媒體的映像檔 ID。
    5. (僅適用於 Windows 電腦)VirtIO 驅動程式 UUID:前往 運算 > 映像檔,並複製 VirtIO 驅動程式媒體的映像檔 ID。
    6. 開機磁碟區大小:開機磁碟區的目標大小(單位:GB)。
    openstack server create <replace-with-virtual-machine-name> \
    --flavor <replace-with-flavor-size> \
    --network <replace-with-network-uuid> \
    --block-device source_type=image,uuid=<replace-with-boot-media-id>,destination_type=volume,volume_size=10,disk_bus=sata,device_type=cdrom,boot_index=0 \
    --block-device source_type=image,uuid=<replace-with-virtio-media-id>,destination_type=volume,volume_size=10,disk_bus=sata,device_type=cdrom,boot_index=1 \
    --block-device source_type=blank,destination_type=volume,volume_size=<replace-with-size-of-boot-volume>,disk_bus=virtio,device_type=disk,boot_index=2
  4. 開啟 CubeCOS 網頁管理介面,確認虛擬機已成功建立且處於 Active 或 Build 狀態。

    Verify Windows VM build in management UI

安裝基於 ISO 的虛擬機器​

使用虛擬主控台安裝 Windows 客體作業系統​

請先從 Windows 安裝 ISO 檔案啟動虛擬機器,並在完成作業系統設定之前安裝所需的 VirtIO 驅動程式。 這些驅動程式可讓 Windows 識別由 CubeCOS 提供的虛擬網路介面和儲存硬碟。 若未設定這些選項,安裝程式將無法偵測到開機硬碟,且在安裝過程中及安裝完成後,將無法連線至網路。

  1. 出現提示時,請按任意鍵以從 CD 或 DVD 開機。

    Windows UEFI boot console view

  2. 若要從 VirtIO 驅動程式套件中瀏覽所需的驅動程式,請選取 載入驅動程式 以瀏覽相關目錄。

    Verify Windows VM build in management UI

  3. 選取 virtio-win-<version> 硬碟,並安裝以下所需的驅動程式:

    1. NetKVM:用於在安裝期間及安裝後流程中支援網路功能的網路驅動程式。
      1. 開啟 NetKVM 資料夾。
      2. 請選擇與您的 Windows 版本對應的資料夾。
      3. 若要掃描該資料夾以尋找驅動程式,請選取 amd64 資料夾,然後按一下「掃描」。
      4. 點擊「下一步」以安裝驅動程式。
    2. viostor:用於偵測由 CubeCOS 連接的 virtio 硬碟所需的儲存驅動程式。
      1. 開啟 viostor 資料夾。
      2. 請選擇與您的 Windows 版本對應的資料夾。
      3. 若要掃描該資料夾以尋找驅動程式,請選取 amd64 資料夾,然後按一下「掃描」。
      4. 點擊「下一步」以安裝驅動程式。

    Select required VirtIO driver

  4. 選擇要安裝的硬碟,並完成客體作業系統的安裝。

  5. 作業系統重新啟動後,請使用預設的登入憑證登入。

  6. 導航至已掛載的 virtio-win-<version> 資料夾。

  7. 請以系統管理員權限依序安裝以下套件:

    1. virtio-win-gt-x64.msi:此檔案會安裝所有相關驅動程式,以確保客體作業系統能在 CubeCOS 上正常運作。
    2. virtio-win-guest-tool.exe:此客體工具提供效能監控功能,且是虛擬客體中支援快照保護所必需的。

將已安裝的虛擬機器轉換為映像檔範本​

待客體作業系統安裝完成後,請將虛擬機的開機磁碟轉換為 Glance 映像檔。 生成的映像檔可作為未來相同設定虛擬機器的可重複使用部署範本。

  1. 請前往 儲存 > 磁碟,並找到 Windows 客體作業系統的磁碟。

  2. 在 Windows 客體作業系統硬碟上點選 更多 下拉選單,前往 資料保護 > 建立映像檔。

    Select required VirtIO driver

  3. 在「建立影像」對話方塊中,輸入:

    1. 映像檔名稱:設定您的 Windows 客體作業系統範本名稱。
    2. 格式:設定 RAW 未格式化磁碟格式。

    Select required VirtIO driver

  4. 映像檔將開始上傳,狀態顯示為「正在上傳」。 映像檔將開始上傳,狀態顯示為「正在上傳」。 Select required VirtIO driver

  5. 前往 運算 > 映像檔 確認新建立映像檔的狀態,系統將顯示 儲存中,表示映像檔正在建立中。

  6. 當狀態顯示為 Active 時,即表示映像檔已成功上傳。

    Select required VirtIO driver

在新的範本虛擬機上設定 metadata​

要正確部署此上傳的映像檔作為虛擬機器範本,需要提供硬體和作業系統的元資料。 這些屬性會告知虛擬機器管理程式,該如何為客體作業系統設定韌體、硬碟匯流排及安全性功能。 請透過 CubeCOS 管理介面中的管理員檢視畫面設定元資料。

  1. 若需了解如何透過點擊右上角的「管理員」切換至管理員檢視,請參閱 存取管理員檢視。

    Select required VirtIO driver

  2. 選擇 計算 > 影像,並定位至您剛才上傳的影像。

  3. 若要編輯所需的元資料,請點選 更多 > 管理元資料 的下拉選單。

    Select required VirtIO driver

  4. 請在圖片中新增下列 metadata 欄位。

    虛擬信賴平台模組(vTPM)設定需符合客體作業系統的需求

    以下兩項僅在客體作業系統要求時才需添加。

    • hw_tpm_version = 2.0
    • hw_tpm_model = tpm-crb
    僅適用於 Windows 作業系統

    您必須設定:

    • os_type=windows
    元資料欄位值
    hw_firmware_typeuefi
    hw_disk_busvirtio
    hw_machine_typeq35
    hw_scsi_modelvirtio-scsi
    os_secure_bootoptional
    hw_tpm_version2.0
    hw_tpm_modeltpm-crb
    os_typewindows

    選擇所需的 VirtIO 驅動程式

  5. 選取映像檔名稱以開啟其詳細資訊,並確認所有元資料均已正確套用。

    Select required VirtIO driver

  6. 確認無誤後,您即可使用此範本建立新的虛擬機器。