Dataproc on GKE 节点池

创建更新 Dataproc on GKE 虚拟集群时,您可以指定一个或多个节点池,供虚拟集群用于运行作业(此集群称为“由指定节点池使用”或“关联”的集群)。如果您的 GKE 集群中不存在指定的节点池,Dataproc on GKE 将使用您指定的设置在 GKE 集群上创建节点池。如果节点池存在并且是由 Dataproc 创建的,则系统将对其进行验证,以确认其设置与指定设置匹配。

Dataproc on GKE 节点池设置

您可以对 Dataproc on GKE 虚拟集群使用的节点池指定以下设置(这些设置是 GKE 节点池设置的一部分):

  • accelerators
  • acceleratorCount
  • acceleratorType
  • gpuPartitionSize*
  • localSsdCount
  • machineType
  • minCpuPlatform
  • minNodeCount
  • maxNodeCount
  • preemptible
  • spot*

备注:

删除节点池

删除 Dataproc on GKE 集群时,该集群使用的节点池不会被删除。请参阅删除节点池以删除 Dataproc on GKE 集群不再使用的节点池。

节点池位置

您可以在创建或更新虚拟集群时,指定与 Dataproc on GKE 虚拟集群关联的节点池的可用区位置。节点池区域必须位于关联虚拟集群的区域中。

角色到节点池的映射

我们为 Spark 驱动程序和执行程序工作定义了节点池角色,并为节点池为所有类型的工作定义了一个默认角色。Dataproc on GKE 集群必须至少有一个分配了 default 角色的节点池。您可以选择分配其他角色。

建议:为每个角色类型创建单独的节点池,节点类型和大小取决于角色要求。

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"