Ao criar ou atualizar um cluster virtual do Serviço Gerenciado para Apache Spark no GKE, especifique um ou mais pools de nós que o cluster virtual usará para executar jobs. Esse cluster é chamado de cluster "usado por" ou "associado" aos pools de nós especificados. Se um pool de nós especificado não existir no cluster do GKE, o Serviço Gerenciado para Apache Spark no GKE vai criar o pool de nós no cluster do GKE com as configurações especificadas. Se o pool de nós existir e tiver sido criado pelo Serviço Gerenciado para Apache Spark, ele será validado para confirmar se as configurações correspondem às especificadas.
Configurações do pool de nós do Serviço Gerenciado para Apache Spark no GKE
É possível especificar as seguintes configurações nos pools de nós usados pelos clusters virtuais do Serviço Gerenciado para Apache Spark no GKE. Essas configurações são um subconjunto das configurações do pool de nós do GKE:
acceleratorsacceleratorCountacceleratorTypegpuPartitionSize*localSsdCountmachineTypeminCpuPlatformminNodeCountmaxNodeCountpreemptiblespot*
Observações:
gpuPartitionSizepode ser definido na API do Serviço Gerenciado para Apache SparkGkeNodePoolAcceleratorConfig.spotpode ser definido na API do Serviço Gerenciado para Apache Spark GkeNodeConfig.
Exclusão do pool de nós
Quando um cluster do Serviço Gerenciado para Apache Spark no GKE é excluído, os pools de nós usados pelo cluster não são excluídos. Consulte Excluir um pool de nós para excluir pools de nós que não estão mais em uso pelo Serviço Gerenciado para Apache Spark em clusters do GKE.
Local do pool de nós
É possível especificar o local da zona dos pools de nós associados ao cluster virtual do Serviço Gerenciado para Apache Spark no GKE ao criar ou atualizar o cluster virtual. As zonas do pool de nós precisam estar localizadas na região do cluster virtual associado.
Mapeamento de papel para pool de nós
Os papéis do pool de nós são definidos para o trabalho do driver e do executor do Spark, com um papel padrão
definido para todos os tipos de trabalho por um pool de nós. Os clusters do Serviço Gerenciado para Apache Spark no GKE precisam ter
pelo menos um pool de nós atribuído ao papel default.
A atribuição de outros papéis é opcional.
Recomendação:crie pools de nós separados para cada tipo de papel, com tipo e tamanho de nó com base nos requisitos de papel.
Exemplo de criação de cluster virtual da 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"