使用 Azure VM Image Builder
VM Image Builder 是完全受控的 Azure 服務,可供 Azure 資源提供者存取。 資源提供者可藉由指定來源映像、要執行的自訂,以及要散發新映像的位置加以設定。 下圖說明概略工作流程:
您可以使用 Azure PowerShell、Azure CLI 或 Azure Resource Manager 範本,或使用 VM Image Builder DevOps 工作來傳遞範本設定。 當您將設定提交至服務時,Azure 會建立映像範本資源。 映像範本資源建立後,會在訂用帳戶中建立暫存資源群組,其格式為 IT_\<DestinationResourceGroup>_\<TemplateName>_\(GUID)
。 暫存資源群組中包含了 ScriptURI 屬性中,File、Shell 和 PowerShell 自訂中所參考的檔案和指令碼。
若要執行組建,請在 VM Image Builder 範本資源上叫用執行。 服務接著會部署建置所需的其他資源,例如 VM、網路、磁碟和網路介面卡。
如果您在不使用現有虛擬網路的情況下建置映像,VM Image Builder 也會部署公用 IP 和網路安全性群組。 VM Image Builder 會使用安全殼層 (SSH) 或 Windows 遠端管理 (WinRM) 通訊協定來連線到組建 VM。
如果您選取現有的虛擬網路,服務將會透過 Azure Private Link 進行部署,而且不需要公用 IP 位址。 如需詳細資訊,請參閱 VM Image Builder 網路功能概觀。
建置完成後,將會刪除暫存資源群組和儲存體帳戶以外的所有資源。 您可以藉由刪除映像範本資源加以移除,也可將其保留以再次執行組建。
如需更多範例、逐步指南、設定範本和解決方案,請移至 VM Image Builder GitHub 存放庫。
安全性
為了協助保護您的映像安全,VM Image Builder:
- 可讓您建立基準映像 (即最低安全性和公司設定),並允許其他部門進一步加以自訂。 您可以使用 VM Image Builder,以最新的已修補來源映像版本快速重建黃金映像,協助這些映像保持安全並符合規範。 VM Image Builder 也可讓您更輕鬆地組建出符合 Azure Windows 安全性基準的映像。 如需詳細資訊,請參閱 VM Image Builder - Windows 基準範本。
- 可讓您擷取自訂成品,而無須將其公開存取。 VM Image Builder 可以使用您的 Azure 受控識別來擷取這些資源,而且您也能使用 Azure 角色型存取控制 (Azure-RBAC) 盡可能嚴格地限制此身分識別的使用權限。 您可以將成品保密,同時避免遭未經授權的執行者竄改。
- 由於 Azure-RBAC 管理存取控制,自訂成品、暫時性計算與儲存體資源,以及其所產生的映像都會安全地儲存在您的訂用帳戶中。 此層級的安全性也適用於用來建立自訂映像的組建 VM,有助於避免自訂指令碼和檔案遭複製到未知訂用帳戶中的未知 VM。 而且,您可以使用組建 VM 的隔離式 VM 供應項目,將來自其他客戶的工作負載高度隔離。
- 可讓您將 VM Image Builder 連線至現有的虛擬網路,以便與現有的設定伺服器通訊,例如 DSC (所需的狀態設定提取伺服器)、Chef 和 Puppet、檔案共用或任何其他可路由的伺服器和服務。
- 可以設定為將使用者指派的身分識別指派至 VM Image Builder 組建 VM (即由訂用帳戶中的 VM Image Builder 服務所建立,並用於組建和自訂映像的 VM)。 您可以接著在自訂時間時,使用這些身分識別來存取訂閱中的 Azure 資源,包括秘密。 不需要將 VM Image Builder 直接存取權指派給這些資源。
OS 支援
VM Image Builder 專為與所有 Azure Marketplace 基礎作業系統映像搭配使用而設計。
注意
開始 在入口網站內組建及驗證自訂映像。
機密 VM 和可信啟動支援
VM Image Builder 已對 TrustedLaunchSupported 和 ConfidentialVMSupported 映像延伸支援,並具有特定限制式。 以下是限制式的清單:
SecurityType | 支援狀態 |
---|---|
TrustedLaunchSupported | 支援作為映像組建的來源映像 |
ConfidentialVMSupported | 支援作為映像組建的來源映像 |
TrustedLaunch | 不支援作為來源映像 |
ConfidentialVM | 不支援作為來源映像 |
注意
使用 TrustedLaunchSupported 映像時,重要的一點是來源和散發必須同時為 TrustedLaunchSupported 才能支援。 如果來源正常而散發為 TrustedLaunchSupported,或來源為 TrustedLaunchSupported 而散發為一般 Gen2,則不支援。