使用 Fabric FAST 工具包進行企業設定

本頁面將介紹 Fabric FAST,以及如何使用這項工具在Cloud de Confiance中設定可供正式環境使用的機構。Fabric FAST 是高度可設定的 Terraform 工具包,可用於設定機構。這個架構採用許多擴充性、安全性和可維護性方面的最佳做法,並使用許多 Google Cloud 客戶都適用的模式。FabricFAST 是為 Google Cloud 開發,但完全支援Cloud de Confiance。

本文適用於需要透過 Cloud de Confiance設定新機構的資深管理員。本指南著重於初始資源設定,但會提供 Fabric FAST 豐富文件的連結,方便您進一步瞭解詳情。

如果您所屬的機構規模較小、正在開發概念驗證,或是對 Terraform 較不熟悉,建議採用基本設定,這項設定提供的機構相對簡單,可讓您在單一步驟中部署工作負載。詳情請參閱「哪種 Fabric FAST 設定適合我?」一文。

事前須知

閱讀本指南前,請先完成下列工作:

如果您已在 Google Cloud 上使用 Fabric FAST,可以跳到「事前準備」一節。

關於 Fabric FAST 階段

Fabric FAST 採用「階段」概念,逐步建構貴機構。舉例來說,您可以先設定基本資源,然後再新增安全性、網路等項目。每個階段都包含一或多個預先設定的 YAML 資料集,可指定要建立的資源類型和數量,讓您根據不同類型的機構和技術需求,選取最佳做法。舉例來說,您可以根據網路和安全需求,選擇不同的網路資料集。您可以「照原樣」部署這些設定 (除了提供自己的詳細資料,例如帳單帳戶),也可以編輯設定以符合特定需求。我們已驗證所提供的資料集可在 Cloud de Confiance上運作,並可用於啟動完整的登陸區。

每個階段也與一般機構的界線一致,因此您可以將各階段的擁有權委派給負責管理資源類型的團隊。舉例來說,如其名稱所示,網路階段會設定所有網路元素,通常由機構內的專屬網路團隊負責。視貴機構的規模和複雜度而定,在您按照本指南和 Fabric FAST 文件操作時,可能會在新增階段時將責任委派給不同的團隊管理員。

Fabric FAST 階段如下:

  • 機構設定:將機構層級的啟動程序與資源階層的初始設定合併。這個階段會設定高層級的 Identity and Access Management (IAM) 和組織政策,以及資源階層的初始層,將機構劃分為不同的環境和範圍。Fabric FAST 會在這個階段提供專用的classic-gcd資料集,供您搭配領域使用。
  • VPC-SC:實作 VPC Service Controls 設定,並包含資源自動探索功能。
  • 網路:管理集中式網路資源,並提供方法與應用程式和服務團隊共用這些資源。這個階段提供多種不同的設計,以 YAML 資料集的形式呈現,包括透過 VPC 對等互連、VPN、NVA 和 NCC 建立中樞輪輻。
  • 專案出廠設定:可使用 YAML 型設定檔簡化資料夾階層和專案的管理作業,協助您設定專案群組,供不同應用程式團隊或業務單位管理。
  • 安全性:管理集中式安全設定和資源,例如 Cloud KMS,並提供額外的安全性相關資源空間。這個階段通常由中央安全團隊負責。

除了機構設定外,所有階段都是選用,實際使用情況取決於實際需求。本指南著重於「機構設定」階段。如要進一步瞭解這個階段建立的資源,請參閱 Fabric FAST 說明文件

事前準備

請確認以下事項:

  • 已為貴機構設定識別資訊提供者 (IdP),並以管理員 ID 登入 Cloud de Confiance 。
  • 您已設定 Google Cloud CLI,可搭配 Cloud de Confiance使用。
  • 您在本機電腦上安裝了 gitterraform 工具:
  • 請備妥下列資訊:

    • 您選擇的主體,應獲授貴機構的管理員權限。這可以是您自己的 ID,也可以是您所屬的管理員使用者群組 (建議)。
    • 核心專案的重要聯絡人電子郵件地址
    • 您的機構資源 ID。您可以在 Cloud de Confiance 控制台中找到這項資訊,或執行下列 Google Cloud CLI 指令:

      gcloud organizations list
      

      這會列出您所屬的所有機構 (應該只有一個!) 及其對應的 ID。

授予必要權限

執行下列指令,將必要的 IAM 權限授予執行部署作業的主體:

export FAST_PRINCIPAL="PRINCIPAL_ID"

export FAST_ORG_ID="ORG_ID"

# set needed roles (billing role only needed for organization-owned account)
export FAST_ROLES="\
  roles/billing.admin \
  roles/logging.admin \
  roles/iam.organizationRoleAdmin \
  roles/orgpolicy.policyAdmin \
  roles/resourcemanager.folderAdmin \
  roles/resourcemanager.organizationAdmin \
  roles/resourcemanager.projectCreator \
  roles/resourcemanager.tagAdmin \
  roles/owner"

for role in $FAST_ROLES; do
  gcloud organizations add-iam-policy-binding $FAST_ORG_ID \
    --member $FAST_PRINCIPAL --role $role --condition None
done

更改下列內容:

  • PRINCIPAL_ID:相關主體的 ID。如要進一步瞭解如何指定員工身分聯盟中的身分和群組,請參閱「主體 ID」。
  • ORG_ID:您的機構資源 ID。

建立臨時專案

Fabric FAST Terraform 至少需要一個現有專案才能執行,因為在初始設定期間,機構政策服務不會自動在機構根層級提供。如果您是第一次在空白機構中套用 Terraform,請按照下列步驟,在新機構的根層級建立臨時專案:

  1. 在機構中建立專案,並記下專案 ID。
  2. 將專案設為 Google Cloud CLI 的目前專案:

    gcloud config set project PROJECT_ID
    
  3. 執行下列指令,在專案中啟用必要服務:

    gcloud services enable \
     bigquery.googleapis.com \
     cloudbilling.googleapis.com \
     cloudresourcemanager.googleapis.com \
     essentialcontacts.googleapis.com \
     iam.googleapis.com \
     logging.googleapis.com \
     orgpolicy.googleapis.com \
     serviceusage.googleapis.com
    

設定完成後,您可以視需要刪除這個專案。

取得 Terraform

執行下列指令,將 Fabric FAST 存放區複製到本機電腦:

git clone https://github.com/GoogleCloudPlatform/cloud-foundation-fabric.git

將檔案複製到電腦後,請將 Fabric FAST 機構設定階段的根目錄變更為工作目錄,然後開始使用。

cd cloud-foundation-fabric/fast/stages/0-org-setup

套用機構設定 Terraform

根據預設,Fabric FAST 會使用classic資料集進行這個階段。不過,由於 Cloud de Confiance 與 Google Cloud 在這個層級有顯著差異,包括帳單和端點,因此我們提供特別的 classic-gcd 資料集,為您的環境調整 classic 資料集。您必須使用這個資料集,而非預設版本。

請按照 README-GCD 中的操作說明切換至 classic-gcd,並使用「事前準備」一節中收集的資訊更新所有相關設定檔,然後套用 Terraform。您可能也需要參閱階段的 README,瞭解其他資訊。

套用其他階段

請按照 Fabric FAST 說明文件中的指示操作,套用任何其他必要階段。額外階段不需要任何特殊自訂項目,即可與 Cloud de Confiance搭配運作。

後續步驟