適用於:✔️ Linux 虛擬機器 ✔️ 彈性擴展集 ✔️ 統一擴展集
本概述涵蓋了映像化的基本概念,以及如何在 Azure 中成功建構與使用 Linux 映像檔。 在你將自訂映像檔帶到 Azure 之前,你需要了解可用的類型和選項。
本文將說明圖片決策點與需求,並解釋關鍵概念,讓您能依照這些原則,依照需求創作自訂圖片。
VM 擴展集讓你能自動部署和管理一組相同(或相似)的虛擬機。 Azure handles:
- 擴充/縮小(新增/移除虛擬機)
- 負載平衡
- 健康情況監視
- 區/地區分布
尺度組主要有兩種類型:
- 統一比例組:當你想要簡單且快速時使用。 所有虛擬機都完全相同——大小、映像檔和設定都一樣。
- 彈性擴展集:當您需要彈性與高可用性時使用。 虛擬機可以有不同大小或配置,你也可以混合使用 Spot + 一般虛擬機。
管理磁碟與映像的差異
Azure 允許你透過使用 Azure CLI 或 Azure PowerShell 模組,將 VHD 帶到平台作為管理磁碟使用。 你也可以帶VHD作為影像來源。
Azure 受控磁碟是單一 VHD。 你可以拿現有的 VHD 建立一個管理磁碟,或者從零開始建立一個空的管理磁碟。 你可以將受管磁碟連接到虛擬機來建立虛擬機,但你只能用一台虛擬機來使用虛擬硬碟。 你無法修改任何作業系統屬性,因為 Azure 只會嘗試開啟虛擬機並用那顆硬碟啟動。
Azure 映像可以由多個作業系統磁碟和資料磁碟組成。 當你用受管理映像檔建立虛擬機時,平台會複製該映像並用它來建立虛擬機。 這使得受管理映像能支援多個虛擬機重複使用同一映像檔。 Azure 也提供進階的影像管理功能,例如透過 Azure Compute Gallery (前稱 共用映像庫)進行全域複製與版本管理。
廣義與專業化
Azure 提供兩種主要的映像類型:通用型與專用型。 「一般化」與「專門化」這些術語最初是 Windows 的術語,後來遷移到 Azure。 這些類型定義了平台在開啟虛擬機時如何處理它。 兩種類型各有優缺點與先決條件。 在開始之前,你需要先知道你需要哪種圖片類型。 以下是你需要選擇的情境與類型摘要:
| Scenario | 影像類型 | 儲存體選項 |
|---|---|---|
| 建立一個可設定給多個虛擬機使用的映像檔。 你可以設定主機名稱、新增管理員使用者,並在第一次開機時執行其他任務。 | Generalized | Azure Compute Gallery 或獨立管理的映像檔 |
| 從虛擬機快照或備份建立映像檔。 | 特殊化 | Azure Compute Gallery 或受管理磁碟 |
| 快速建立一個不需要設定即可建立多個虛擬機的映像檔。 | 特殊化 | Azure Compute Gallery |
廣義影像
一般化映像檔是指需要在首次開機時完成設定的映像。 例如,第一次開機時,你可以設定主機名稱、管理員使用者以及其他虛擬機專屬的設定。 這在你想讓圖片重複使用,或是在建立時傳遞參數時很有用。 若一般化映像包含 Azure 代理,代理程式會處理參數並回報平台初始配置已完成。 這個過程稱為 配置 (provisioning)。
佈署需要映像中包含一個佈署器。 有兩個供應者:
這些都是建立影像的 前提條件 。
專業影像
這些映像檔是完全設定好的,不需要虛擬機或特殊參數。 平台會直接開啟虛擬機,你需要處理虛擬機內的獨特性,比如設定主機名稱,以避免在同一 VNET 上發生 DNS 衝突。
這些映像不需要佈建精靈,但您可能需要具備擴充功能處理能力。 你可以安裝 Linux 代理程式,但要關閉配置選項。 即使你不需要配置代理,映像檔必須符合 Azure 映像的 前置條件 。
影像儲存選項
帶著 Linux 映像檔時,你有兩個選擇:
- 用於開發與測試環境中簡易虛擬機器建立的受控映像。
- Azure Compute Gallery 用於大規模建立與分享影像。
受控映像
受管理映像可以用來建立多個虛擬機,但它們有許多限制。 受控映像只能從已一般化的來源 (虛擬機器或 VHD) 建立。 它們只能用來在同一區域建立虛擬機,且不能在訂閱和租戶間共享。
受管理映像檔可用於開發和測試環境,需要幾個簡單通用的映像檔,以便在單一區域和訂閱內使用。
Azure Compute Gallery
Azure Compute Gallery(前稱 共用映像庫)推薦用於大規模建立、管理及分享影像。 Azure Compute Gallery 幫助你圍繞影像建立結構與組織。
- 支援通用及專門化影像。
- 同時支援第 1 代與第 2 代映像。
- 影像的全球複製。
- 圖片的版本化與分組,以便於更輕鬆地管理。
- 在支援可用性區域的地區,使用區域冗餘儲存(ZRS)以提供高可用性的映像檔。 ZRS 針對區域失敗提供更好的復原能力。
- 使用 Azure RBAC 可跨訂閱以及在 Active Directory (AD) 租戶之間進行共享。
- 在每個區域中使用映像複本來擴展您的部署。
在高層次上,你會建立一個畫廊,由以下部分組成:
- 圖片定義 - 這些是用來存放圖片群組的容器。
- 圖片版本——這些是實際的圖片。
Hyper-V 世代
Azure 支援第一代(Gen1)和第二代(Gen2)Hyper-V。 Gen2 是最世代的版本,提供比 Gen1 更多的功能。 例如:擴充記憶體、Intel 軟體保護擴充(Intel SGX)以及虛擬化持久記憶體(vPMEM)。 第二代本地運行的虛擬機有一些 Azure 還不支援的功能。 欲了解更多資訊, 請參閱本文的特色與能力章節。 如果你需要額外功能,可以建立第二代映像檔。
如果你還需要自己建立映像檔,請確保它符合 映像的前置條件 ,然後上傳到 Azure。 分銷特定要求:
- Debian Linux
- Flatcar Container Linux
- FreeBSD
- Oracle Linux
- OpenBSD
- Red Hat 企業版 Linux
- SLES 和 openSUSE
- Ubuntu
後續步驟
學習如何建立 Azure Compute 圖庫。