管理 App Hub 应用

选择应用设置模型时,您需要在管理项目中为 App Hub 应用定义应用管理边界。然后,您可以在此边界内的应用中注册服务和工作负载。

如需了解应用管理实践方面的推荐用例,请参阅 准备工作。 如需创建应用和注册资源,请参阅 向应用注册现有资源

为避免配置漂移并保持明确的事实来源,我们建议您在最初定义应用组件的环境中管理这些组件:

  • 对于从 App Design Center 模板部署的应用: 使用 App Design Center 管理和更新应用。 您可以 修改模板 以更改应用设计,也可以 创建应用修订版本 以更新应用和组件详细信息等设置。

    前往 App Design Center

  • 对于通过在 App Hub 中注册现有资源创建的应用: 直接在 App Hub 中管理应用、服务和工作负载。

    前往 App Hub

本页面介绍了如何管理直接在 App Hub 中注册的应用。您可以使用 Google Cloud 控制台或 Google Cloud CLI 执行这些操作。对于从 模板部署的应用,请参阅 App Design Center 文档。

准备工作

本文档假定您有一个已注册 受支持资源的应用。

所需角色

如需获得在 App Hub 中管理应用所需的权限,请让管理员向您授予定义应用管理边界的管理项目的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限

您也可以通过自定义 角色或其他预定义 角色来获取所需的权限。

如需详细了解 App Hub 角色,请参阅 App Hub IAM 角色和权限

列出应用

如需列出和过滤应用管理边界内的所有应用,请按以下步骤操作:

控制台

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

  2. 从 App Hub 前往应用 页面:

    打开“应用”

    该页面会显示您的应用列表。

  3. 如需过滤列表,请使用过滤条件 字段。您可以按严重程度环境 等属性进行过滤。

gcloud

  1. 找到项目 ID 管理项目的。

  2. 使用以下选项之一显示应用列表:

    • 列出所有应用:

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

      替换以下内容:

      • PROJECT_ID:您的管理项目的 ID。
      • LOCATION:应用的位置。对于全球应用,请使用 global;对于区域应用,请使用特定区域(例如 us-east1)。
    • 使用 --filter 标志根据属性过滤应用列表:

      gcloud apphub applications list \
          --project=PROJECT_ID \
          --location=LOCATION \
          --filter=FILTER_EXPRESSION \
      

      替换以下内容:

      • PROJECT_ID:您的管理项目的 ID。
      • LOCATION:应用的位置。对于全球应用,请使用 global;对于区域应用,请使用特定区域(例如 us-east1)。
      • FILTER_EXPRESSION:用于指定属性的过滤表达式。例如,如需列出所有 环境类型为 PRODUCTION 的应用,请使用 attributes.environment.type=PRODUCTION

查看应用详情

如需查看特定应用的详细信息(包括其属性和元数据),请按以下步骤操作:

控制台

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

  2. 从 App Hub 前往应用 页面:

    打开“应用”

    该页面会显示您的应用列表。

  3. 点击要查看的应用的名称。

    系统会显示应用的详情 标签页。

gcloud

  1. 找到项目 ID 管理项目的。

  2. 描述应用:

    gcloud apphub applications describe APPLICATION_NAME \
        --project=PROJECT_ID \
        --location=LOCATION
    

    替换以下内容:

    • APPLICATION_NAME:应用的名称。您可以在创建应用时指定此值。
    • PROJECT_ID:您的管理项目的 ID。
    • LOCATION:应用的位置。对于全球应用,请使用 global;对于区域应用,请使用特定区域(例如 us-east1)。

更新应用属性

如需在创建应用后修改其 属性 ,请按以下步骤操作。服务和 工作负载也可以在注册期间使用相同的应用属性 注册

控制台

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

  2. 从 App Hub 前往应用 页面:

    打开“应用”

    该页面会显示您的应用列表。

  3. 对于要更新的应用,点击 Edit

  4. 修改应用 窗格中,根据需要修改字段。

  5. 点击保存

gcloud

  1. 找到项目 ID 管理项目的。

  2. 更新应用属性。您可以更新任何可变属性,例如 display-namecriticality-typeenvironment-type 和所有者:

    gcloud apphub applications update APPLICATION_NAME \
        --project=PROJECT_ID \
        --location=LOCATION \
        --display-name=DISPLAY_NAME \
        --criticality-type=CRITICALITY_LEVEL \
        --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:应用的名称。您可以在创建应用时指定此值。
    • 必需:PROJECT_ID:您的管理项目的 ID。
    • 必需:LOCATION:应用的位置。对于全球应用,请使用 global;对于区域应用,请使用特定区域(例如 us-east1)。
    • 可选:DISPLAY_NAME:应用的显示名称。
    • 可选:CRITICALITY_LEVEL:应用的重要性级别。请使用以下某个值:

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

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

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

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

Terraform

如需使用 Terraform 更新应用属性,请修改配置文件中 the google_apphub_application resource 块内的实参。应用更改后,Terraform 会更新应用以匹配新配置。

以下示例更新了 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."
    attributes {
        criticality {
            type = "HIGH" # Updated criticality
        }
        environment {
            type = "PRODUCTION"
        }
        # ... other attributes
    }
}

删除应用

您必须先 取消注册应用的所有服务和工作负载,然后才能删除应用。 然后,按照以下步骤删除应用:

控制台

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

  2. 从 App Hub 前往应用 页面:

    打开“应用”

    该页面会显示您的应用列表。

  3. 点击要删除的应用的名称。

  4. 前往服务和工作负载 标签页,确保您已取消注册所有应用组件。如需了解详情,请参阅 取消注册服务和工作负载

  5. 取消注册所有服务和工作负载后,返回到应用详情,然后点击删除

gcloud

  1. 找到项目 ID 管理项目的。

  2. 确保您已取消注册所有应用组件。如需了解详情,请参阅 取消注册服务和工作负载

  3. 在应用没有已注册组件后,将其删除:

    gcloud apphub applications delete APPLICATION_NAME \
        --project=PROJECT_ID \
        --location=LOCATION
    

    替换以下内容:

    • APPLICATION_NAME:应用的名称。您可以在创建应用时指定此值。
    • PROJECT_ID:您的管理项目的 ID。
    • LOCATION:应用的位置。对于全球应用,请使用 global;对于区域应用,请使用特定区域(例如 us-east1)。

Terraform

如需删除由 Terraform 管理的应用,您可以使用以下选项:

  • 从配置中移除资源:删除 google_apphub_application 资源 块,然后运行 terraform apply。Terraform 会识别出该资源已不在配置中,并将其从您的项目中删除。
  • 终止所有资源:运行 terraform destroy 命令以 终止由 Terraform 配置管理的所有资源, 包括应用。

后续步骤