小提示
有关本教程使用 Azure Kubernetes 服务的更新版本,请参阅 教程:在 Azure Kubernetes 服务(AKS)中运行应用程序。
警告
Azure 容器服务 (ACS) 正在被弃用。 不会向 ACS 添加新特性或功能。 所有 API、门户体验、CLI 命令和文档都标记为已弃用。
2017 年,我们推出了 Azure Kubernetes 服务 (AKS),以简化 Kubernetes 的管理、部署和操作。 如果使用 Kubernetes 业务流程协调程序,请在 2020 年 1 月 31 日前迁移到 AKS。 若要开始,请参阅 迁移到 Azure Kubernetes 服务。
有关详细信息,请参阅 有关 Azure.com 的 Azure 容器服务弃用公告。
在本教程的第 4 部分(共 7 部分)中,示例应用程序将部署到 Kubernetes 群集中。 完成的步骤包括:
- 更新 Kubernetes 清单文件
- 在 Kubernetes 中运行应用程序
- 测试应用程序
在后续教程中,此应用程序横向扩展、更新,Log Analytics 配置为监视 Kubernetes 群集。
本教程假定你基本了解 Kubernetes 概念,有关 Kubernetes 的详细信息,请参阅 Kubernetes 文档。
开始之前
在前面的教程中,应用程序已打包到容器映像中,此映像已上传到 Azure 容器注册表,并创建了 Kubernetes 群集。
必须先预创建 azure-vote-all-in-one-redis.yml Kubernetes 清单文件,然后才能完成本教程。 此文件是在之前的教程中与应用程序源代码一起下载的。 验证是否已克隆存储库,以及是否已将目录更改为克隆的存储库。
如果尚未执行这些步骤,并且想要继续作,请返回到 教程 1 – 创建容器映像。
更新清单文件
在本教程中,Azure 容器注册表(ACR)已用于存储容器映像。 在运行应用程序之前,需要在 Kubernetes 清单文件中更新 ACR 登录服务器名称。
使用 az acr list 命令获取 ACR 登录服务器名称。
az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output table
清单文件已预先创建,其登录服务器名称为 microsoft. 使用任何文本编辑器打开该文件。 在此示例中,文件通过 vi 打开。
vi azure-vote-all-in-one-redis.yml
替换为 microsoft ACR 登录服务器名称。 此值位于清单文件 的第 47 行。
containers:
- name: azure-vote-front
image: microsoft/azure-vote-front:v1
保存并关闭该文件。
部署 应用程序
使用 kubectl create 命令运行应用程序。 此命令分析清单文件并创建定义的 Kubernetes 对象。
kubectl create -f azure-vote-all-in-one-redis.yml
输出:
deployment "azure-vote-back" created
service "azure-vote-back" created
deployment "azure-vote-front" created
service "azure-vote-front" created
测试应用程序
将创建 Kubernetes 服务 ,用于向 Internet 公开应用程序。 此流程可能需要几分钟的时间。
若要监视进度,请使用带参数的 kubectl get service 命令 --watch 。
kubectl get service azure-vote-front --watch
最初,azure-vote-front服务的EXTERNAL-IP显示为pending。 EXTERNAL-IP 地址从 pending 更改为 IP address 后,使用 CTRL-C 来停止 kubectl watch 进程。
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
azure-vote-front 10.0.42.158 <pending> 80:31873/TCP 1m
azure-vote-front 10.0.42.158 52.179.23.131 80:31873/TCP 2m
若要查看应用程序,请浏览到外部 IP 地址。
Azure 上 Kubernetes 群集的图像
后续步骤
在本教程中,Azure 投票应用程序已部署到 Azure 容器服务 Kubernetes 群集。 已完成的任务包括:
- 下载 Kubernetes 清单文件
- 在 Kubernetes 中运行应用程序
- 测试应用程序
进入下一个教程,了解如何对 Kubernetes 应用程序及其底层基础设施进行扩展。