Quando crei o aggiorni un cluster virtuale Managed Service for Apache Spark su GKE, specifichi uno o più node pool che il cluster virtuale utilizzerà per eseguire i job (questo cluster viene definito cluster "utilizzato da" o "associato" ai node pool specificati). Se un pool di nodi specificato non esiste nel cluster GKE, Managed Service for Apache Spark su GKE lo creerà nel cluster GKE con le impostazioni che hai specificato. Se il pool di nodi esiste ed è stato creato da Managed Service for Apache Spark, verrà convalidato per verificare che le relative impostazioni corrispondano a quelle specificate.
Impostazioni del pool di nodi di Managed Service for Apache Spark su GKE
Puoi specificare le seguenti impostazioni sui node pool utilizzati dai cluster virtuali Managed Service for Apache Spark su GKE (queste impostazioni sono un sottoinsieme delle impostazioni pool di nodi GKE):
acceleratorsacceleratorCountacceleratorTypegpuPartitionSize*localSsdCountmachineTypeminCpuPlatformminNodeCountmaxNodeCountpreemptiblespot*
Note:
gpuPartitionSizepuò essere impostato inGkeNodePoolAcceleratorConfigdell'API Managed Service for Apache Spark.spotpuò essere impostato in GkeNodeConfig dell'API Managed Service for Apache Spark.
Eliminazione del node pool
Quando viene eliminato un cluster Managed Service for Apache Spark su GKE, i node pool utilizzati dal cluster non vengono eliminati. Consulta Eliminare un node pool per eliminare i node pool non più in uso dai cluster Managed Service for Apache Spark su GKE.
Località del node pool
Puoi specificare la località della zona dei node pool associati al cluster virtuale Managed Service for Apache Spark su GKE quando crei o aggiorni il cluster virtuale. Le zone pool di nodi devono trovarsi nella regione del cluster virtuale associato.
Mappatura dei ruoli ai pool di nodi
I ruoli del node pool
sono definiti per il lavoro del driver e dell'executor di Spark, con un ruolo predefinito
definito per tutti i tipi di lavoro da un pool di nodi. I cluster Managed Service for Apache Spark su GKE devono avere
almeno un pool di nodi a cui è assegnato il ruolo default.
L'assegnazione di altri ruoli è facoltativa.
Consiglio: crea node pool separati per ogni tipo di ruolo, con tipo e dimensioni dei nodi in base ai requisiti del ruolo.
Esempio di creazione di un cluster virtuale con l'interfaccia alla 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"