部落格
CubeCOS

如何建立虛擬機?CubeCOS 建立與啟動虛擬機的完整操作指南

How to launch your first virtual machine on CubeCOS

歡迎來到CubeCOS的『Launch Your First』 新手系列!在這個新系列中,我將帶你一步步了解它的運作方式和如何輕鬆的在CubeCOS上開啟你的第一台虛擬機。讓部署與營運雲端基礎架構,可以是簡單、可重複、且人人都能上手的。

本系列的第一部分中,你將學會如何:

  • 上傳Linux雲端映像檔
  • 設定虛擬機專用的私有網路 (Subnet)
  • 啟動你的第一台虛擬機

完成後,你將擁有一個可運作的虛擬機與完整的 IaaS 雲端環境,一切都由我們的自由且開源的雲端平台 CubeCOS 所驅動。

如果你尚未安裝 CubeCOS,請先參考我們的 快速入門指南 (Quick Start Guides) 來開始。

預計完成時間:40 分鐘

名詞定義


  1. Glance(映像服務): CubeCOS 所使用的映像儲存服務。Glance 提供高效能且可大規模擴展的映像部署能力,用於上傳、管理與分發虛擬機映像檔。
  2. Ceph(分散式儲存系統):CubeCOS 採用分散式儲存架構,提供高可用性與高效能的儲存資源。
  3. Cloud image(雲端映像檔):專為雲端運算平台(如 OpenStack、AWS AMI、Google Cloud Platform、Microsoft Azure)優化的作業系統映像檔。這些映像預先配置以支援雲端環境中的啟動與網路設定。
  4. Project(專案/租戶):資源分組的基本單位。每個 Project 可視為獨立租戶,用以隔離資源分配與流量,方便進行多租戶管理與權限控制。
  5. Instance(虛擬機):CubeCOS 遵循雲端架構慣例,將虛擬機稱為「Instance」。本文中將使用「虛擬機」一詞來指代。
  6. Hypervisor(虛擬機管理程式):虛擬機管理程式負責虛擬化底層實體資源(如 CPU、記憶體、儲存與網路),提供資源隔離以支援多種工作負載在同一硬體上執行。

建立虛擬機前的前置準備

下載相關的虛擬機映像檔

為獲得最流暢的設定體驗,請從您選擇的發行版(Rocky、Ubuntu、Debian 或 CentOS Stream)下載雲端映像檔。這些映像檔預先安裝了 cloud-init,可協助您快速配置虛擬機並開始使用。

本教學將使用 CentOS Stream 9 雲端映像檔。請下載 CentOS Stream 9: QCOW2

其他映像檔請使用官方下載點或我們在此處準備的連結:雲端映像載點

Ubuntu 雲端映像特別說明
Ubuntu 雲端映像預設為 .img 格式。上傳至 CubeCOS 前請將 .img 重新命名為 .qcow2。

如何在 CubeCOS 上建立首台虛擬機器

啟動首台虛擬機器前,我們會需要先將下載的雲端映像上傳至 CubeCOS來建立我們的虛擬機範本。建立虛擬機範本後才可從範本開始建立第一台虛擬機。

上傳雲端映像檔

首先我們要將雲端映像檔上傳至 CubeCOS,雲端映像檔上傳功能需透過命令列介面(CLI)執行。

圖形化上傳支援將於後續版本新增。

  1. 在終端機(Terminal)中前往至映像檔案下載目錄:
    cd Downloads/
  2. 確認目錄中存在 『CentOS-Stream-GenericCloud-9-latest.x86_64.qcow2』 檔案。
  3. 將此CentOS 9的通用雲端映像檔上傳至 CubeCOS。
    scp CentOS-Stream-GenericCloud-9-latest.x86_64.qcow2 root@<your-cubecos-vip>:/mnt/cephfs/glance/.tutorial-cubecos-1-upload-instructions
  4. 輸入系統提示的 root 密碼。
    tutorial-cubecos-2-enter-upload-password
  5. 上傳時間約需 5-10 分鐘,實際耗時取決於映像檔大小與連線速度。
    tutorial-cubecos-3-image-uploading
  6. 完成匯入後,即可開始映像檔導入程序。

tutorial-cubecos-3_5-image-upload-complete匯入雲端映像檔

  1. 你可沿用前述終端機工作階段或新建工作階段啟動導入程序。
  2. 使用以下資訊登入 CubeCOS 管理介面:
    1. 使用者名稱:admin
    2. 密碼:預設密碼或您自訂的密碼
  3. 執行以下指令啟動映像檔匯入流程:
    image importtutorial-cubecos-5-image-import-cli
  4. 選擇 『2』   
    2: localtutorial-cubecos-6-image-import-local
  5. 輸入映像檔索引。我們要匯入的是
    CentOS-Stream-GenericCloud-9-latest.x86_64.qcow2tutorial-cubecos-7-image-import-select-image
  6. 請指定用於識別映像檔的名稱。本文範例命名為:
    centos-stream-9tutorial-cubecos-8-image-import-select-image-name
  7. 輸入 『1』 選擇預設網域。
    tutorial-cubecos-9-image-import-select-image-domain
  8. 輸入 『3』 選擇管理租戶。管理租戶於安裝時自動建立。本教學將使用此租戶儲存公共映像,供其他專案使用。您可參照建立專案指南建立新專案,以控制特定映像與專案的存取權限。
    tutorial-cubecos-10-image-import-select-image-project
  9. 輸入 『1』 將目標設為 『glance-images』,使此映像成為後續啟動虛擬機器的基礎範本。
    tutorial-cubecos-11-image-import-select-image-type
  10. 輸入 『1』 將映像設為公開,使本叢集所有租戶皆可存取此映像。
    tutorial-cubecos-12-image-import-select-image-visibility
  11. 此步驟後將開始匯入進度。匯入時間約需 5-15 分鐘,視映像大小與硬體效能而定。tutorial-cubecos-13-image-import-progress
  12. 映像檔完成匯入後,即可繼續建立專案以啟動虛擬機器。tutorial-cubecos-14-image-import-completion

如何設定 Cloudinit 參數

  1. 透過專案切換器切換至 admin 專案。
  2. 導覽至「Compute > Images」,選取 『centos-stream-9』 映像檔。
    tutorial-cubecos-15-image-upload-verify
  3. 點選「編輯」並於映像參數中設定下列值:
    1. 作業系統版本:9
    2. 系統管理員:cloud-user
    tutorial-cubecos-17-image-edit
  4. 點擊『OK』以儲存設定。

如何建立OpenStack專案

專案作為資源單位,用於預留資源、確保資源隔離並簡化管理作業。您將為自己的虛擬機器建立新專案。

    1. 開啟 CubeCOS 管理介面網址:
      https://<your-cubecos-cluster-vip>
    2. 使用預設憑證登入
      1. 使用者名稱:admin
      2. 密碼:admin
        tutorial-cubecos-18-create-project-login
    3. 登入後,導覽至「Integrations」標籤頁並點擊OpenStack的「Connect」按鈕。

      tutorial-cubecos-19-create-project-integration-nav
    4. OpenStack管理將彈出新管理頁面。點擊使用您的 Cube 帳戶登入。
      tutorial-cubecos-20-create-project-cube-login
    5. 登入後,點擊右上角「Administrator」文字切換至 CubeCOS 管理視圖。可以參考How to navigate to the administrative panel看如何切換至管理介面。
      tutorial-cubecos-21-create-project-skyline
    6.  請檢查右上角切換器是否顯示「Console」確認您處於管理介面。
      tutorial-cubecos-22-create-project-admin-view
    7. 在管理介面中前往「Administrator > Identity > Projects」。
      tutorial-cubecos-23-create-project-list-view
    8. 建立新專案時,點擊左上角的『 + Create Project』開始建立虛擬機專用的專案。
    9. 建立教學專案時,保留『Affiliated Domain (關聯網域)』為預設值,並將狀態設為『Enable (啟用)』
      tutorial-cubecos-24-create-project-tutorial
    10. 專案建立後將顯示於『Projects』標籤頁。從下拉選單選擇『More > 管理』以管理本教學專案的用戶。我們需將當前使用者新增為教學專案的管理員,以便管理並啟動專案中的資源。
      tutorial-cubecos-25-create-project-manage-user
    11. 在管理使用者視窗中,於左側選取『Admin(IAM)』使用者,點擊 > 將該使用者指派至專案。
      tutorial-cubecos-26-create-project-assign-admin-permission
    12. 為『Admin(IAM)』使用者指派管理員角色,以便管理專案中的資源與設定。
      tutorial-cubecos-27-create-project-admin-assigned
    13. 點擊確定以套用變更。
    14. 點擊右上角導覽列的『控制台』切換回使用者檢視。如何離開管理介面
    15. 開啟專案切換器。
      tutorial-cubecos-28-create-project-switch-project

    16. 在專案切換器中確認並切換至tutorial教學專案。
      tutorial-cubecos-29-create-project-select-tutorial-project
    17. 您已成功建立專屬教學專案,可開始管理資源!

建立虛擬機器專用私有網路

CubeCOS 的優勢之一在於內建軟體定義網路架構。此功能提供私有網路能力,可降低公開網路暴露風險、強化區隔性,並實現靈活的網路拓撲結構。

您將在教學專案內建立私有網路,為虛擬機器提供 IP 位址。開始前請確認已透過專案切換器選取教學專案。

  1. 導覽至 『Project > Network > Networks』並點擊
    + Create Network
  2. 輸入網路名稱tutorial-network
  3. 勾選『Create Subnet』核取方塊,並輸入以下資訊:
    1. 子網路名稱: tutorial-subnet-192
    2. IP 版本: ipv4
    3. CIDR: 192.168.168.0/24
      tutorial-cubecos-31-network-creation
  4. 點擊『確定』建立教學子網。
  5. 確認網路狀態顯示為『Active』。
    tutorial-cubecos-32-network-verify-creation
  6. 現在您已準備好建立首台虛擬機器。

如何在 CubeCOS 上啟動首台虛擬機器

Create Instances 功能依據預先定義的資源範本、雲端作業系統映像檔及配置參數來配置虛擬機器。

設定基礎配置

  1. 導覽至 『Project > Compute > Instances』,點擊
    + CREATE INSTANCE
  2. 在規格欄位選擇 t2.medium ,此規格決定分配給虛擬機器的資源量。
    tutorial-cubecos-33-create-instance-start
  3. 右側將顯示專案預設可用資源配額,此配額決定每個專案可分配的資源上限。
  4. S於作業系統標籤頁切換至 『Centos』,選取您建立的 centos-stream-9 映像。
    tutorial-cubecos-34-create-instance-disk
  5. 在系統磁碟區段選擇『Yes - Create a new system disk』,並設定磁碟容量為 80GB。
    tutorial-cubecos-35-create-instance-disk-select
  6. 點擊開始進行網路配置。
    Next: Network Config

設定網路配置

由於我們建立了具備 DHCP IP 分配池的私有網路,CubeCOS 將自動填入虛擬區域網路(Virtual LAN )欄位。

  1. 從網路區段中選取您建立的 『tutorial-network』。
  2. 確認虛擬區域網路與安全群組欄位均已填入。
  3. 欲設定系統參數,請點擊
    Next: System Config

設定系統配置

在此設定虛擬機器名稱與存取方式。

  1. 輸入名稱 『tutorial-centos-stream-9』.
  2. 選擇登入類型為『Password』。
  3. 設定登入密碼為 『Happy1tutorial』。
    tutorial-cubecos-38-create-instance-password
  4. 預覽並啟動虛擬機器建立程序,請點擊 Next: Confirm Config.
  5. 核對所有配置細節無誤後,點擊 Confirm.
  6. 您的首台虛擬機器即將開始建置。
    tutorial-cubecos-40-create-instance-verify-created
  7. 當虛擬機的狀態轉為「Active」時,請選取該虛擬機器。
    tutorial-cubecos-41-create-instance-verify-details
  8. 至此,您成功建立您的首台虛擬機器。

連線至虛擬機的虛擬主控台。

  1. 於「虛擬機詳細資訊」頁面點擊右上角的「Console」即可存取虛擬主控台。
    tutorial-cubecos-41-create-instance-verify-details
  2. 虛擬主控台將在新分頁開啟。
    tutorial-cubecos-43-launch-console-login-success
  3. 使用設定的登入資訊
    1. 使用者名稱: cloud-user
    2. 密碼: Happy1tutorial
      tutorial-cubecos-43-launch-console-login-success
  4. 您已在 CubeCOS 叢集上成功部署可運作的 Linux 虛擬機器。

本系列的第二章節將探討如何在專案內啟用防火牆的安全防護與遠端存取功能設定。

歡迎訂閱以獲取最新部落格發布通知!

常見問題

如何在雲端虛擬化平台啟動虛擬機器?

+

選用您偏好的發行版預建雲端映像檔(如 CentOS、Rocky、Ubuntu 等)。上傳映像檔、建立專案以管理資源、配置虛擬機分配資源,最後啟動虛擬機。

何謂雲端映像檔?為何用於虛擬機部署?

+

雲端映像檔是針對雲端環境優化的輕量級預配置作業系統映像。其內建雲端初始化支援功能,可自動完成主機名稱設定、SSH金鑰配置及使用者帳戶建立等初始化作業。

為何必須先建立專案(租戶)才能配置虛擬機器?

+

專案(租戶)在多租戶雲端環境中,是實現資源隔離、存取控制及使用追蹤的關鍵機制,協助組織虛擬機器、實施配額管理並分離運作環境。

部署後如何連線至虛擬機器進行管理?

+

可以透過指定 IP 位址及 SSH 金鑰對以 SSH 連線至已配置虛擬機器,或透過 CubeCOS 網頁版的虛擬控制台進行連線和管理作業。

建立虛擬機器前是否需預先配置網路?

配置虛擬網路是為虛擬機器指派 IP 位址並啟用通訊功能的必要步驟。