建立專案

本頁說明如何建立 Google Distributed Cloud (GDC) 零氣隙專案,在機構內將資源分組。專案可為資源提供生命週期和政策界線,讓多個使用者群組分別管理 GDC 資源。

本頁面適用於平台管理員群組中的 IT 管理員、安全工程師和網路管理員等對象,他們負責管理機構內的資源。詳情請參閱 GDC Air-Gapped 適用的目標對象說明文件

事前準備

如要取得建立專案所需的權限,請要求機構 IAM 管理員授予您專案建立者角色 (project-creator)。

建立專案前,請先詳閱 Google Distributed Cloud (GDC) Air-gapped 用於識別專案的資訊:

  • 專案名稱:專案的可理解文字名稱。

    專案名稱不會用於任何 GDC API。您可以在建立專案期間或之後隨時編輯專案名稱。專案名稱不必是專屬名稱。

    專案名稱必須符合下列規定:

    • 長度介於 4 到 30 個半形字元。
    • 包含英文字母、數字、單引號、連字號、空格或驚嘆號。
  • 專案 ID:專案的全域專屬 ID。

    專案 ID 是用來區別專案與 GDC 中所有其他專案的專屬字串。您只能在建立專案時修改專案 ID。

    專案 ID 必須符合下列規定:

    • 長度介於 6 到 30 個半形字元。
    • 包含小寫英文字母、數字和連字號。
    • 以英文字母開頭。
    • 開頭不得為 g- 前置字元,例如 g-project
    • 結尾不得為連字號。
    • 結尾不得為 -cluster-system 字串。-system 後置字元保留給 GDC 建立的專案。
    • 不得正在使用或曾使用過,包括已刪除的專案。

請勿在專案名稱、專案 ID 或其他資源名稱中加入機密資訊。許多其他 GDC 資源的名稱都會使用專案 ID,任何對專案或相關資源的參照都會公開專案 ID 和資源名稱。

建立新專案

您可以建立專案,以提供服務資源的邏輯分組。舉例來說,您可以建立不同的專案,分別存放開發、測試和正式環境的資源。

如要取得建立專案所需的權限,請要求機構 IAM 管理員授予您專案建立者角色。如要進一步瞭解如何授予權限,請參閱「將角色繫結指派給服務身分」一節。

主控台

如要使用 GDC 控制台建立新專案,請完成下列步驟:

  1. 按一下導覽選單中的「專案」
  2. 按一下 [Add project] (新增專案)
  3. 在「專案名稱」欄位中輸入專案名稱。
  4. 按一下「繼續」
  5. 選用:設定專案的網路功能。清除「Enable data exfiltration protection」(啟用資料外洩防護) 核取方塊,即可停用所有傳送至貴機構內其他專案的出站流量。
  6. 按一下「繼續」
  7. 在「Review」(查看) 部分,查看摘要並點選「Create」(建立)
  8. 如要確認新專案是否可用,控制台會顯示訊息:Project PROJECT_NAME successfully created
  9. 將新專案連結至帳單帳戶。如要追蹤專案資源費用,您必須將相關聯的帳單帳戶連結至專案。

gdcloud

如要使用 gdcloud CLI 建立新專案,請完成下列步驟:

  1. 確認已安裝 gdcloud CLI。詳情請參閱 gcloud CLI 總覽頁面。

  2. 如要建立專案,請執行下列指令:

    gdcloud projects create PROJECT_ID
    

    PROJECT_ID 替換為新專案的專屬 ID。

  3. 如要確認新專案是否可用,請執行下列指令:

    gdcloud projects list
    
  4. 將新專案連結至帳單帳戶。如要追蹤專案資源費用,您必須將相關聯的帳單帳戶連結至專案。

API

如要直接使用 API 建立新專案,請完成下列步驟:

  1. 為全域管理 API 伺服器 kubeconfig 檔案設定環境變數:

    export KUBECONFIG=GLOBAL_API_SERVER_KUBECONFIG
    

    如果沒有全域管理 API 伺服器 kubeconfig 檔案,請產生一個

  2. 建立及套用 Project 自訂資源:

    kubectl apply -f --kubeconfig=${KUBECONFIG} - <<EOF
    apiVersion: resourcemanager.global.gdc.goog/v1
    kind: Project
    metadata:
      namespace: platform
      name: PROJECT_ID
    EOF
    

    PROJECT_ID 替換為新專案的專屬 ID。

  3. 確認新專案是否可用:

    kubectl --kubeconfig=${KUBECONFIG} get namespaces
    
  4. 將新專案連結至帳單帳戶。如要追蹤專案資源費用,您必須將相關聯的帳單帳戶連結至專案。

Terraform

如要使用 Terraform 建立新專案,請完成下列步驟:

  1. 請確認您已設定 Terraform,並具備適當的權限。 詳情請參閱「設定 Terraform」頁面。

  2. 在 Terraform 設定檔中,插入下列程式碼片段:

    provider "kubernetes" {
      config_path = "GLOBAL_API_SERVER_KUBECONFIG"
    }
    

    GLOBAL_API_SERVER_KUBECONFIG 替換為全域管理 API 伺服器的 kubeconfig 檔案路徑。如果沒有這個 kubeconfig 檔案,請產生一個

  3. 在 Terraform 設定檔 (例如 main.tf) 中,插入下列程式碼片段:

    resource "kubernetes_manifest" "project-create" {
      manifest = {
        "apiVersion" = "resourcemanager.global.gdc.goog/v1"
        "kind" = "Project"
        "metadata" = {
          "name" = "PROJECT_ID"
          "namespace" = "platform"
        }
      }
    }
    

    PROJECT_ID 替換為新專案的專屬 ID。

    一文的說明操作。
  4. 使用 Terraform 套用新專案:

    terraform apply
    
  5. 將新專案連結至帳單帳戶。如要追蹤專案資源費用,您必須將相關聯的帳單帳戶連結至專案。