在 Azure 中帶入並建立 Linux 映像
適用於:✔️ Linux VM ✔️ 彈性擴展集 ✔️ 統一擴展集
本概觀涵蓋有關映像處理的基本概念,以及如何在 Azure 中成功建置和使用 Linux 映像。 將自訂映像帶入 Azure 之前,您必須先了解您可以使用的類型和選項。
本文會討論映像決策點和需求以及說明重要概念,讓您可以遵循,並且能夠建立自己的自訂映像以符合您的規格。
受控磁碟與映像之間的差異
Azure 可讓您將 VHD 帶入平台,作為受控磁碟或作為映像的來源。
Azure 受控磁碟是單一 VHD。 您可以使用現有的 VHD 並從中建立受控磁碟,或從頭開始建立空的受控磁碟。 您可以藉由將磁碟連結至 VM,從受控磁碟建立 VM,但是一個 VHD 只能與一個 VM 搭配使用。 您無法修改任何 OS 屬性,因為 Azure 只會嘗試開啟 VM 並使用該磁碟啟動。
Azure 映像可由多個 OS 磁碟和資料磁碟組成。 當您使用受控映像來建立 VM 時,平台會建立映像的複本,並使用該複本來建立 VM。 這可讓受控映像支援針對多個 VM 重複使用相同的映像。 Azure 也提供映像的進階管理功能,例如透過 Azure Compute Gallery 的全域複本和版本設定 (先前稱為共用映像庫)。
一般化和特殊化
Azure 提供兩種主要映像類型:一般化和特殊化。 一般化和特殊化詞彙原本就是 Windows 的術語,遷移至 Azure。 這些類型會定義平台在開啟 VM 時如何處理 VM。 這兩種類型都有優點、缺點及必要條件。 開始之前,您必須知道您需要的映像類型。 以下摘要說明您需要選擇的案例和類型:
案例 | 影像類型 | 儲存體選項 |
---|---|---|
建立可供多個 VM 使用的映像。 您可以設定主機名稱、新增系統管理員使用者,並在第一次開機期間執行其他工作。 | 一般化 | Azure Compute Gallery 或獨立受控映像 |
從 VM 快照集或備份建立映像 | 特殊化 | Azure Compute Gallery 或受控磁碟 |
快速建立一個不需要任何設定的映像,以建立多個 VM。 | 特殊化 | Azure Compute Gallery |
一般化映像
一般化映像是一種映像,需要在第一次開機時完成設定。 例如,在第一次開機時,您會設定主機名稱、管理使用者及其他 VM 特定設定。 當您想要多次重複使用映像以及當您想要在建立期間傳入參數時,這會很有用。 如果一般化映像包含 Azure 代理程式,代理程式將會處理參數,並且將初始設定已完成的訊號傳回平台。 這個程序稱為佈建。
佈建需要映像中包含佈建程式。 有兩個佈建程式:
這些是建立映像的必要條件。
特殊化映像
這些是完全設定且不需要 VM 或特殊參數的映像。 平台只會開啟 VM,您必須處理 VM 內的唯一性,例如設定主機名稱,以避免相同 VNET 上的 DNS 衝突。
這些映像不需要佈建代理程式,不過,您可能會想要有擴充功能處理功能。 您可以安裝 Linux 代理程式,但是停用佈建選項。 雖然您不需要佈建代理程式,但是映像必須滿足 Azure 映像的必要條件。
映像儲存體選項
帶入您的 Linux 映像時,您有兩個選項:
- 適用於在開發和測試環境中建立簡單 VM 的受控映像。
- Azure Compute Gallery ,以大規模建立和共用映像。
受控映像
受控映像可用來建立多個 VM,但有許多限制。 受控映像只能從一般化來源 (VM 或 VHD) 建立。 受控映像只能用來在相同區域中建立 VM,而且無法在訂用帳戶和租用戶之間共用。
受控映像可用於開發和測試環境,您需要幾個簡單的一般化映像,在單一區域和訂用帳戶內使用。
Azure Compute Gallery
Azure Compute Gallery (先前稱為共用映像庫) 建議大規模建立、管理及共用映射。 Azure Compute Gallery 可協助您圍繞映像組建結構和組織。
- 同時支援一般化和特殊化映像。
- 支援第 1 代和第 2 代映像。
- 全域複寫映像。
- 將映像進行版本控制並分組可簡化管理。
- 在支援 Azure 可用性區域的區域中,具有區域備援儲存體 (ZRS) 的高可用性映像。 ZRS 針對區域失敗提供更好的復原能力。
- 使用 Azure RBAC 在訂用帳戶之間共用,甚或在 Active Directory (AD) 租用戶之間共用。
- 在每個區域中使用映像複本來擴展您的部署。
概括而言,您會建立資源庫,且由下列項目組成:
- 映像定義 - 這些是保留映像群組的容器。
- 映像版本 - 這些是實際的映像
Hyper-V 世代
Azure 支援 Hyper-V 第 1 代 (Gen1) 和第 2 代 (Gen2)。 Gen2 是最新世代,提供 Gen1 的額外功能。 例如:記憶體增加、Intel Software Guard Extensions (Intel SGX) 和虛擬化的持續性記憶體 (vPMEM)。 在內部部署環境執行的第 2 代 VM 擁有一些 Azure 尚未支援的功能。 如需詳細資訊,請參閱本發行項中「功能」一節。 如果您需要額外的功能,請建立 Gen2 映像。
如果您仍然需要建立自己的映像,請確定其符合映像必要條件,並上傳至 Azure。 發行版本特定需求:
- Debian Linux
- Flatcar Container Linux
- FreeBSD
- Oracle Linux
- OpenBSD
- Red Hat Enterprise Linux
- SLES 和 openSUSE
- Ubuntu
下一步
了解如何建立 Azure Compute Gallery。