包含开发测试实验室的 Azure Pipelines 体系结构

重要

带有开发测试实验室的 CI/CD 是使用 Azure DevOps 设计 CI/CD 管道的变体。 本文重点介绍部署到开发测试实验室过渡环境的详细信息。

开发测试实验室允许使用可重用模板和项目来预配 Windows 和 Linux 环境。 这些环境对开发人员很有用,但也可以在 CI/CD 管道中用于预配过渡环境。 请参阅Azure 开发测试实验室方案,了解开发测试实验室是否适合你的方案。

本文介绍了通过 Azure Pipelines 使用持续集成 (CI) 和持续部署 (CD) 实践部署应用程序更改的高级 DevOps 工作流。 开发测试实验室环境用于过渡环境。

体系结构

使用 Azure Pipelines 的 CI/CD 管道的体系结构示意图,该管道使用过渡环境的 Azure 开发测试实验室。

下载此体系结构的 Visio 文件

数据流

本部分假设你已阅读 Azure Pipelines 基线体系结构,并仅重点介绍将工作负载部署到 Azure 开发测试实验室以进行过渡的具体内容。

  1. PR 管道 - 与基线相同

  2. CI 管道 - 与基线相同

  3. CD 管道触发器 - 与基线相同

  4. CD 会创建开发测试实验室过渡环境 - 此步骤会创建充当过渡环境的开发测试实验室环境。 步骤包括:

    • 在过渡订阅中创建 Azure 开发测试实验室环境。
    • 将 ARM 模板部署到开发测试实验室环境。 虚拟机映像可以存储在共享映像库中。
    • 执行部署后步骤以正确配置过渡环境。
  5. 将 CD 发布到过渡环境 - 与基线相同,但有一个例外。 过渡环境为开发测试实验室环境。

  6. 将 CD 发布到生产环境 - 与基线相同

  7. 监视 - 与基线相同

组件

本部分假设你已阅读 Azure Pipelines 基线体系结构组件部分,并仅重点介绍将工作负载部署到 Azure 开发测试实验室以进行过渡的具体内容。

  • Azure 开发测试实验室服务旨在创建、使用和管理用于开发、测试和部署用途的环境。 借助该服务,能以较高性价比轻松部署预配置的环境。

备选方法

  • 除了将开发测试实验室过渡环境创建为 CD 过程的一部分之外,还可以在管道之外预先创建环境。 这将有助于加快管道运行速度。 若采用该替代方法,则无法再在管道完成后拆解管道,这样会增加成本。

  • 如果 VM 映像生成器和共享映像库不起作用,你可以设置一个映像工厂,以从 CI/CD 管道生成 VM 映像并将其自动分发到这些映像中注册的任何 Azure 开发测试实验室。 有关详细信息,请参阅从 Azure DevOps 运行映像工厂

  • 除了过渡环境之外,还可以创建其他环境,并将其部署到 CD 管道 中。 这些环境可以支持性能测试和用户验收测试等活动。

注意事项

本部分假设你已阅读 Azure Pipelines 基线体系结构中的注意事项部分,并仅重点介绍将工作负载部署到 Azure 开发测试实验室以进行过渡的具体内容。

成本优化

卓越运营

  • 请考虑实现环境,而不仅仅是过渡和生产环境,以实现回滚、手动验收测试和性能测试等功能。 若使用过渡环境作为回滚环境,则无法将该环境用于其他目的。

后续步骤