用戶群和用戶群專案

本指南將概略說明 SaaS 執行階段租戶,以及如何使用這些租戶來整理 SaaS 產品。

用戶群和用戶群專案

SaaS 執行階段租戶資源代表 SaaS 產品的邏輯客戶、用戶端或租戶。主要做為機構工具,協助您將特定租戶的單位分組。

如果您的 SaaS 產品提供多個租戶,建議您將每個租戶的資源佈建到個別 Google Cloud 專案中。如要將租戶資源劃分為專屬 Google Cloud 專案,您至少需要建立兩個專案:

  • 製作人專案:設定 SaaS 產品的專案。 SaaS 應用程式只需要一個製作人專案
  • 租戶專案:包含特定租戶的 SaaS Runtime 資源。建議您為每個租戶建立一個專案

為每個房客使用個別專案,可在房客專案中設定設定 (例如 IAM 政策或網路對等互連),並追蹤每個房客的費用和管理資源。

用戶群專案中的啟動用服務帳戶

執行服務帳戶需要租戶專案的權限,才能建立及管理 Terraform 設定中定義的資源。建議您為每個租戶設定個別的啟動帳戶。

如要進一步瞭解啟動服務帳戶及其可能需要的權限,請參閱啟動服務帳戶

用戶群專案中的 API

當 SaaS 執行階段 (透過 Infrastructure Manager 和啟動服務帳戶) 嘗試在租戶專案中建立資源 (例如 VM) 時,該租戶專案必須啟用必要的 API。否則佈建作業就會失敗。

您必須為 Terraform 設定在租戶專案中使用的所有資源類型啟用 API。

使用臨時單元類型自動設定房客

為每個新租戶手動建立專案、啟用 API 及設定 IAM,不僅耗時,也容易出錯。您可以建立包含 Terraform 設定的臨時單元種類,使用 SaaS Runtime 自動執行租戶設定程序:

  • 為租戶建立新專案。 Google Cloud
  • 在新專案中啟用必要的 API。
  • 為佈建的租戶建立專屬的啟動服務帳戶 (位於生產者專案或租戶專案中)。
  • 將必要的 IAM 權限授予租戶專案中的服務帳戶。
  • 設定網路、記錄或其他基礎架構。

臨時單元種類應符合下列條件:

  • tenant_project_idtenant_project_number 和建立的 actuation_sa 電子郵件定義 Terraform output 變數。
  • input 變數形式接收 tenant_id

設定應用程式單元種類,使其依附於臨時單元種類,並將輸出變數對應至應用程式單元的相應輸入變數。

設定單元種類的依附元件後,SaaS Runtime 會先驗證基礎租戶基礎架構單元是否已佈建 (建立租戶專案並設定其權限),再佈建包含應用程式的單元。

如要進一步瞭解如何實作這個模式,請參閱「管理單元之間的依附元件」和「使用變數」。

後續步驟