了解範本規格

已完成

到目前為止,您都習慣使用 Bicep 或 JSON 將 Azure Resource Manager 範本 (ARM 範本) 部署到 Azure。 您會建立範本檔案,然後透過建立部署來將其提交至 Azure。 Azure Resource Manager 會協調資源的建立或重新設定。

當您使用範本規格時,仍會將範本傳送至 Azure。 但 Azure 會將其儲存以供您日後使用,而不是加以部署。 接著,您可以稍後返回並告訴 Azure 部署該範本規格。您甚至可以重複使用相同的範本規格來部署更多環境。

為什麼要使用範本規格?

在您的玩具公司,您已建立許多可重複使用的範本,包括:

範本名稱 描述
儲存體帳戶 部署儲存體帳戶並強制執行 Microsoft Entra 驗證。
Cosmos DB 帳戶 部署已啟用連續備份的 Azure Cosmos DB 帳戶。
虛擬網路 部署具有正確設定可與主要中樞網路對等互連的虛擬網路。
產品上市網站 針對宣傳新玩具產品上市的網站,部署 Azure App Service 方案、應用程式與儲存體帳戶。

範本規格是針對組織中的常見案例,建立可重複使用之 ARM 範本庫的絕佳方式。 專家可以使用預先設定的資源或資源集來建置範本。 該專家接著能以範本規格形式加以發佈,讓組織中的其他人員可以加以部署。

您可以使用範本規格,確保小組所建立的資源會根據您的需求進行設定。 例如,您可以發佈範本規格,例如我們稍早所述的儲存體帳戶範本。 然後,每當貴組織中的任何人部署範本規格時,您都可以確定他們建立具有正確驗證設定的儲存體帳戶。

範本規格存放於 Azure 中,因此您不需要自行維護共用範本檔案。 您可以使用 Azure 角色型存取控制來管理誰可以使用和修改範本規格。 如果沒有範本規格,您就必須選擇儲存體位置 (例如 Azure 儲存體) 來保留範本檔案。 您也需要自行控制存取權。

範本規格與 Bicep 模組有何不同?

當您使用 Bicep 時,您可以建立可重複使用的「模組」,以在單一檔案中定義資源集合。 範本規格與 Bicep 模組都是在範本中新增重複使用性的方式,但它們已針對不同事項進行最佳化:

  • 依據設計,範本規格旨在可作為完整範本來部署。 您可以使用 Azure 入口網站與 Azure CLI 和 Azure PowerShell 之類的工具來部署範本規格。 Bicep 模組旨在合併成較大型的部署。 不過,如果您建立範本規格,Bicep 也可讓您視需要將其作為模組使用。
  • 範本規格提供版本設定與存取控制功能。 您必須自行管理 Bicep 程式碼的版本與安全性。
  • 範本規格會以資源形式存放在 Azure 中。 您需要將 Bicep 模組存放在您所控制的某個位置,例如,版本控制系統 (例如 Git) 或檔案系統。
  • Bicep 模組會保留所有原始的 Bicep 程式碼,包括註解、符號名稱與空白字元。 使用 Bicep 建立範本規格時,您的 Bicep 程式碼會轉換為 JSON,而且部分資訊會遺失。 因此,您也必須將來源 Bicep 檔案保留於其他位置。

當您在範本規格與 Bicep 模組之間進行抉擇時,理想的經驗法則是:如果要在整個組織中依原樣部署範本,那麼範本規格可能是個很好的選擇。 但是,如果您可能會在多個父範本內重複使用此範本,則 Bicep 模組可能更能滿足您的需求。

範本規格的運作方式

範本規格是 Azure 資源,就像儲存體帳戶或虛擬機器一樣。 儘管範本本身可將資源部署到訂用帳戶、管理或租用戶範圍,但還是必須在資源群組內建立範本規格。

當您使用範本規格時,會建立兩個資源:

  • 「範本規格」是容器資源。 其包含一或多個版本。
  • 範本規格版本包含要部署的實際範本。

您可以使用範本規格與版本的資源識別碼來使用。 以下是範本規格的範例資源識別碼:

/subscriptions/f0750bbe-ea75-4ae5-b24d-a92ca601da2c/resourceGroups/SharedTemplates/providers/Microsoft.Resources/templateSpecs/StorageWithoutSAS

版本是範本規格的子資源。它具有類似下列範例的資源識別碼:

/subscriptions/f0750bbe-ea75-4ae5-b24d-a92ca601da2c/resourceGroups/SharedTemplates/providers/Microsoft.Resources/templateSpecs/StorageWithoutSAS/versions/1.0

當您部署範本規格時,需要指定範本規格版本的資源識別碼。

以下是您在使用範本規格時將遵循的工作流程圖解:

Diagram that shows the workflow for using template specs.

您可以用習慣的方式建立範本。 您為範本規格建立的範本並無任何特殊之處。您可以宣告資源、建立參數與變數、使用函式等等。

當您的範本準備就緒時,您會建立範本規格資源。 您接著會將範本當成一個版本發佈至範本規格。 您用來建立範本規格的工具可讓您在一個作業中完成這些步驟。 發佈範本規格之後,範本規格會以資源的形式儲存在 Azure 中。 您可以加以檢視及編輯,以及控制其存取權,就像任何其他 Azure 資源一樣。 您可以從本機電腦或從部署管線發佈範本規格。

每當您想要部署範本規格時,就會從部署參考範本規格版本的資源識別碼。 您可以將它部署到任何資源群組,或甚至部署到另一個訂用帳戶或範圍。 Azure 會讀取範本規格,並使用該規格作為部署的範本。