创建或更新 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 API
GkeNodePoolAcceleratorConfig
中设置gpuPartitionSize
。 spot
可以在 Dataproc API 的 GkeNodeConfig 中设置。
删除节点池
删除 Dataproc on GKE 集群后,该集群使用的节点池 未被删除。如需删除 GKE 集群上 Dataproc 不再使用的节点池,请参阅删除节点池。
节点池位置
在创建或更新虚拟集群时,您可以指定与 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"