算一算 Azure 也用了快 9 年,由於用的大多是 PaaS 服務,許多服務大多只要設定一次,然後設定完 CI/CD 就全部自動化了,因此很少有機會去學習 CLI 命令列工具使用。但最近碰 IaaS 比較多一些,所以有認真的玩了一下新版的 Azure CLI 2.0 命令列介面,本篇文章將分享幾個新手上路的注意事項與相關學習資源。
要開始上手 Azure CLI 2.0 的使用,其實最好的文件就在 Azure CLI 2.0 | Microsoft Docs 官方文件庫中,全中文的翻譯,幾乎沒有什麼進入障礙。
建立 Azure CLI 2.0 命令列環境
基本上目前有兩種執行 Azure CLI 2.0 的方式:
- 透過 Azure Cloud Shell 在瀏覽器中使用,直接登入 Azure Portal 就可以立即開始使用。
- 透過安裝 az 工具在命令提示字元下使用,目前支援 macOS、Linux 和 Windows 作業系統。
- 在 Windows 平台安裝 az 我強烈建議你在 WSL ( Windows Subsystem on Linux ) 環境下安裝,會比在 Windows 命令提示字元下好用很多。
- 在 WSL 環境下,輸入 az 之後,按下兩個 Tab 鍵都會自動顯示參數建議,非常方便喔!
查詢 az 版本
az -v
登入 Azure 身分
az login
登入 Azure 身分 (直接帳號密碼登入)
此命令不適用於微軟帳戶與已啟用二階段驗證的帳戶
az login -u <username> -p <password>
az login --service-principal -u "http://my-app" -p <password> --tenant <tenant>
az login --service-principal -u "userid" -p "password" --tenant "tenantId"
查詢目前選中的訂用帳戶
az account show
列出所有訂用帳戶
az account list
az account list -o table
列出所有訂用帳戶 (重新載入清單)
如果你已經登入成功,登入之後才加入權限的訂閱不會自動更新訂用帳戶清單,你必須加上 --refresh 才會更新!
az account list -o table --refresh
設定預設訂用帳戶
az account set --subscription "SubscriptionId"
進入互動模式 ( 對初學者來說相當實用 )
az interactive
常用快速鍵:
- F1 Layout
- F2 Defaults
- F3 Keys
- Ctrl+D Quit
- Ctrl+L Clear Screen
查詢 Azure 資源可以建立的所在區域
az account list-locations -o table
建立資源群組
az group create --name myResourceGroup --location eastus
刪除資源群組
az group delete --name myResourceGroup
列出所有此訂閱的使用者角色
az role assignment list --all -o table
列出所有 VM 清單
az vm list --out table
列出所有 VM 清單 ( 使用 JMESPath 查詢語法 )
az vm list --query [*].[name,resourceGroup] --out table
列出所有 VM 清單 ( 使用 JMESPath 查詢語法 ) (自訂欄位名稱)
az vm list --query "[].{RGName:resourceGroup, VMName:name}" --out table
列出所有 VM 清單 ( 使用 JMESPath 查詢語法 ) (自訂欄位名稱並選取第二層屬性顯示)
az vm list --query "[].{VMName:name,OSType:storageProfile.osDisk.osType}" --out table
列出所有 VM 清單 ( 使用 JMESPath 查詢語法 ) (使用 contains 篩選資料)
az vm list --query "[?contains(resourceGroup,'RGD')].{ resource: resourceGroup, name: name }" --out table
az vm list --query "[?contains(hardwareProfile.vmSize, 'Standard_DS1')]" --out table
相關連結