Créer un cluster GKE avec Pathways

Vous pouvez utiliser Cluster Toolkit pour créer des clusters Google Kubernetes Engine (GKE) préconfigurés pour les charges de travail basées sur Pathways. Vous pouvez également utiliser gcloud pour créer manuellement des clusters GKE pour les charges de travail basées sur Pathways.

Avant de commencer

Vérifiez que vous disposez bien des éléments suivants :

Configurer votre environnement local

Connectez-vous avec vos identifiants Google Cloud .

gcloud auth application-default login

Définissez les variables d'environnement suivantes avec des valeurs adaptées à votre charge de travail.

Créer un cluster GKE

Dans l'exemple suivant, vous allez créer un cluster avec des pools de nœuds TPU v6e 2x4. Vous pouvez créer un cluster à l'aide de Cluster Toolkit ou de la CLI gcloud.

Cluster Toolkit

  1. Configurer Cluster Toolkit
  2. Déployez un cluster GKE TPU en suivant les instructions de la section Déployer un cluster GKE TPU v6e (pour une présentation de toutes les options de déploiement de TPU, consultez Présentation des déploiements Cloud TPU).

    Lorsque vous configurez votre plan de déploiement, procédez comme suit :

    • Assurez-vous que enable_pathways_for_tpus est défini sur true (activé par défaut dans les plans TPU de Cluster Toolkit). Cela provisionne automatiquement le pool de nœuds de processeur cpu-np requis (n4-standard-64) et les configurations Kueue pour le contrôleur Pathways.
    • Définissez num_slices sur le nombre de pools de nœuds de tranche TPU requis pour votre charge de travail.
    • Définissez tpu_topology sur la topologie de tranche de TPU que vous avez sélectionnée (par exemple, 2x4 ou 4x4).
    • Si vous utilisez une capacité réservée, définissez reservation sur le nom de votre réservation de TPU.

    Une fois le cluster créé, vous pouvez envoyer des charges de travail Pathways à l'aide de la commande gcluster job submit avec l'option --pathways.

gcloud

  1. Définir des variables d'environnement

    CLUSTER=GKE_CLUSTER_NAME
    PROJECT=PROJECT_ID
    ZONE=ZONE
    REGION=REGION
    CLUSTER_VERSION=GKE_CLUSTER_VERSION
    PW_CPU_MACHINE_TYPE="n2-standard-64"
    NETWORK=NETWORK
    SUBNETWORK=SUB_NETWORK
    CLUSTER_NODEPOOL_COUNT=3
    TPU_MACHINE_TYPE="ct6e-standard-4t"
    WORKERS_PER_SLICE=2
    TOPOLOGY="2x4"
    NUM_CPU_NODES=1

    Remplacez les éléments suivants :

    • CLUSTER : nom du cluster GKE
    • PROJECT_ID : nom de votre projet Google Cloud
    • ZONE : zone dans laquelle vous créez des ressources
    • REGION : région dans laquelle vous créez des ressources
    • CLUSTER_VERSION : [Facultatif] Version du cluster GKE. Utilisez la version 1.32.2-gke.1475000 ou une version ultérieure.
    • NETWORK : [Facultatif] Définissez un nom de cloud privé virtuel. Celui-ci doit être créé avant de créer votre cluster.
    • SUBNETWORK : [Facultatif] Définissez un nom de sous-réseau. Celui-ci doit être créé avant de créer votre cluster.

Les étapes suivantes expliquent comment créer un cluster GKE et le configurer pour exécuter des charges de travail Pathways.

  1. Créez un cluster GKE :

    gcloud beta container clusters create ${CLUSTER} \
    --project=${PROJECT} \
    --zone=${ZONE} \
    --cluster-version=${CLUSTER_VERSION} \
    --scopes=storage-full,gke-default,cloud-platform \
    --machine-type ${PW_CPU_MACHINE_TYPE} \
    --network=${NETWORK} \
    --subnetwork=${SUBNETWORK}
    
  2. Créez des pools de nœuds TPU :

    for i in $(seq 1 ${CLUSTER_NODEPOOL_COUNT}); do
    gcloud container node-pools create "tpu-np-${i}" \
    --project=${PROJECT} \
    --zone=${ZONE} \
    --cluster=${CLUSTER} \
    --machine-type=${TPU_MACHINE_TYPE} \
    --num-nodes=${WORKERS_PER_SLICE} \
    --placement-type=COMPACT \
    --tpu-topology=${TOPOLOGY} \
    --scopes=storage-full,gke-default,cloud-platform \
    --workload-metadata=GCE_METADATA
    done
    
  3. Créez un pool de nœuds CPU :

    gcloud container node-pools create "cpu-pathways-np" \
    --project ${PROJECT} \
    --zone ${ZONE} \
    --cluster ${CLUSTER} \
    --machine-type ${PW_CPU_MACHINE_TYPE} \
    --num-nodes ${NUM_CPU_NODES} \
    --scopes=storage-full,gke-default,cloud-platform \
    --workload-metadata=GCE_METADATA
    
  4. Installer l'API JobSet

    Obtenez les identifiants du cluster et ajoutez-les à votre contexte kubectl local.

    gcloud container clusters get-credentials ${CLUSTER} \
        [--zone=${ZONE} | --region=${REGION}] \
        --project=${PROJECT} \
        && kubectl config set-context --current --namespace=default
    

    Pour utiliser l'architecture Pathways sur votre cluster GKE, vous devez installer l'API JobSet.

    kubectl apply --server-side -f https://github.com/kubernetes-sigs/jobset/releases/download/v0.8.0/manifests.yaml
    

Étapes suivantes