Lorsque vous créez ou mettez à jour un cluster virtuel Managed Service pour Apache Spark sur GKE, vous spécifiez un ou plusieurs pools de nœuds que le cluster virtuel utilisera pour exécuter les 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, Managed Service for Apache Spark sur GKE crée le pool de nœuds sur le cluster GKE avec les paramètres que vous spécifiez. Si le pool de nœuds existe et a été créé par Managed Service pour Apache Spark, il sera validé pour confirmer que ses paramètres correspondent à ceux spécifiés.
Paramètres du pool de nœuds Managed Service pour Apache Spark sur GKE
Vous pouvez spécifier les paramètres suivants sur les pools de nœuds utilisés par vos clusters virtuels Managed Service pour Apache Spark sur GKE (ces paramètres sont un sous-ensemble des paramètres de pool de nœuds GKE) :
acceleratorsacceleratorCountacceleratorTypegpuPartitionSize*localSsdCountmachineTypeminCpuPlatformminNodeCountmaxNodeCountpreemptiblespot*
Remarques :
gpuPartitionSizepeut être défini dans l'API Managed Service pour Apache SparkGkeNodePoolAcceleratorConfig.spotpeut être défini dans l'API Managed Service pour Apache Spark GkeNodeConfig.
Suppression du pool de nœuds
Lorsque vous supprimez un cluster Managed Service pour Apache Spark sur GKE, les pools de nœuds utilisés par le cluster ne sont pas supprimés. Consultez Supprimer un pool de nœuds pour supprimer les pools de nœuds qui ne sont plus utilisés par les clusters Managed Service pour Apache Spark 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 Managed Service pour Apache Spark 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 des pilotes et des exécuteurs Spark, avec un rôle par défaut défini pour tous les types de travail par un pool de nœuds. Les clusters Managed Service pour Apache Spark sur GKE doivent comporter au moins un pool de nœuds auquel le rôle default est attribué.
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 et une taille de nœud basés sur les exigences du rôle.
Exemple de création de cluster virtuel gcloud CLI :
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"