本文說明如何建立 Google Distributed Cloud (GDC) 實體隔離專案,以便在機構內將資源分組。專案可為資源提供生命週期和政策界線,讓多個使用者群組分別管理 GDC 資源。
本文適用於平台管理員群組中的 IT 管理員、安全工程師和網路管理員等對象,這些人員負責管理機構內的資源。詳情請參閱 GDC 氣隙環境適用的目標對象說明文件。
事前準備
如要執行本文中的工作,請完成下列步驟:
如要取得建立專案所需的權限,請要求機構 IAM 管理員授予您專案建立者角色 (
project-creator)。如要使用 gdcloud CLI,請確認已安裝該工具。詳情請參閱「安裝 gdcloud CLI」。
如要使用 Terraform,請確認您已完成設定。詳情請參閱「設定 Terraform」。
建立新專案
您可以建立專案,以邏輯方式將服務資源分組。舉例來說,您可以建立不同的專案,分別存放開發、測試和正式環境的資源。
如要取得建立專案所需的權限,請要求機構 IAM 管理員授予您專案建立者角色。如要進一步瞭解如何授予權限,請參閱「將角色繫結指派給服務身分」一節。
主控台
如要使用 GDC 控制台建立新專案,請完成下列步驟:
- 按一下導覽選單中的「專案」。
- 按一下 [Add project] (新增專案)。
- 在「專案名稱」欄位中輸入專案名稱。
- 指定要與專案建立關聯的帳單帳戶 ID。如要追蹤專案資源費用,專案必須連結至帳單帳戶。詳情請參閱「建立及連結帳單帳戶」。
- 按一下「繼續」。
- 選用:設定專案的網路功能。清除「Enable data exfiltration protection」(啟用資料外洩防護) 核取方塊,即可停用所有傳送至貴機構其他專案的出站流量。
- 按一下「繼續」。
- 在「Review」(查看) 部分,查看摘要並點選「Create」(建立)。
- 如要確認新專案是否可用,控制台會顯示訊息:
Project PROJECT_NAME successfully created。
gdcloud
如要使用 gdcloud CLI 建立新專案,請完成下列步驟:
如要建立專案,請執行:
gdcloud projects create PROJECT_ID將
PROJECT_ID替換為新專案的專屬 ID。確認新專案是否可用:
gdcloud projects list輸出結果會與下列內容相似:
METADATA.NAME my-project將新專案連結至帳單帳戶。如要追蹤專案資源費用,您必須將相關聯的帳單帳戶連結至專案。
API
如要直接使用 API 建立新專案,請完成下列步驟:
為全域管理 API 伺服器 kubeconfig 檔案設定環境變數:
export KUBECONFIG=GLOBAL_API_SERVER_KUBECONFIG如果沒有全域管理 API 伺服器 kubeconfig 檔案,請產生一個。
建立及套用
Project自訂資源:kubectl --kubeconfig=${KUBECONFIG} apply -f - <<EOF apiVersion: resourcemanager.global.gdc.goog/v1 kind: Project metadata: namespace: platform name: PROJECT_ID EOF將
PROJECT_ID替換為新專案的專屬 ID。確認新專案是否可用:
kubectl --kubeconfig=${KUBECONFIG} get projects -n platform輸出結果會與下列內容相似:
NAME READY my-project將新專案連結至帳單帳戶。如要追蹤專案資源費用,您必須將相關聯的帳單帳戶連結至專案。
Terraform
如要使用 Terraform 建立新專案,請完成下列步驟:
請確認您已設定 Terraform,並具備適當權限。 詳情請參閱「設定 Terraform」頁面。
在 Terraform 設定檔中,插入下列程式碼片段:
provider "kubernetes" { config_path = "GLOBAL_API_SERVER_KUBECONFIG" }將
GLOBAL_API_SERVER_KUBECONFIG替換為全域管理 API 伺服器的 kubeconfig 檔案路徑。如果沒有這個 kubeconfig 檔案,請產生一個。在 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。使用 Terraform 套用新專案:
terraform apply將新專案連結至帳單帳戶。如要追蹤專案資源費用,您必須將相關聯的帳單帳戶連結至專案。