将现有资源注册到应用

通过在 App Hub 应用中将现有 Google Cloud 资源注册为服务工作负载,您可以根据资源的业务用途整理资源,从而简化管理。这种方法可提供统一的可见性、监控、治理和运营控制。

本指南介绍了如何对尚未正式定义为应用的现有 Google Cloud 资源进行分组。

准备工作

您必须先完成应用管理的初始设置,然后才能将资源整理到应用中。此流程通常涉及以下角色和步骤:

创建应用

在 App Hub 中创建一个应用,作为现有 Google Cloud 资源的逻辑容器:

控制台

  1. 在 Google Cloud 控制台中,使用项目选择器选择您的管理项目。

  2. 通过 App Hub 前往应用页面:

    打开“应用”

  3. 点击 Create application(创建应用)。

  4. 应用详情标签页中,根据您的地理分布要求,为应用选择最合适的位置:

    • 选择全局以创建全局应用。
    • 选择区域以创建区域级应用。然后,根据 App Hub 支持的区域为您的应用选择特定区域。

    如需详细了解应用的最佳位置,请参阅全球应用和区域应用

  5. 输入应用的名称。

    此名称是唯一标识符,只能包含小写字母、数字或连字符。应用创建后,您将无法更改此名称。

  6. (可选)为应用添加显示名称和说明。

    这些不是唯一标识符,您可以在创建应用后更改它们。

  7. 点击继续

  8. 应用资源标签页中,浏览基础架构资源,然后选中要注册为应用的服务和工作负载的资源对应的复选框。

    您一次最多可以选择 10 个资源。

  9. 点击继续

  10. 属性和所有者标签页中,您可以为应用添加属性,例如重要性、环境和应用所有者。

    您可以选择为要向应用注册的资源使用相同的属性和所有者,也可以稍后定义这些属性和所有者

  11. 点击创建

创建应用后,应用页面会显示其详细信息,包括您注册为服务和工作负载的资源。创建应用后,您可以向其注册更多服务和工作负载

gcloud

  1. 使用 Google Cloud CLI 通过终端或 Cloud Shell 创建应用:

    gcloud apphub applications create APPLICATION_NAME \
      --project=PROJECT_ID \
      --scope-type=LOCATION \
      --location=REGION \
      --display-name=DISPLAY_NAME \
      --criticality-type=CRITICALITY \
      --environment-type=ENVIRONMENT \
      --developer-owners=display-name=DEV_NAME,email=DEV_EMAIL \
      --operator-owners=display-name=OPERATOR_NAME,email=OPERATOR_EMAIL \
      --business-owners=display-name=BUSINESS_NAME,email=BUSINESS_EMAIL
    

    APPLICATION_NAME 替换为应用的名称。此名称是唯一标识符,只能包含小写字母、数字或连字符。

    使用 --criticality-type 等可选标志来定义应用的顶级属性,并支持可发现性和治理。

    对于必需标志和可选标志,请替换以下内容:

    • 必需:PROJECT_ID:管理项目的 ID。
    • 必需:LOCATION:根据您的地理位置分布要求,应用的位置。请使用以下某个值:

      • REGIONAL 适用于区域应用。
      • GLOBAL(适用于全球应用)。

      如需详细了解应用的最佳位置,请参阅全球应用和区域应用

    • 必需:REGION:应用的特定区域。请使用以下某个值:

      • 如果应用的 --scope-type 位置设置为 REGIONAL,请指定受 App Hub 支持的区域名称
      • 如果应用的 --scope-type 位置设置为 GLOBAL,请使用 global
    • 可选:DISPLAY_NAME:应用的显示名称。显示名称不是唯一标识符,您可以在创建应用后更改它。

    • 可选:CRITICALITY:应用对您的运营的重要性级别。请使用以下某个值:

      • MISSION_CRITICAL
      • HIGH
      • MEDIUM
      • LOW
    • 可选:ENVIRONMENT:软件生命周期的阶段。请使用以下某个值:

      • PRODUCTION
      • STAGING
      • DEVELOPMENT
      • TEST
    • 可选:DEV_NAMEDEV_EMAIL:开发者所有者的显示名称和电子邮件地址(分别)。

    • 可选:OPERATOR_NAMEOPERATOR_EMAIL:分别是运营商所有者的显示名称和电子邮件地址。

    • 可选:BUSINESS_NAMEBUSINESS_EMAIL:企业主的显示名称和电子邮件地址(分别)。

  2. 列出项目中的应用:

    gcloud apphub applications list \
      --project=PROJECT_ID \
      --location=REGION
    

    您必须获得类似如下所示的输出:

    ID                 DISPLAY_NAME   CREATE_TIME
    APPLICATION_NAME   DISPLAY_NAME   2023-10-31T18:33:48
    

Terraform

如需使用 Terraform 创建应用,请使用google_apphub_application 资源。您可以使用此资源定义应用的属性,包括名称、位置和属性。

以下示例在 us-central1 中创建了一个区域级应用,并定义了严重程度、环境和所有者属性:

resource "google_apphub_application" "example" {
    project        = "my-project-id"
    location       = "us-central1"
    application_id = "my-application"
    display_name   = "My Application"
    description    = "This application represents our platform."
    scope {
        type = "REGIONAL"