設定單一專案

本文說明如何設定單一 Google Cloud 專案來管理應用程式。這項設定也稱為「單一專案界線」

在此設定中, Google Cloud 專案會設定為管理自己的應用程式和元件,做為獨立的管理專案。如果所有應用程式元件都位於這個單一專案中,這是開始管理應用程式最快的方法。App Hub 會自動發掘專案中的所有支援資源,方便您將這些資源整理到應用程式中。

限制

與資料夾層級的界線相比,單一專案界線支援的功能有所不同。App Hub、應用程式設計中心和應用程式監控功能完全支援單一專案,但其他以應用程式為中心的 Google Cloud 服務 (例如 Cloud Hub 和 Gemini Cloud Assist) 則需要資料夾層級的界線。

如要比較單一專案和資料夾層級模型支援的功能,請參閱「依邊界類型劃分的功能支援」。

事前準備

選擇要用於管理應用程式的 Google Cloud 專案。這個專案將做為獨立的管理專案。您可以使用現有專案或建立新專案

必要的角色

如要取得設定單一專案以進行應用程式管理所需的權限,請要求管理員在您要設定為獨立管理專案的專案中,授予下列 IAM 角色:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。

您或許也能透過自訂角色或其他預先定義的角色,取得必要權限。

在專案中啟用應用程式管理功能

這項動作會將專案設定為獨立管理專案,並啟用應用程式中繼資料和設定的必要 API。這個專案隨後會稱為「啟用應用程式管理功能的專案」。

如要為單一專案啟用應用程式管理功能,請按照下列步驟操作:

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. 確認已安裝最新版 Google Cloud CLI:

    gcloud components update
    
  3. 找出專案 ID

  4. 將專案設為指令的預設專案:

    gcloud config set project PROJECT_ID
    

    PROJECT_ID 替換為專案 ID。

  5. 啟用 App Hub API:

    gcloud services enable apphub.googleapis.com \
        --project PROJECT_ID
    
  6. 將專案附加至自身,建立應用程式管理邊界:

    gcloud alpha apphub boundary update \
        --crm-node="projects/$(gcloud projects describe PROJECT_ID --format='value(projectNumber)')" \
        --project=PROJECT_ID \
        --location=global
    

    這項指令會將專案設為自己的管理專案,讓 App Hub 自動探索其中的所有支援資源

  7. 確認附件狀態:

    gcloud alpha apphub boundary describe \
        --project=PROJECT_ID \
        --location=global
    

    您會取得類似下列範例的輸出內容:

    name: projects/PROJECT_ID/locations/LOCATION/boundary
    crmNode: projects/PROJECT_NUMBER
    createTime: 2025-08-28T19:04:47Z
    updateTime: 2025-08-28T19:04:47Z
    type: AUTOMATIC
    

    PROJECT_NUMBER 是與專案 ID 對應的專案號碼。

  8. 管理專案設定完成後,應用程式管理所需的 API 就會啟用,您也可以開始使用 App Hub,將服務和工作負載歸入應用程式。如要使用進階功能,可以視需要查看建議的 API

    指派 App Hub 角色和權限

    如要讓使用者透過 App Hub 探索、註冊及管理這個專案中的應用程式元件,您必須授予適當的 App Hub 角色和權限

    步驟如下:

    控制台

    1. 在 Google Cloud 控制台,使用專案選擇工具選取管理專案。

    2. 前往「IAM」(身分與存取權管理) 頁面:

      前往「身分與存取權管理」頁面

    3. 點按「 Grant access」(授予存取權)。「授予存取權」窗格隨即開啟。

    4. 在「New principals」(新增主體) 欄位中,輸入要授予 App Hub 存取權的主體電子郵件地址。

    5. 按一下「選取角色」,然後在「篩選器」欄位中輸入「App Hub」

    6. 選取要指派給主體的 App Hub IAM 角色,然後按一下「儲存」

    gcloud

    1. 授予管理專案中的主體存取權:

      gcloud projects add-iam-policy-binding PROJECT_ID \
          --member='user:EMAIL_ADDRESS' \
          --role='ROLE_NAME'
      

      更改下列內容:

      • PROJECT_ID:管理專案的 ID。
      • EMAIL_ADDRESS:必須取得 App Hub 存取權的校長電子郵件地址。這個值必須採用 username@yourdomain 格式,例如 my.user@example.com
      • ROLE_NAME:要指派給主體的應用程式中心 IAM 角色,例如 roles/apphub.admin

    變更應用程式管理邊界

    如要變更定義單一專案界線的專案,請在舊專案中停用應用程式管理服務,並在新專案中啟用這項服務。應用程式資料不會遷移,您必須在新專案中重新建立應用程式。

    如要從單一專案邊界移至資料夾層級邊界,請設定已啟用應用程式管理功能的資料夾。這項操作會在資料夾中設定新的管理專案。您必須在這個新的管理專案中重新建立應用程式。

    停用專案的應用程式管理功能

    如果您不想再透過 App Hub 應用程式管理專案資源,可以停用專案的應用程式管理功能。

    停用專案的應用程式管理功能後,專案就會從應用程式管理邊界中分離。應用程式中的服務和工作負載會繼續存在,但註冊狀態會變更為「已分離」。如果您決定重新啟用專案的應用程式管理功能,App Hub 就能重新探索應用程式、服務和工作負載,並在基礎資源仍存在的情況下更新註冊狀態。

    如要停用單一專案的應用程式管理功能,請按照下列步驟操作:

    1. In the Google Cloud console, activate Cloud Shell.

      Activate Cloud Shell

      At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

    2. 確認已安裝最新版 Google Cloud CLI:

      gcloud components update
      
    3. 找出專案 ID

    4. 將專案設為指令的預設專案:

      gcloud config set project PROJECT_ID
      

      PROJECT_ID 替換為專案 ID。

    5. 邊界卸離專案,停用應用程式管理功能:

      gcloud alpha apphub boundary update \
          --project=PROJECT_ID \
          --location=global \
          --clear-crm-node
      

      這個指令會更新邊界資源並移除附件,進而停用專案的應用程式管理功能。

    6. 請說明邊界,確認是否要卸除:

      gcloud alpha apphub boundary describe \
          --project=PROJECT_ID \
          --location=global
      

      輸出內容不含 crmNode 欄位,確認專案已停用應用程式管理功能。

    7. (選用) 如果您不會再使用這個專案中的應用程式功能,可以刪除專案中的所有應用程式,然後停用 App Hub API:

      gcloud services disable apphub.googleapis.com \
          --project=PROJECT_ID
      
    8. 後續步驟