Lorsque vous créez ou mettez à jour un cluster virtuel Dataproc sur GKE, vous spécifiez un ou plusieurs pools de nœuds que le cluster virtuel utilisera pour exécuter des jobs (ce cluster est appelé cluster "utilisé par" ou "associé" aux pools de nœuds spécifiés). Si un pool de nœuds spécifié n'existe pas sur votre cluster GKE, Dataproc sur GKE le crée sur le cluster GKE avec les paramètres que vous spécifiez. Si le pool de nœuds existe et a été créé par Dataproc, il est validé pour confirmer que ses paramètres correspondent aux paramètres spécifiés.
Paramètres du pool de nœuds Dataproc sur GKE
Vous pouvez spécifier les paramètres suivants sur les pools de nœuds utilisés par vos clusters virtuels Dataproc sur GKE (ces paramètres sont un sous-ensemble des paramètres du pool de nœuds GKE) :
acceleratorsacceleratorCountacceleratorTypegpuPartitionSize*localSsdCountmachineTypeminCpuPlatformminNodeCountmaxNodeCountpreemptiblespot*
Remarques :
gpuPartitionSizepeut être défini dans l'API DataprocGkeNodePoolAcceleratorConfig.spotpeut être défini dans l'API Dataproc GkeNodeConfig.
Suppression du pool de nœuds
Lorsqu'un cluster Dataproc sur GKE est supprimé, les pools de nœuds utilisés par le cluster ne sont pas supprimés. Consultez la page Supprimer un pool de nœuds pour supprimer les pools de nœuds qui ne sont plus utilisés par les clusters Dataproc sur GKE.
Emplacement du pool de nœuds
Vous pouvez spécifier l' emplacement de la zone des pools de nœuds associés à votre cluster virtuel Dataproc sur GKE lorsque vous créez ou mettez à jour le cluster virtuel. Les zones du pool de nœuds doivent se trouver dans la région du cluster virtuel associé.
Mappage des rôles aux pools de nœuds
Les rôles de pool de nœuds sont définis pour le travail du pilote et de l'exécuteur Spark, avec un rôle par défaut
défini pour tous les types de travail par un pool de nœuds. Les clusters Dataproc sur GKE doivent comporter
au moins un pool de nœuds auquel est attribué le rôle default.
L'attribution d'autres rôles est facultative.
Recommandation : Créez des pools de nœuds distincts pour chaque type de rôle, avec un type de nœud et une taille basés sur les exigences du rôle.
Exemple de création de cluster virtuel avec la CLI gcloud :
gcloud dataproc clusters gke create "${DP_CLUSTER}" \
--region=${REGION} \
--gke-cluster=${GKE_CLUSTER} \
--spark-engine-version=latest \
--staging-bucket=${BUCKET} \
--pools="name=${DP_POOLNAME},roles=default \
--setup-workload-identity
--pools="name=${DP_CTRL_POOLNAME},roles=default,machineType=e2-standard-4" \
--pools="name=${DP_DRIVER_POOLNAME},min=1,max=3,roles=spark-driver,machineType=n2-standard-4" \
--pools="name=${DP_EXEC_POOLNAME},min=1,max=10,roles=spark-executor,machineType=n2-standard-8"