Azure Management Guide

Azure 管理指引

安装

Azure CLI

Docker

docker run -it --rm -v ~:/root mcr.microsoft.com/azure-cli

Linux

curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

macOS

brew update && brew install azure-cli

Azure PowerShell

PowerShell 7.0.6

Get-ExecutionPolicy -List
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

Install-Module -Name Az -Scope CurrentUser -Repository PSGallery -Force

Docker

docker run --rm -it -v $HOME:/root mcr.microsoft.com/azure-powershell

Azure CLI

代理

通过代理使用 CLI 时,需将代理证书添加到证书 Store:

Azure CLI 证书 Store 路径 OS
C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\Lib\site-packages\certifi\cacert.pem Windows
/opt/az/lib/python3.6/site-packages/certifi/cacert.pem Ubuntu
/usr/lib64/az/lib/python3.6/site-packages/certifi/cacert.pem Redhat

基本命令

命令 作用
az cloud list --output table
az cloud set --name AzureChinaCloud 设置为中国版 Azure 环境
az login --use-device-code
az account list 显示所有订阅
az account set -s SUBSCIRBTION_NAME 设置默认订阅
az aks install-cli 安装 kubectl

配置

命令 作用
az config set core.output=table
az configure --defaults group=RESOURCE_GROUP 设置命令行默认资源组
az config set defaults.group=RESOURCE_GROUP 设置命令行默认资源组
az config set defaults.location=chinaeast2
az config set defaults.acr= 设置默认容器注册表

KeyVault

az keyvault set-policy \
    --secret-permissions get list \
    --name KEYVAULT_NAME \
    --object-id IDENTITY_PRINCIPAL_Id

WebApp

az webapp identity assign \
    --resource-group RESOURCE_GROUP_NAME \
    --name WEBAPP_NAME

Azure 容器

镜像注册表管理

用 az 命令登录镜像注册表后,可用 docker 进行后续操作。

命令 作用
az acr credential show --name REGISTRY_NAME 查询管理员账号
az acr login -n REGISTRY_NAME 登录镜像注册表

镜像管理 

命令
az acr build --registry $REGISTRY --image IMG_NAME:TAG . 上传当前目录 Dockerfile 并编译
az acr repository list --name $REGISTRY--output table 显示指定 Azure 镜像中心内容
# 根据代码库提交编译镜像
az acr task create \
    --registry $ACR_NAME \
    --name TASK_NAME \
    --image REPO \
    --context GIT_URL \
    --file Dockerfile \
    --git-access-token GIT_TOKEN 

容器管理

az container create \
    --location chinaeast2 \
    --ip-address Public \
    --dns-name-label DOMAIN \
    --image IMAGE \
    --registry-login-server ARC.azurecr.cn \ // 部署私有镜像时使用
    --registry-username USERNAME \
    --registry-password PASSWORD \
    --name CONTAINER 

Kubernetes

集群管理

命令
az aks install-cli 安装 kubectl
az aks get-credentials -n K8S_NAME -g RES_GROUP 获取 aks 操作 token
az aks update -n K8S_NAME -g RES_GROUP --attch-arc ARC_NAME 授权 aks 拉取镜像
az aks browse -n K8S_NAME -g RES_GROUP 本地打开 Dashboard

Azure PowerShell

设置

命令 作用
Connect-AzAccount –Environment AzureChinaCloud -UseDeviceAuthentication 登录中国版账号
Get-AzEnvironment
Get-AzContext -ListAvailable 显示所有订阅
Set-AzContext SUBSCRIPTION_NAME 设置默认订阅
Install-AzAksKubectl 安装 kubectl

防火墙

停止/开启

$firewall=Get-AzFirewall -ResourceGroupName rgName -Name azFw
$firewall.Deallocate()
$firewall | Set-AzFirewall

$vnet = Get-AzVirtualNetwork -ResourceGroupName rgName -Name anotherVNetName
$pip = Get-AzPublicIpAddress -ResourceGroupName rgName -Name publicIpName
$firewall.Allocate($vnet, $pip)
$firewall | Set-AzFirewall
Author: njun
njun's picture
Updated: 2022/01/04