管理資料夾中的應用程式

本文說明如何設定啟用應用程式的資料夾,以便在Cloud de Confiance by S3NS上建構、運作及管理 App Hub 應用程式。適用於設定及管理 App Hub 應用程式的使用者。

總覽

Cloud de Confiance by S3NS 提供以應用程式為中心的做法,可部署及管理資源。不必專注於個別基礎架構元件,而是以整體方式管理應用程式。如要進一步瞭解以應用程式為中心的模型及其資源組織,請參閱「以應用程式為中心的 Google Cloud」。

以應用程式為中心的體驗核心是 App Hub 應用程式。應用程式是資源的邏輯分組,這些資源會共同運作,提供特定業務功能。這些資源包括:

  • 服務:向用戶端公開功能的網路或 API 介面,例如負載平衡器的轉送規則。
  • 工作負載:執行二進位檔部署作業的運算資源,可執行不同的業務功能,例如代管執行個體群組 (MIG) 或 Google Kubernetes Engine (GKE) 部署作業。

什麼是已啟用應用程式管理功能的資料夾?

已啟用應用程式管理功能的資料夾是指 Cloud de Confiance by S3NS 資源階層結構 中,經過特別設定的資料夾,專門用來管理應用程式。這個資料夾是應用程式的應用程式管理邊界,內含管理專案,用於儲存應用程式的中繼資料和設定。您可以在資料夾內的一或多個專案中,設計、設定、測試、驗證及部署 App Hub 應用程式。

啟用應用程式管理功能的資料夾可透過下列方式簡化應用程式管理作業:

  • 整理元件:將 App Hub 中定義的相關服務和工作負載,歸類到單一應用程式。
  • 提供集中式監控和管理功能:不必追蹤不同專案或產品中的個別元件,您可以在資料夾層級監控及管理應用程式的整體健康狀態和效能。
  • 簡化管理作業:將資料夾指定為已啟用應用程式管理功能,即可建立資料夾層級的界線,簡化機構內應用程式的建立和管理作業。
  • 提供以應用程式為中心的檢視畫面:這類檢視畫面會將焦點從個別資源轉移到應用程式本身,提供應用程式效能的整體檢視畫面。

如要進一步瞭解資料夾層級的界線,以及應用程式管理界線的專案和資料夾比較,請參閱「選擇應用程式設定模型」。

管理專案總覽

管理專案是已啟用應用程式管理功能的資料夾中的Cloud de Confiance 專案,可做為所有以應用程式為中心的中繼資料的中央存放區。每個資料夾只能包含一個管理專案。管理專案會為應用程式庫和 API 提供基礎架構,包括計費、配額和存取控管機制。如要進一步瞭解這些 API,請參閱「在管理專案中啟用 API」。

管理專案會保留完整的應用程式模型,包括下列項目:

  • 應用程式中心資料:應用程式的邏輯模型,包括與服務和工作負載的關係,以及擁有者和重要性等中繼資料。
  • 應用程式設計中心資料:用於設計及部署新應用程式的範本、目錄和空間等資源。

管理專案也能用來探索已啟用應用程式管理功能的資料夾資源階層內資源。如果管理專案遭到刪除,所有應用程式模型資料都會永久遺失。雖然基礎架構 (例如 GKE 叢集或負載平衡器) 仍完好無損,但 App Hub 內的邏輯分組會永久刪除。

設定資料夾來管理應用程式

現有和新的資料夾都能啟用應用程式管理功能,建議您先在新建立的專屬資料夾測試應用程式管理功能,安全完成試驗,再套用至現有的重要資料夾。

在已啟用應用程式管理功能的資料夾,授權使用者可以直接整合該資料夾內任何專案的工作負載和服務。

假設資源階層具有下列結構:

資料夾 F1 包含下列三個項目:

  • P10 和 P11 專案
  • 資料夾 F2

資料夾 F2 包含下列兩個項目:

  • Project P20 和 P21

在資料夾 F1 上啟用應用程式管理功能,建立包含多個資料夾層級資源的應用程式。舉例來說,應用程式可以包含專案 P10 和 P20 的資源。

應用程式,其中包含專案 P10 和 P20,跨越資料夾層級

如果您只在資料夾 F2 中啟用應用程式管理功能,就無法在專案 P10 中建立應用程式。如要在專案 P10 中建立應用程式,請將專案 P10 移至資料夾 F2 底下。

應用程式包含專案 P10 和 P20,但 P10 已移至資料夾 F2 下方

規劃應用程式管理策略時,請考量貴機構的組織架構、團隊職責和資源。對於啟用應用程式管理功能的資料夾,團隊和資源的結構會直接影響其使用方式。

必要的角色

根據應用程式生命週期中確定的責任,您和使用者需要各種角色,才能設定應用程式管理流程的各個方面。

如要取得設定啟用應用程式的資料夾所需的權限,請要求管理員授予下列 IAM 角色:

  • 啟用應用程式管理功能: 資料夾的父項資源必須具備資料夾管理員 (roles/resourcemanager.folderAdmin) 角色
  • 將帳單帳戶連結至管理專案:
  • 啟用建議的 API: Service Usage Admin (roles/serviceusage.serviceUsageAdmin) 在管理專案中,只有在您想啟用其他服務時才需要啟用
  • 將以應用程式為主的角色授予使用者: 管理專案的「專案 IAM 管理員」 (roles/resourcemanager.projectIamAdmin)
  • 設定可觀測範圍:
  • 在 Cloud Hub 中查看應用程式層級和專案層級的資料: Cloud Hub 操作人員 (roles/cloudhub.operator) 已啟用應用程式的資料夾

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

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

啟用應用程式管理功能

應用程式管理功能可讓您將重心從個別基礎架構元件轉移到整個應用程式。

在資料夾上啟用應用程式管理功能後,該資料夾會稱為「已啟用應用程式管理功能的資料夾」,並發生下列情況:

  • 專案定義為資料夾中的管理專案
  • 系統會在管理專案中啟用必要的 API。
  • 管理專案會儲存應用程式資料,包括已啟用的 API、計費、配額和存取控管機制。

如要啟用資料夾的應用程式管理功能,請按照下列步驟操作:

控制台

  1. 選取或建立要設為啟用應用程式資料夾的 Cloud de Confiance by S3NS 資料夾。如要建立新資料夾,請參閱「建立資料夾」。

  2. 在 Cloud de Confiance 控制台中,開啟「Manage resources」(管理資源) 頁面。

    前往「Manage Resources」(管理資源)

  3. 在專案和資料夾清單中,找出要設定的資料夾。

    如果資料夾顯示 已啟用應用程式管理功能的資料夾圖示,表示這項功能已啟用。

  4. 在資料夾列中,開啟 「動作」選單,然後按一下「設定」

    如果資料夾未啟用應用程式管理功能,「應用程式管理」設定會顯示「未啟用」

  5. 在「啟用應用程式管理服務」區域中,按一下「建立專案」

    「建立管理專案並啟用必要的 API」面板隨即開啟。

  6. 查看必要 API 清單。這些 API 可管理應用程式生命週期。如要進一步瞭解會產生費用的 API 計價方式,請點選 API 名稱。

  7. 如要啟用應用程式管理功能,請按一下「建立專案並啟用 API」

    系統會在資料夾中建立管理專案。

  8. 記下管理專案的名稱和 ID。您將使用這些值授予存取權。

    或者,您也可以使用下列 Google Cloud CLI 指令取得管理專案 ID:

    gcloud resource-manager folders describe FOLDER_ID
        --format="value(managementProject.split('/').slice(-1))"
    

    FOLDER_ID 替換為啟用應用程式的資料夾 ID。

    詳情請參閱「尋找專案名稱、編號和 ID」。

gcloud

  1. In the Cloud de Confiance console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Cloud de Confiance 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. 如要在特定資料夾中啟用應用程式管理功能,請使用 gcloud resource-manager capabilities update 指令並加上 --enable 旗標。

    gcloud resource-manager capabilities update folders/FOLDER_ID/capabilities/app-management \
       --enable
    

    FOLDER_ID 替換為資料夾 ID。

    這項指令會為指定資料夾啟用應用程式管理功能,並在該資料夾中自動佈建新的 Cloud de Confiance by S3NS 專案,做為管理專案。

  4. 如要在管理專案中啟用建議使用的 API,請按照操作說明在專案中啟用服務 Cloud de Confiance by S3NS

  5. Terraform

    如要使用 Terraform 啟用資料夾的應用程式管理功能,請使用google_resource_manager_capability 資源,例如:

    resource "google_folder" "folder" {
      display_name     = "my-folder"
      parent           = "organizations/123456789"
      deletion_protection = false
    }
    resource "time_sleep" "wait_60s" {
      depends_on = [google_folder.folder]
      create_duration = "60s"
    }
    resource "google_resource_manager_capability" "capability" {
      value            = true
      parent           = "${google_folder.folder.name}"
      capability_name  = "app-management"
      depends_on = [time_sleep.wait_60s]
    }
    

    這項指令會為指定資料夾啟用應用程式管理功能,並在該資料夾中自動佈建新的 Cloud de Confiance 專案,做為管理專案。如要在管理專案中啟用建議使用的 API 清單,請按照操作說明在專案中啟用 API 服務 Cloud de Confiance by S3NS

建立管理專案並啟用必要 API 後,您就可以開始使用 App Hub,將現有服務和工作負載歸入應用程式。不過,我們強烈建議將帳單帳戶連結至管理專案,並將以應用程式為中心的角色授予使用者,以解鎖其他以應用程式為中心的 Google Cloud 產品進階功能。使用者可透過這些動作管理應用程式部署程序和作業的各個層面,這可能需要不同角色

選用:將帳單帳戶連結至管理專案

如要使用以應用程式為中心的進階 Google Cloud 功能,請務必將有效的帳單帳戶連結至管理專案。舉例來說,連結帳單帳戶可協助您執行下列操作:

  • 管理超出 App Hub 資源配額的工作負載。
  • 使用 Application Design Center 建立範本及部署應用程式。

如要瞭解應用程式管理和已啟用 API 的相關潛在費用,請參閱「瞭解費用」。

如要將有效的帳單帳戶連結至管理專案,請按照下列步驟操作:

控制台

  1. 確認您要用於應用程式管理的帳單帳戶存在。如要建立帳單帳戶,請參閱「建立新的自助式 Cloud Billing 帳戶」。

  2. 在 Cloud de Confiance 控制台中,開啟「帳單」頁面。

    前往「帳單」頁面

  3. 在「我的專案」分頁中,找出管理專案。

  4. 在專案列中開啟「動作」選單,選取「變更帳單」,然後選擇 Cloud Billing 帳戶。

如要進一步瞭解如何為專案啟用帳單功能,請參閱「啟用專案的帳單功能」。

gcloud

gcloud billing projects link PROJECT_ID \
    --billing-account ACCOUNT_ID

更改下列內容:

  • PROJECT_ID:管理專案的 ID。
  • ACCOUNT_ID:帳單帳戶 ID。 帳單帳戶 ID 的格式為 0X0X0X-0X0X0X-0X0X0X

除了管理專案中自動啟用的 API 之外,您也可以啟用建議的 API,協助建立應用程式。查看建議的 API,瞭解優點和相關聯的費用。

將以應用程式為主的角色授予使用者

您可以根據使用者在應用程式生命週期中的職責,授予他們存取權。如要瞭解如何授予不同層級的應用程式存取權,請參閱「授予應用程式權限」。

下表提供一般指引和建議的 IAM 角色,方便您在專案或資料夾層級,授予以應用程式為主的各種使用者職責。這個表格列出透過 App Hub 和 App Design Center 管理應用程式,以及在 Cloud Hub 中查看資料的角色。

如要進一步瞭解這些和其他產品專屬角色,請參閱相關說明文件。

使用者責任 IAM 角色 授予角色的位置
平台管理員

執行管理專案的管理員工作。

專案 IAM 管理員 (roles/resourcemanager.projectIamAdmin) 管理專案
平台工程師

執行 App Hub 和 App Design Center 的管理員工作。

  • App Hub 管理員 (roles/apphub.admin)
  • App Design Center 管理員 (roles/designcenter.admin)
管理專案
應用程式開發人員

開發應用程式。

  • App Hub 編輯者 (roles/apphub.editor)
  • App Design Center 使用者 (roles/designcenter.user)
管理專案
SRE、運算子和 Cloud Hub 使用者

在 Cloud Hub 查看應用程式層級和專案層級的資料。

Cloud Hub 操作人員 (roles/cloudhub.operator) 已啟用應用程式管理功能的資料夾

設定可觀測性範圍

可觀測性範圍會決定 Cloud de Confiance 控制台 Cloud de Confiance 要從何處搜尋並顯示遙測資料。每個 Cloud de Confiance 專案都有單一可觀測範圍,用於識別預設的記錄和追蹤範圍。如果是指標資料,專案的指標範圍會決定Cloud de Confiance 控制台搜尋資料的位置。

如要查看或分析應用程式的所有遙測資料,請為管理專案設定可觀測性範圍和指標範圍。設定這些範圍後,Cloud Hub 和其他服務就能尋找及顯示應用程式的記錄、指標和追蹤記錄資料,即使這些資料儲存在多個專案中也沒問題。

本節將摘要說明必要設定。如需詳細操作說明,請參閱「設定應用程式監控」。下表列出必要的設定範圍。

範圍元件 設定情境 重要動作和注意事項
記錄範圍 您可以使用 匯總接收器,將機構中的所有記錄檔轉送至中央記錄檔 bucket。
  1. 建立記錄檢視,只納入儲存在 bucket 中的應用程式記錄。
  2. 在管理專案中設定預設記錄範圍,納入記錄檢視畫面。
您沒有機構層級的匯總接收器,且啟用應用程式的資料夾沒有巢狀資料夾。
  1. 設定匯總接收器,將應用程式記錄檔轉送至管理專案的 _Default 記錄檔 bucket。
  2. 確認名為 _Default 的記錄範圍是預設記錄範圍。
您不想使用匯總接收器。 在管理專案中設定預設記錄範圍,列出應用程式記錄資料的儲存位置。
指標範圍 您已設定已啟用應用程式的資料夾,其中包含儲存您要查看指標資料的所有專案。 Google Cloud Observability 會嘗試將啟用應用程式的資料夾中的專案清單,與指標範圍內的專案清單同步。

只要啟用應用程式的資料夾中專案數量不超過指標範圍配額,當您在啟用應用程式的資料夾中新增或移除專案時,Google Cloud Observability 就能持續更新指標範圍內的專案清單。
追蹤記錄範圍 您想監控多個專案的應用程式追蹤記錄資料。
  1. 在管理專案中建立自訂追蹤記錄範圍,列出儲存應用程式追蹤記錄資料的專案。
  2. 將自訂追蹤記錄範圍設為預設追蹤記錄範圍。

停用應用程式管理功能

如要停止將 Cloud de Confiance 資料夾做為啟用應用程式的資料夾,請按照下列步驟停用應用程式管理功能:

  1. 如果防刪除鎖定權限保護應用程式已啟用的資料夾中的管理專案,您必須移除該權限。詳情請參閱「透過留置權保護專案」。

  2. 選取要停用應用程式管理功能的 Cloud de Confiance by S3NS 資料夾。

  3. 在 Cloud de Confiance 控制台中,開啟「Manage resources」(管理資源) 頁面。

    前往「Manage Resources」(管理資源)

  4. 在專案和資料夾清單中,找出已啟用應用程式管理功能的資料夾。

  5. 在資料夾列中,開啟「動作」選單,然後按一下「設定」

    如果資料夾顯示已啟用應用程式管理功能的資料夾圖示 ,表示已設定應用程式管理功能。

  6. 按一下「停用」,即可停用資料夾的應用程式管理功能。

  7. 在確認對話方塊的「停用」欄位中輸入 Disable

  8. 準備好停用應用程式管理功能時,請按一下「停用」

系統會刪除資料夾中的管理專案,整個應用程式模型也會一併刪除,包括 API 和存取控制項。

後續步驟