建立叢集來執行容器工作負載

建立使用者叢集,以便部署容器工作負載。

事前準備

如要取得建立使用者叢集所需的權限,請要求機構 IAM 管理員授予您使用者叢集管理員角色 (user-cluster-admin 角色)。

建立使用者叢集

如要取得建立使用者叢集所需的權限,請要求 IAM 管理員授予使用者叢集管理員角色 (user-cluster-admin 角色)。

如要建立使用者叢集,請完成下列步驟:

主控台

  1. 在導覽選單中,選取「叢集」

  2. 按一下 [Create cluster] (建立叢集)

  3. 在「Name」(名稱) 欄位中,指定使用者叢集的名稱。

  4. 選取 GDC 叢集版本。每個版本都會對應到不同的 Kubernetes 版本。

  5. 點選「下一步」

  6. 設定叢集的網路設定。叢集建立後,您就無法變更這些網路設定。使用者叢集的預設網際網路通訊協定為網際網路通訊協定第 4 版 (IPv4),且僅支援此通訊協定。

    1. 如要建立專屬的負載平衡器節點,請輸入要建立的節點數。根據預設,您會收到零個節點,而負載平衡器流量會透過控制節點執行。

    2. 選取要使用的「服務 CIDR」(無類別跨網域路由)。系統會從這個範圍為已部署的服務 (例如負載平衡器) 分配 IP 位址。

    3. 選取要使用的 Pod CIDR。叢集會從這個範圍將 IP 位址分配給 Pod 和 VM。

    4. 點選「下一步」

  7. 查看系統自動為使用者叢集產生的預設節點集區詳細資料。按一下「編輯」,修改預設節點集區。

  8. 如要建立其他節點集區,請選取「新增節點集區」。編輯預設節點集區或新增節點集區時,您可以透過下列選項自訂節點集區:

    1. 指派節點集區的名稱。節點集區建立後,您就無法修改名稱。
    2. 指定要在節點集區中建立的工作站節點數量。
    3. 選取最符合工作負載需求的機器類別。 查看下列設定清單:

      • 機型
      • CPU
      • 記憶體
    4. 按一下 [儲存]

  9. 按一下「建立」,建立使用者叢集。

API

如要直接使用 API 建立新的使用者叢集,請將自訂資源套用至 GDC 執行個體:

  1. 建立 Cluster 自訂資源,並儲存為 YAML 檔案,例如 cluster.yaml

    apiVersion: cluster.gdc.goog/v1
    kind: Cluster
    metadata:
      name: CLUSTER_NAME
      namespace: platform
    spec:
      clusterNetwork:
        podCIDRSize: POD_CIDR
        serviceCIDRSize: SERVICE_CIDR
      initialVersion:
        kubernetesVersion: KUBERNETES_VERSION
      loadBalancer:
        ingressServiceIPSize: LOAD_BALANCER_POOL_SIZE
      nodePools:
      - machineTypeName: MACHINE_TYPE
        name: NODE_POOL_NAME
        nodeCount: NUMBER_OF_WORKER_NODES
        taints: TAINTS
        labels: LABELS
      releaseChannel:
        channel: UNSPECIFIED
    

    更改下列內容:

    • CLUSTER_NAME:叢集名稱。叢集名稱結尾不得為 -system-system 後置字串保留給 GDC 建立的叢集。
    • POD_CIDR:網路範圍的大小,Pod 虛擬 IP 位址會從這個範圍分配。如未設定,系統會使用預設值 21
    • SERVICE_CIDR:網路範圍的大小,服務虛擬 IP 位址會從這個範圍分配。如未設定,系統會使用預設值 23
    • KUBERNETES_VERSION:叢集的 Kubernetes 版本,例如 1.26.5-gke.2100。如要列出可供設定的 Kubernetes 版本,請參閱「列出叢集可用的 Kubernetes 版本」。
    • LOAD_BALANCER_POOL_SIZE:負載平衡器服務使用的不重疊 IP 位址集區大小。如未設定,系統會使用預設值 20
    • MACHINE_TYPE:節點集區工作站節點的機型。如要查看可設定的項目,請參閱可用的機器類型
    • NODE_POOL_NAME:節點集區的名稱。
    • NUMBER_OF_WORKER_NODES:要在節點集區中佈建的工作站節點數量。
    • TAINTS:要套用至這個節點集區節點的 taint。此為選填欄位。
    • LABELS:要套用至這個節點集區節點的標籤。其中包含鍵/值組合清單。這是選填欄位。
  2. 將自訂資源套用至 GDC 執行個體:

    kubectl apply -f cluster.yaml --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    

    ADMIN_CLUSTER_KUBECONFIG 替換為機構管理員叢集的 kubeconfig 檔案路徑。

列出叢集可用的 Kubernetes 版本

您可以使用 kubectl CLI,列出 GDC 執行個體中可用的 Kubernetes 版本:

kubectl get userclustermetadata.upgrade.private.gdc.goog \
    -o=custom-columns=K8S-VERSION:.spec.kubernetesVersion \
    --kubeconfig ADMIN_CLUSTER_KUBECONFIG

ADMIN_CLUSTER_KUBECONFIG 替換為管理員叢集的 kubeconfig 檔案路徑。

輸出看起來類似以下內容:

K8S-VERSION
1.25.10-gke.2100
1.26.5-gke.2100
1.27.4-gke.500

在使用者叢集中支援 GPU 資源

GDC 為使用者叢集提供 NVIDIA 圖形處理器 (GPU) 支援,並以使用者工作負載的形式執行 GPU 裝置。如果叢集已佈建 GPU 機器,系統預設會啟用 GPU 支援。使用 Deep Learning Containers 前,請先確認使用者叢集支援 GPU 裝置。舉例來說,如果您打算執行 Deep Learning Containers,請務必建立至少有一個 GPU 節點的使用者叢集。

您可以直接使用 GDC 控制台或 API 建立使用者叢集。 請為使用者叢集佈建 GPU 機器,以便支援相關聯容器的 GPU 工作負載。詳情請參閱「建立使用者叢集」。

支援的 NVIDIA GPU 卡

GDC 叢集支援 A100 PCIe 80 GB NVIDIA GPU。如要啟用這項支援,請在使用者叢集中佈建 a2-ultragpu-1g-gdc 機器類型。