你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍 Microsoft Dev Box 的体系结构和关键概念,可帮助你成功设置服务。 Microsoft Dev Box 让开发人员能够自助访问预配置、可直接编写代码且基于云的工作站。 可以将服务配置为满足开发团队和项目结构、管理安全性和网络设置,以安全地访问资源。
观看此视频,详细了解 Microsoft Dev Box:
关键组件和关系
需要在 Microsoft Dev Box 中设置开发人员中心和项目,然后开发人员才能在开发人员门户中创建开发箱。
核心工作流涉及:
- 使用共享资源设置开发人员中心
- 为团队或业务功能创建项目
- 使用特定设置配置开发环境池
- 开发人员通过门户从池创建开发箱
开发框运行后,开发人员可以从开发人员门户 远程连接到 它。 开发环境用户拥有对其创建的开发环境的完全控制权,并且可以从开发者门户进行管理。
开发人员中心
开发人员中心是一个顶级资源,它汇集了需要类似设置的项目。 可创建任意数量的开发人员中心,但大多数组织只需要一个。
开发人员中心使平台工程师能够使用网络连接配置开发团队使用的网络。
Azure 部署环境 还使用开发人员中心来组织资源。 组织可以为这两个服务使用同一个开发人员中心。
Catalogs
Dev Box 中的目录是任务和脚本的集合,用于在预配过程中自动配置开发框。 通过将目录附加到开发人员中心,可以将其任务提供给该开发人员中心内的所有项目。 或者,可以将目录直接附加到项目,以将任务可用性限制为该特定项目。 可以自定义提供的示例任务,或创建自己的目录以满足团队的要求。
目录还包含团队专用自定义图像的定义文件。
若要了解如何创建 Dev Box 自定义项,请参阅 Microsoft Dev Box 自定义。
项目
在 Dev Box 中,项目表示组织中的团队或业务功能,是开发团队的访问点。 每个项目都是 开发框池的集合,每个池表示一个区域或工作负荷。 当你将项目与开发人员中心关联时,开发人员中心级别的所有设置会自动应用于项目。
每个项目只能与一个开发人员中心关联。 开发经理通过创建开发箱池来配置项目可用的开发箱,这些池可指定映像定义、自定义映像、市场映像或旧版开发箱定义。
若要使开发人员能够创建自己的开发框,必须通过分配 Dev Box User 角色 为开发人员提供对项目的访问权限 。
可以在同一开发人员中心为部署环境和 Dev Box 资源配置项目。
项目策略
Microsoft Dev Box 中的项目策略定义哪些资源(如图像、网络和 SKU)可用于项目、强制实施治理和合规性。 它确保开发团队只能使用批准的资源,帮助组织控制和简化资源使用。
开发箱池
开发箱池是一组共同管理的开发箱,可对其应用类似的设置。 可以创建多个开发盒池,以支持在不同区域或不同工作负荷上运行的混合团队的需求。
开发框池指定开发框的配置,包括映像源(映像定义、自定义映像、市场映像或旧版开发框定义)、计算大小、存储、网络连接和其他设置。 从开发箱池创建的所有开发箱共享相同的配置。
映像定义
映像定义是基于 YAML 的自定义文件,用于定义基础映像并应用特定于团队的自定义项。 它们可以被内置到可重用的映像中,以优化开发环境的创建时间。 通过允许你在创建开发框池时独立选择计算大小和存储,映像定义提供了更大的灵活性。
若要详细了解如何创建和使用映像定义,请参阅 “配置团队自定义”。
开发框定义
注意
开发框定义是旧选项。 建议使用映像定义、自定义映像或市场映像,以更好地选择计算大小和存储。
开发箱定义指定源映像和大小,包括捆绑在一起的计算大小和存储大小。 从 Azure 市场中选择源映像,或者从自己的 Azure 计算库 实例中选择自定义映像。 Dev Box 支持 Windows 10 和 Windows 11 的客户端版本。 可以在开发人员中心内的多个项目中使用开发框定义。
对于新部署,请考虑在开发盒池中直接使用市场镜像或自定义镜像,以便可以独立选择计算和存储配置。
网络连接
IT 管理员和平台工程师根据组织策略配置用于开发盒创建的网络。 网络连接会存储配置信息,例如 Active Directory 联接类型和虚拟网络,开发箱会使用这些信息连接到网络资源。
与开发箱池关联的网络连接决定了开发箱的托管位置。 可以使用 Microsoft 托管的网络连接,也可自带 Azure 网络连接。 如果需要对虚拟网络进行控制,或者如果需要访问公司资源,或需要有权使用 Active Directory 帐户对开发箱进行身份验证,可以使用 Azure 网络连接。
Dev Box 支持两种类型的网络连接:
- Microsoft托管的网络连接 - Microsoft管理开发环境的网络基础设施和相关服务。
-
Azure 网络连接 - 您管理开发环境的网络基础结构和相关服务。
- 如果你的开发箱需要纯连接到基于云的资源,请使用本机 Microsoft Entra ID 联接。
- 如果你的开发箱需要连接到本地资源和基于云的资源,请使用混合 Microsoft Entra ID 联接。
若要了解有关本机 Microsoft Entra 联接和 Microsoft Entra 混合联接的详细信息,请参阅规划 Microsoft Entra 设备部署。
适用于 Dev Box 的 Azure 区域
在设置 Dev Box 之前,需要为组织选择最佳区域。
- 开发人员中心和项目通常与主办公室或 IT 管理中心位于同一区域中。
- 开发环境池可以分布于不同地区,具体取决于它们使用的网络连接。 开发人员应该从靠近他们的池中创建开发箱,以尽量降低延迟。
网络连接中指定的虚拟网络的区域决定了开发箱的区域。 可以根据支持开发人员的区域创建多个网络连接。 然后,在创建开发箱池时,你可以使用这些连接来确保开发箱用户在靠近它们的区域中创建开发箱。 使用靠近开发框的区域为用户提供最佳体验。
若要帮助你决定要使用的区域,请检查:
如果你喜欢的区域不适用于 Dev Box,请在 500 英里内选择一个区域。
开发箱
开发框是通过自助服务开发人员门户创建的预配置工作站。 新的开发框包含开发框用户立即高效工作所需的所有工具、二进制文件和配置。 可以创建和管理多个开发框,以便处理多个工作流。
作为开发框用户,你可以控制自己的开发框。 可以根据需要创建更多内容,并在使用完它们时将其删除。
开发人员可以使用开发人员门户从开发箱池创建开发箱。 他们可能会根据虚拟机映像、计算资源或托管开发箱的位置从特定池中进行选择。
Microsoft Dev Box 体系结构
在订阅所有者将虚拟机的适当且范围限定的权限委托给 Microsoft 服务后,这些服务可使用“代表托管”体系结构将托管的 Azure 服务附加到客户订阅。 此连接模型使 Microsoft 服务能够提供服务型软件和用户许可服务,而不是标准的基于消耗的服务。
Microsoft Dev Box 使用“代表托管”体系结构,这意味着开发箱存在于 Microsoft 拥有的订阅中。 因此,Microsoft 运行和管理此基础结构会产生成本。 开发箱部署在由 Microsoft 管理的订阅中,并连接到客户的虚拟网络。
Microsoft Dev Box 管理 Microsoft Dev Box 订阅中的容量和区域可用性。 Microsoft Dev Box 根据创建开发箱池时选择的网络连接确定托管开发箱的 Azure 区域。
为了保护你的数据,Microsoft Dev Box 默认使用平台管理密钥来加密磁盘。 你不必启用 BitLocker,如果执行此操作,将会阻止你访问开发箱。
若要详细了解 Azure 中的数据存储和保护,请参阅 Azure 客户数据保护。
对于网络连接,还可选择是使用 Microsoft 托管的网络连接,还是你在自己的订阅中创建的 Azure 网络连接。
下图显示了 Microsoft Dev Box 的逻辑体系结构。
网络连接
网络连接可控制开发箱的创建和托管位置,并让你能够连接到其他 Azure 或公司资源。 可使用 Microsoft 托管的网络连接或自带 Azure 网络连接,具体取决于你的控制级别。
Microsoft 托管的网络连接以 SaaS 方式提供网络连接。 Microsoft 管理开发箱的网络基础结构和相关服务。 Microsoft 托管的网络是纯云部署,支持 Microsoft Entra 联接。 此选项与 Microsoft Entra 混合联接模型不兼容。
此外,可以使用 Azure 网络连接(自带网络)来连接到 Azure 虚拟网络,并选择性地连接到公司资源。 使用 Azure 网络连接,可以管理和控制整个网络设置和配置。 可以将 Microsoft Entra 联接选项或 Microsoft Entra 混合联接选项用于 Azure 网络连接,让你能够连接到本地 Azure Active Directory 域服务。
如果使用自己的 Azure 虚拟网络,Microsoft Dev Box 支持使用虚拟网络安全性和路由功能,包括:
在 Microsoft Dev Box 中,将网络连接与项目中的开发箱池相关联。 然后,在此开发箱池中创建的所有开发箱都托管在网络连接的 Azure 区域中。 如果使用 Azure 网络连接,请先将网络连接添加到开发人员中心,然后将连接与开发箱池相关联。
然后,可配置开发箱池和网络连接,以优化该地理区域中开发人员的延迟。 若要详细了解跨 Azure 区域的延迟,请参阅按区域统计的往返延迟数据。
Microsoft Intune 集成
Microsoft Intune 用于管理开发箱。 每个 Dev Box 用户都需要一个 Microsoft Intune 许可证,并且可以创建多个开发箱。 预配开发箱后,可以像 Microsoft Intune 中的任何其他 Windows 设备一样对其进行管理。 例如,可以创建设备配置文件来在 Windows 中打开和关闭不同的设置,或者将应用和更新推送到用户的开发箱。
Microsoft Intune 和关联的 Windows 组件具有各种网络终结点,必须允许这些终结点通过虚拟网络。 如果不使用 Microsoft Intune 管理这些设备类型,则可以安全地忽略 Apple 和 Android 终结点。
标识服务
Microsoft Dev Box 使用 Microsoft Entra ID,并选择性地使用本地 Active Directory 域服务 (AD DS)。 Microsoft Entra ID 提供:
- 为 Microsoft Dev Box 开发人员门户提供用户身份验证。
- 通过 Microsoft Entra 混合联接或 Microsoft Entra 联接为 Microsoft Intune 提供设备标识服务。
将开发箱配置为使用 Microsoft Entra 混合联接时,AD DS:
- 为开发箱提供本地域加入。
- 为远程桌面协议 (RDP) 连接提供用户身份验证。
将开发箱配置为使用 Microsoft Entra 联接时,Microsoft Entra ID:
- 为开发箱提供域加入机制。
- 为 RDP 连接提供用户身份验证。
注意
Microsoft Dev Box 支持工作和学校帐户。 它不支持使用来宾帐户或个人帐户。
用户连接
当开发框正在运行时,开发人员可以从开发人员门户连接到它。
开发箱连接由 Azure 虚拟桌面提供。 没有从 Internet 直接到开发箱的入站连接。 而是进行了如下连接:
- 从开发箱连接到 Azure 虚拟桌面终结点
- 从远程桌面客户端连接到 Azure 虚拟桌面终结点。
有关这些终结点的详细信息,请参阅 Azure 虚拟桌面所需的 FQDN 和终结点。 为了简化网络安全控制的配置,请使用 Azure 虚拟桌面的服务标记来标识这些终结点。 有关详细信息,请参阅 Azure 服务标记概述。
无需配置开发箱即可建立这些连接。 Microsoft Dev Box 将 Azure 虚拟桌面连接组件无缝集成到库或自定义映像中。
若要详细了解 Azure 虚拟桌面的网络体系结构,请参阅了解 Azure 虚拟桌面网络连接。
Microsoft Dev Box 不支持非 Microsoft 连接代理。
Microsoft Dev Box 入门
若要开始使用 Microsoft Dev Box,需要设置开发人员中心。 开发人员中心是项目和资源的容器。 可以在 Azure 门户中创建开发人员中心,然后在该开发人员中心内创建项目。 每个项目可以有自己的一组资源,包括开发框、网络和图像。
使用基本模板启动 Dev Box 之旅: Microsoft Dev Box。
Microsoft Dev Box 中的新增功能
若要了解 Microsoft Dev Box 中的最新功能和更新,请参阅 Microsoft Dev Box 中的新增功能。