你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 部署环境的关键概念

在本文中,你将了解 Azure 部署环境的关键概念和组件。 这些知识可帮助你更有效地为自己的各种方案部署环境。

在了解部署环境时,你还会遇到 Microsoft Dev Box(一种可共享某些体系结构组件的补充服务)的各种组件。 Dev Box 为开发人员提供了基于云的开发工作站,称为开发箱,其配置了他们工作所需的工具。

此图显示了部署环境的关键组件以及它们之间的关系。 你可以在以下部分中了解有关每个组件的详细信息。

示意图显示部署环境的关键组件。

开发人员中心

开发人员中心是需要类似设置的项目的集合。 开发人员中心使平台工程师能够:

  • 使用目录管理适用于项目的基础结构即代码 (IaC) 模板。
  • 使用环境类型来配置可由开发团队创建的环境的类型。

Microsoft Dev Box 还会使用开发人员中心来组织资源。 组织可以为这两个服务使用同一个开发人员中心。

项目

在部署环境中,项目表示组织中的某个团队或业务职能。 将项目与开发人员中心关联时,开发人员中心的所有设置将自动应用于项目。

每个项目只能与一个开发人员中心关联。 平台工程师可以通过指定适合开发团队的环境类型来配置项目的环境。

若要使开发人员能够创建自己的部署环境,你必须通过分配部署环境用户角色来为开发人员提供对项目的访问权限

你可以在同一开发人员中心配置针对部署环境的项目和针对 Microsoft Dev Box 资源的项目。

环境

环境是在其上部署了应用程序的 Azure 资源的集合。 例如,若要部署 Web 应用程序,可创建一个包含 Azure 应用服务Azure Key VaultAzure Cosmos DB存储帐户的环境。 环境可以包括 Azure 平台即服务 (PaaS) 和基础结构即服务 (IaaS) 资源,例如 Azure Kubernetes 服务 (AKS) 群集、虚拟机和数据库。

标识

在 Azure 部署环境中,请使用托管标识来提供特权提升功能。 标识有助于为开发团队提供自助服务功能,无需为他们提供对创建 Azure 资源的目标订阅的访问权限。

需要向附加到开发人员中心的托管标识授予适当的访问权限才能连接到目录。 你应向参与者和用户访问管理员授予对在项目级别配置的目标部署订阅的访问权限。 Azure 部署环境服务将使用特定的托管标识来代表开发人员执行部署。

开发人员中心环境类型

你可以定义开发团队可创建的环境类型,例如开发、测试、沙盒、预生产或生产。 通过 Azure 部署环境可以灵活地根据企业使用的命名法命名环境类型。 可以根据开发团队的特定需求为各种环境类型配置设置。

项目环境类型

项目环境类型是为开发人员中心配置的环境类型的子集。 它们可帮助你预配置可由特定开发团队创建的环境的类型。 你可以配置目标订阅,在其中为每个环境类型的项目创建 Azure 资源。

项目环境类型可让你自动在环境中应用正确的策略集,有助于从开发团队中抽象出与 Azure 治理相关的概念。 该服务还可以灵活地预配置以下项:

  • 用于执行部署的托管标识
  • 开发团队在创建特定环境后将获得的访问级别。

目录

目录可用于为开发团队提供一组精选的 IaC 模板来创建环境。 Microsoft 提供了一个快速入门目录,其中包含一组示例环境定义。 可以将该快速入门目录附加到开发人员中心,从而使这些环境定义可用于与开发人员中心关联的所有项目。 你可以根据需要修改示例环境定义。

或者,可以附加自己的目录。 可以将 GitHub 存储库Azure DevOps Services 存储库作为目录附加。

部署环境将扫描存储库的指定文件夹,以查找环境定义。 然后,这些环境将使这些环境定义可供与开发人员中心关联的所有项目使用。

环境定义

环境定义是 IaC 模板和充当清单的环境文件的组合。 模板定义环境,环境文件提供有关模板的元数据。 开发团队将使用你在目录中提供的项来在 Azure 中创建环境。

注意

Azure 部署环境使用 Azure 资源管理器 (ARM) 模板。

ARM 模板

ARM 模板通过定义项目的基础结构和配置、要部署的资源以及这些资源的属性,帮助实现 Azure 解决方案的 IaC。

若要了解 ARM 模板的结构、模板的多个部分以及这些部分中提供的属性,请参阅了解 Azure 资源管理器模板的结构和语法

内置角色

Azure 部署环境支持三个内置角色

  • 开发中心项目管理员:为项目创建和管理环境类型。
  • 部署环境用户:基于适当的访问权限创建环境。
  • Azure 部署环境读取者:读取其他用户创建的环境。

与 Microsoft Dev Box 共享的资源

Azure 部署环境和 Microsoft Dev Box 是共享某些体系结构组件的互补服务。 开发人员中心和项目对两种服务都是通用的,它们有助于组织企业中的资源。 可以在同一开发人员中心为部署环境和 Dev Box 资源配置项目。

若要详细了解部署环境和 Dev Box 通用的组件,请参阅 Microsoft Dev Box 和 Azure 部署环境通用的组件