一,引言
上一篇文章有介紹到 Azure Bicep 的部署問題,文中也只是演示部署範圍為 Sub,並將演示的 Azure Resource Group 到 Azure。給定 Bicep 檔案,可以部署的範圍很多,“資源組”,“訂閱”,“管理組”,“租戶”。那麼今天的文章主要是分享部署 Azure Bicep 的不同方法。
注意:若要部署 Bicep 檔案,需要安裝 Azure CLI 2.20.0 或更高版本
--------------------我是分割線--------------------
1,Azure Bicep 開發利器
2,Azure Bicep(二)語法簡介
二,正文
1,引數定義
每個引數需要一個名稱和型別,引數不能和同一部署範圍內的變數,資源,輸出或者其他引數同名。
常用的引數型別都包括:“string”,“int”,“bool”,“object”,“array” 等
需要注意的是 Bicep 檔案中的必要引數和可選引數,我們可以通過定義 Azure Web App 為例
//targetScope='resourceGroup' Default Deplay Target param webAppName string = toLower('cnbateblogweb') param webSiteName string=toLower('${webAppName}-appservice') param runtime string='.NET 6' param webAppPlanName string =toLower('${webAppName}-appserviceplan') param location string = resourceGroup().location // Location for all resources resource appServicePlan 'Microsoft.Web/serverfarms@2020-12-01' = { name: webAppPlanName location: location sku: { name: 'F1' capacity: 1 } } resource webApplication 'Microsoft.Web/sites@2018-11-01' = { name: webSiteName location: location properties: { serverFarmId: appServicePlan.id siteConfig:{ linuxFxVersion:runtime } } }
如果我們需要為引數提供不同的值,即可針對不同環境重複使用Bicep 檔案,資源管理器會在啟動部署操作之前解析引數值,只要引數,資源管理器就會將其替換為解析的值。
2,部署範圍
文章的最開始也將到了,如果我們需要利用Azure CLI 部署 Bicep,就得使用 Azure CLI 2.20或者更高版本
範圍 | 部署命令 |
資源組 | az deployment group create |
管理組 | az deployment mg create |
租戶 | az deployment tenant create |
訂閱 | az deployment sub create |
重點:需要注意的是,Bicep 檔案中的 targetScope 和 執行Azure CLI 部署 Bicep 檔案的部署命令一致。開始之前,使用 azure login 建立連線關係。
如果要部署不村子的資源組,得先利用 Azure CLI 建立資源組(az group create --name xxxxx -location xxxxxxx),然後再部署本地 Bicep 檔案。(參考上述表格的內容)
3,部署過程
在部署 Bicep 檔案時,我們需要(不是必須的)為當前部署指定部署名稱,此名稱可以幫助我們從部署歷史記錄中檢索該部署。如果沒有為部署提供名稱,將使用 Bicep 檔案的名稱。
我們在每次執行部署時,就會有一條包含部署名稱的條目會新增到資源組的部署歷史記錄中。 如果執行另一個相同的名稱部署,則會將先前的條目替換為當前部署。 如果要在部署歷史記錄中保持唯一條目,請為每個部署指定唯一名稱。
所以,我們要注意的是,為避免與併發部署衝突並確保部署歷史記錄中的條目是唯一的,我們需要為每個部署指定唯一的名稱。
4,回滾
此功能只能用於資源組部署。 它不支援訂閱、管理組或租戶級別的部署。如果指定的較早部署在部署歷史記錄中不存在,則回滾將返回錯誤。如果我們要使用此選項,那麼部署在部署歷史記錄中必須具有唯一名稱。 只有唯一名稱才能標識特定的部署。 如果沒有唯一名稱,失敗的部署可能會覆蓋歷史記錄中的成功部署。
1)如果需要回滾到最後一個成功的部署(新增 --rollback-on-error
引數作為標誌)
az deployment group create --name xxxxx --resource-group xxxxx --template-file xxxxx.json --rollback-on-error
2)如果需要回滾到特定的部署(新增 --rollback-on-error
引數並提供部署名稱作為標誌)
az deployment group create --name xxxxx --resource-group xxxxx --template-file xxxxx.json --rollback-on-error deployment01
5,部署歷史
1)列出資源組部署
az deployment group list --resource-group xxxxx
2)獲取特定部署
az deployment group show --resource-group xxxxx --name deployment01
............
同時,我們還可以通過Azure 資源管理器檢視部署歷史,檢查過去的部署中的特定操作和部署的資源
重點:個資源組的部署歷史記錄限含 800 個部署。 接近限制時,將自動從歷史記錄中刪除部署。
三,結尾
今天,我們只是從常用語法上介紹了Azure Bicep,從引數的宣告,到部署過程,再部署歷史,最後到回滾。其中的還有很多語法文中沒有體現出來,大家可以自行檢視文章開始的參考連結。下一篇將從實際開始,通過程式碼演示的方式分享操作。本文所分享的內容也存在著很多我自己的一些理解,有理解不到位的,還包含,並且指出不足之處!!!!!*★,°*:.☆( ̄▽ ̄)/$:*.°★* 。
作者:Allen
版權:轉載請在文章明顯位置註明作者及出處。如發現錯誤,歡迎批評指正。