Crea un cluster per eseguire carichi di lavoro containerizzati

Crea un cluster utente per consentire il deployment dei carichi di lavoro dei container.

Prima di iniziare

Per ottenere le autorizzazioni necessarie per creare un cluster utente, chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Amministratore cluster utente (ruolo user-cluster-admin).

Creazione di un cluster utente

Per ottenere le autorizzazioni necessarie per creare un cluster utente, chiedi all'amministratore IAM di concederti il ruolo Amministratore cluster utente (ruolo user-cluster-admin).

Per creare un cluster di utenti:

Console

  1. Nel menu di navigazione, seleziona Cluster.

  2. Fai clic su Crea cluster.

  3. Nel campo Nome, specifica un nome per il cluster utente.

  4. Seleziona la versione del cluster GDC. Ogni versione corrisponde a una versione di Kubernetes distinta.

  5. Fai clic su Avanti.

  6. Configura le impostazioni di rete per il cluster. Non puoi modificare queste impostazioni di rete dopo aver creato il cluster. Il protocollo internet predefinito e unico supportato per i cluster utente è Internet Protocol versione 4 (IPv4).

    1. Se vuoi creare nodi del bilanciatore del carico dedicati, inserisci il numero di nodi da creare. Per impostazione predefinita, ricevi zero nodi e il traffico del bilanciatore del carico viene eseguito tramite i nodi di controllo.

    2. Seleziona il CIDR del servizio (Classless Inter-Domain Routing) da utilizzare. Ai tuoi servizi di cui è stato eseguito il deployment, come i bilanciatori del carico, vengono allocati indirizzi IP da questo intervallo.

    3. Seleziona il CIDR dei pod da utilizzare. Il cluster alloca indirizzi IP da questo intervallo ai tuoi pod e alle tue VM.

    4. Fai clic su Avanti.

  7. Rivedi i dettagli del pool di nodi predefinito generato automaticamente per il cluster utente. Fai clic su Modifica per modificare il pool di nodi predefinito.

  8. Per creare altri node pool, seleziona Aggiungi node pool. Quando modifichi il pool di nodil predefinito o aggiungi un nuovopool di nodil, lo personalizzi con le seguenti opzioni:

    1. Assegna un nome al pool di nodi. Non puoi modificare il nome dopo aver creato il pool di nodi.
    2. Specifica il numero di nodi worker da creare nel pool di nodi.
    3. Seleziona la classe di macchine più adatta ai requisiti del tuo workload. Visualizza l'elenco delle seguenti impostazioni:

      • Tipo di macchina
      • CPU
      • Memoria
    4. Fai clic su Salva.

  9. Fai clic su Crea per creare il cluster utente.

API

Per creare un nuovo cluster utente utilizzando direttamente l'API, applica una risorsa personalizzata all'istanza GDC:

  1. Crea una risorsa personalizzata Cluster e salvala come file YAML, ad esempio 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
    

    Sostituisci quanto segue:

    • CLUSTER_NAME: il nome del cluster. Il nome del cluster non deve terminare con -system. Il suffisso -system è riservato ai cluster creati da GDC.
    • POD_CIDR: La dimensione degli intervalli di rete da cui vengono allocati gli indirizzi IP virtuali dei pod. Se non viene configurato, viene utilizzato un valore predefinito 21.
    • SERVICE_CIDR: la dimensione degli intervalli di rete da cui vengono allocati gli indirizzi IP virtuali del servizio. Se non viene configurato, viene utilizzato un valore predefinito 23.
    • KUBERNETES_VERSION: la versione di Kubernetes del cluster, ad esempio 1.26.5-gke.2100. Per elencare le versioni di Kubernetes disponibili da configurare, consulta Elenca le versioni di Kubernetes disponibili per un cluster.
    • LOAD_BALANCER_POOL_SIZE: la dimensione dei pool di indirizzi IP non sovrapposti utilizzati dai servizi di bilanciamento del carico. Se non viene impostato, viene utilizzato un valore predefinito 20.
    • MACHINE_TYPE: il tipo di macchina per i nodi worker delpool di nodil. Visualizza i tipi di macchina disponibili per ciò che è disponibile per la configurazione.
    • NODE_POOL_NAME: il nome del pool di nodi.
    • NUMBER_OF_WORKER_NODES: il numero di nodi di lavoro di cui eseguire il provisioning nelpool di nodil.
    • TAINTS: le incompatibilità da applicare ai nodi di questo pool di nodi. Questo è un campo facoltativo.
    • LABELS: le etichette da applicare ai nodi di questopool di nodil. Contiene un elenco di coppie chiave-valore. Questo è un campo facoltativo.
  2. Applica la risorsa personalizzata all'istanza GDC:

    kubectl apply -f cluster.yaml --kubeconfig ADMIN_CLUSTER_KUBECONFIG
    

    Sostituisci ADMIN_CLUSTER_KUBECONFIG con il percorso del file kubeconfig del cluster di amministrazione dell'organizzazione.

Elenca le versioni di Kubernetes disponibili per un cluster

Puoi elencare le versioni di Kubernetes disponibili nella tua istanza GDC utilizzando la CLI kubectl:

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

Sostituisci ADMIN_CLUSTER_KUBECONFIG con il percorso del file kubeconfig del cluster di amministrazione.

L'output è simile al seguente:

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

Supportare le risorse GPU in un cluster utente

GDC fornisce il supporto dell'unità di elaborazione grafica (GPU) NVIDIA per i cluster utente ed esegue i tuoi dispositivi GPU come workload utente. Il supporto GPU è abilitato per impostazione predefinita per i cluster per cui sono state sottoposte a provisioning macchine GPU. Prima di utilizzare Deep Learning Containers, assicurati che il cluster di utenti supporti i dispositivi GPU. Ad esempio, se intendi eseguire Deep Learning Containers, assicurati di creare un cluster utente con almeno un nodo GPU.

I cluster di utenti possono essere creati utilizzando direttamente la console o l'API GDC. Assicurati di eseguire il provisioning delle macchine GPU per il cluster utente per supportare i carichi di lavoro GPU sui relativi container associati. Per saperne di più, vedi Creare un cluster di utenti.

Schede GPU NVIDIA supportate

I cluster GDC supportano la GPU NVIDIA A100 PCIe da 80 GB. Per attivare questo supporto, esegui il provisioning del tipo di macchina a2-ultragpu-1g-gdc in un cluster utente.