用途:Azure CLI(az)提供跨平台的 Azure 基础设施命令行管理,并与 Bicep 模板及自动化云资源预配紧密集成。适用于脚本化 Azure 云操作(资源部署、角色分配、监控)、CI/CD(Azure DevOps 与 GitHub Actions,使用服务主体或 OIDC 部署基础设施与应用)、用 --query 做 JMESPath 查询提取云参数,以及容器注册表与 AKS 集群管理(Docker 客户端认证、Kubernetes 凭据管理)。
主要能力与用法:登录与订阅设置使用 az login、az account set --subscription "My Subscription";创建 AKS 集群示例为 az aks create --resource-group myResourceGroup --name myAKSCluster --node-count 1 --generate-ssh-keys。资源组与基础设施部署可用 az group create 与 az deployment group create(配合 --template-file main.bicep 及 --parameters)。JMESPath 查询通过 --query 实现,例如 az vm list --show-details --query "[?powerState=='VM running'].{Name:name, IP:privateIps, OS:osType, Size:hardwareProfile.vmSize}" --output table;也可用 --output tsv 将单值写入 shell 变量。容器与 AKS 方面可用 az acr login --name myproductionacr 与 az aks get-credentials --resource-group ... --name ... --overwrite-existing。
最佳实践:CI/CD 中优先使用工作负载身份联合(OIDC)而非客户端密钥;用 --output tsv 配合 --query 捕获无引号字符串;执行前用 az deployment group what-if 验证部署;通过 CLI 直接使用 az bicep。避免在无头脚本中使用交互式 az login,应使用服务主体或托管身份;避免明文输出敏感密钥;长操作可考虑 --no-wait 与 az resource wait。
限制与排错:会话过期需重新 az login 或使用服务主体登录;参数标志错误会报 unrecognized arguments,可用 az <command> --help 核对;订阅不可访问时用 az account list --output table 查看可用订阅。其他具体功能、收费与平台支持信息暂未提供。