如需将基础设施资源整理到 App Hub 应用中,您必须定义应用管理边界。此边界可以是包含一个或多个项目的文件夹,也可以是单个项目,具体取决于贵组织的资源层次结构。
在此边界内,App Hub 可以发现和管理Google Cloud 资源,让您通过将这些资源注册为服务和工作负载,将它们分组到应用中。此设置的关键部分是管理项目,这是一个特定的 Google Cloud 项目,可作为集中管理 API、访问权限控制、结算和应用配额的中心点。
本页将详细介绍各种设置方案的优势、注意事项和功能差异,引导您为应用管理边界选择最佳设置模型。
比较设置模型
下表比较了项目和文件夹作为应用管理边界的异同:
| 功能 | 单项目边界(预览版) | 文件夹级边界 | 宿主项目(旧版) |
|---|---|---|---|
| 建议 | 新用户或小型组织,其中所有应用组件都位于单个项目中。 | 大型组织,单个文件夹中包含多个项目,并且您希望使应用管理与组织结构保持一致。 | 支持现有用户管理来自多个项目的应用组件,这些项目不包含在单个文件夹中。 |
| 边界范围 | 单个 Google Cloud 项目 | Google Cloud 文件夹中的所有后代项目 | 一组手动管理的服务项目 |
| 管理 | App Hub 会自动发现项目中的受支持资源。您可以将这些资源注册为应用的服务或工作负载。 | 文件夹中的项目会自动添加到边界中。 您可以将这些后代项目中的受支持资源注册为应用的服务或工作负载。 | 您必须手动将服务项目关联到宿主项目,才能将它们添加到边界。您可以将这些服务项目中的受支持资源注册为应用的服务或工作负载。 |
| 主要用途 | 小型应用、初始采用或在单个项目中管理基础设施资源的团队。 | 通过业务部门、环境或团队,使应用管理与组织结构保持一致。 | 应用组件分布在不共享通用文件夹的项目中的情形。 |
| 以应用为中心的 Google Cloud 功能支持 | 有限支持 | 完全支持 | 有限支持 |
| 设置复杂性 | 低:需要单个项目。 | 中:需要文件夹结构。 | 高:要求手动将所有项目关联到边界。 |
| 设置指南 | 设置单个项目 | 设置文件夹 | 设置宿主项目(旧版) |
规划资源层次结构以进行应用管理
App Hub 中的有效应用管理直接基于 Google Cloud中的现有资源层次结构。当您选择文件夹或项目作为应用管理边界时,App Hub 的应用管理层会遵循 Google Cloud的标准层次结构规则和继承政策。
您定义应用管理边界的方式会影响以应用为中心的 Google Cloud 产品中各项功能的可用性。如需了解详情,请参阅按边界类型划分的功能支持。
应用如何与 Google Cloud 资源层次结构保持一致
您可以将 App Hub 的数据模型视为 Google Cloud资源层次结构上的叠加层:
- 权限继承:应用的 IAM 角色和权限是在管理项目上授予的,并且会应用资源层次结构中的标准 IAM 继承规则。
- 元数据集中化:管理项目可集中管理应用元数据,例如应用所有者、严重程度和环境,从而为资源管理添加应用感知层。
应用管理边界的选择从根本上决定了您在 App Hub 应用中组织组件的方式。如图 1 所示,在父文件夹(例如 F1)上定义应用管理边界后,该文件夹中的应用便可包含直接位于该文件夹中的项目(例如 P10 和 P11)中的资源,也可包含嵌套文件夹(例如 F2 中的 P20 和 P21)中的资源。

图 1. 应用管理边界是在父文件夹中定义的。
如图 2 所示,如果您在嵌套文件夹 F2 上定义应用管理边界,则该文件夹中的应用可以使用其中项目的资源,例如 P20 和 P21。如果您想纳入父文件夹 F1 中的项目(例如 P10)的资源,则必须将该项目移至 F2。

图 2. 应用管理边界是在嵌套文件夹上定义的。
按边界类型提供功能支持
下表比较了以应用为中心的 Google Cloud 产品对每种边界设置模型的支持。
| 边界类型 | App Hub 项目类型 | 以应用为中心的 Google Cloud 支持 |
|---|---|---|
| 单项目(预览版) | 宿主项目 |
|
| 管理项目 |
|
|
| 文件夹级层 | 管理项目 |
|
| 多个项目 | 宿主项目 |
|