设置 Azure 环境
在本单元中,你将使用 Azure CLI 创建后续单元中所需的 Azure 资源。 在开始输入命令之前,请确保已安装并运行 Docker Desktop。
若要节省时间,可以指示 Azure 先预配资源,然后再转到下一个单元。 创建 Azure Kubernetes 服务(AKS)群集最多可能需要 10 分钟。 此过程可以在后台运行,您可以同时继续学习后续单元。
使用 Azure 资源管理器进行身份验证
使用以下命令登录:
az login
选择 Azure 订阅
Azure 订阅是用于在 Azure 中预配资源的逻辑容器。 使用以下命令列出 Azure 订阅,然后找到计划在此模块中使用的订阅 ID - SubscriptionId
值。
az account list --output table
使用以下命令来确保使用 Azure 订阅,以便为本模块创建资源,并将首选 SubscriptionId
值替换为占位符:
az account set --subscription "<your-subscription-ID>"
定义局部变量
若要简化稍后使用的命令,请设置以下环境变量。 请务必将以下占位符替换为你自己的值:
- 用您选择的区域替换
<your-Azure-region>
- 例如eastus
。 - 将
<your-container-registry>
替换为一个唯一的值。 此值用于在创建 Azure 容器注册表时为 Azure 容器注册表生成唯一的完全限定域名(FQDN)。 - 将
<your-unique-DNS-prefix-to-access-your-AKS-cluster>
替换为一个唯一的值。 此值用于在创建 AKS 群集时为 AKS 群集生成唯一的 FQDN。
export AZ_RESOURCE_GROUP=java-containerization-demo-rg
export AZ_CONTAINER_REGISTRY=<your-container-registry>
export AZ_KUBERNETES_CLUSTER=java-containerization-demo-aks
export AZ_LOCATION=<your-Azure-region>
export AZ_KUBERNETES_CLUSTER_DNS_PREFIX=<your-unique-DNS-prefix-to-access-your-AKS-cluster>
创建 Azure 资源组
Azure 资源组是 Azure 订阅中的 Azure 容器,用于保存 Azure 解决方案的相关资源。 使用以下命令创建资源组:
az group create \
--name $AZ_RESOURCE_GROUP \
--location $AZ_LOCATION \
| jq
注释
此模块使用 jq
默认情况下安装在 Azure Cloud Shell 上的工具来显示 JSON 数据,并使该工具更具可读性。
如果不想使用 jq
工具,则可以安全地删除此模块中所有命令的 | jq
部分。
创建 Azure 容器注册表
使用 Azure 容器注册表可以生成、存储和管理容器映像,包括此 Java 应用的容器映像。 使用以下命令创建容器注册表:
az acr create \
--resource-group $AZ_RESOURCE_GROUP \
--name $AZ_CONTAINER_REGISTRY \
--sku Basic \
| jq
使用以下命令将 Azure CLI 配置为使用此新创建的 Azure 容器注册表:
az configure --defaults acr=$AZ_CONTAINER_REGISTRY
使用以下命令对新创建的 Azure 容器注册表进行身份验证:
注释
运行命令 az acr login
之前,请确保 Docker Desktop 在本地环境中运行。 如果它未运行,则会收到类似于 Cannot connect to the Docker daemon at unix:///$HOME_DIR/.docker/run/docker.sock. Is the docker daemon running?
的错误消息
az acr login --name $AZ_CONTAINER_REGISTRY
创建 Azure Kubernetes 服务群集
需要 AKS 群集才能部署 Java 应用容器映像。 使用以下命令创建 AKS 群集:
az aks create \
--resource-group $AZ_RESOURCE_GROUP \
--name $AZ_KUBERNETES_CLUSTER \
--attach-acr $AZ_CONTAINER_REGISTRY \
--dns-name-prefix=$AZ_KUBERNETES_CLUSTER_DNS_PREFIX \
--generate-ssh-keys \
| jq
注释
创建 AKS 群集最多可能需要 10 分钟。 运行上一个命令后,可以在 Azure CLI 选项卡中让它继续运行,然后转到下一个单元。