重要
将微服务与 AKS 和 Azure DevOps 配合使用是使用 Azure DevOps 设计 CI/CD 管道的另一种方式。 本文重点介绍了使用 Azure Pipelines 部署 AKS 应用程序的特定 AKS 方面的内容。
可能的用例
使用 Azure Pipelines 部署 AKS 应用程序。
体系结构
下载此体系结构的 Visio 文件。
数据流
- 针对 Azure Repos Git 的拉取请求 (PR) 会触发 PR 管道。 此管道会运行快速质量检查,例如 Lint 分析、生成代码并对其进行单元测试。 如果任何检查失败,PR 不会合并。 成功运行此管道的结果是 PR 成功合并。
- 针对 Azure Repos Git 的合并会触发 CI 管道。 此管道运行的任务与 PR 管道相同,并增加一些重要内容。 CI 管道会运行集成测试。 这些测试需要机密,因此该管道会从 Azure Key Vault 获取这些机密。
- 成功运行此管道后,将在非生产 Azure 容器注册表中创建并发布一个容器映像。
- CI 管道的完成会触发 CD 管道。
- CD 管道将一个 YAML 模板部署到 AKS 过渡环境。 该模板指定非生产环境中的容器映像。 然后,管道针对过渡环境执行验收测试,以便验证部署。 如果测试成功,则会运行手动验证任务,要求人员验证部署并恢复管道。 手动验证步骤是可选的。 某些组织会自动部署。
- 如果恢复手动干预,则 CD 管道会将映像从非生产 Azure 容器注册表提升到生产注册表。
- CD 管道将一个 YAML 模板部署到 AKS 生产环境。 该模板指定生产环境中的容器映像。
- 容器见解会定期将容器主机和容器中的性能指标、清单数据和运行状况信息转发到 Azure Monitor。
- Azure Monitor 收集可观测性数据(例如日志和指标),以便操作员可以分析运行状况、性能和使用情况数据。 Application Insights 收集所有特定于应用程序的监视数据,例如跟踪。 Azure Log Analytics 用于存储所有这些数据。
组件
- 容器见解收集日志和指标以及日志,并将其转发到 Azure Monitor。
- Azure 容器注册表是 Azure 上一个托管的专用容器注册表服务。 使用容器注册表存储专用容器映像。
- Azure Kubernetes 服务一个是托管的 Kubernetes 服务,Azure 可在其中处理关键任务,例如运行状况监视和维护。
- Defender for DevOps 可执行静态分析,并帮助你了解 AKS 开发和部署中多个管道的安全状况。
后续步骤
- 若要了解 AKS 产品路线图,请参阅 GitHub 上的 Azure Kubernetes 服务 (AKS) 路线图。
- 如果需要复习 Kubernetes,请完成 Azure 学习路径上的 Kubernetes 简介。
相关资源
- 若要了解如何在 AKS 上托管微服务,请参阅 Azure Kubernetes 服务 (AKS) 上的微服务体系结构。
- 请遵循 Azure Kubernetes 服务解决方案之旅。