在创建或更新 Managed Service for Apache Spark on GKE 虚拟集群时,您需要指定一个或多个节点池,以便虚拟集群用于运行作业(此集群称为由指定节点池“使用”的节点或与指定节点池“关联”的集群)。如果指定的节点池 在 GKE 集群上不存在,Managed Service for Apache Spark on GKE 将使用您指定的设置 在 GKE 集群上创建节点池。如果该节点池存在且由 Managed Service for Apache Spark 创建,系统会对其进行验证,以确认其设置与指定的设置匹配。
Managed Service for Apache Spark on GKE 节点池设置
您可以在 Managed Service for Apache Spark on GKE 虚拟集群使用的节点池上指定以下 设置 (这些 设置是部分 GKE 节点池设置):
acceleratorsacceleratorCountacceleratorTypegpuPartitionSize*localSsdCountmachineTypeminCpuPlatformminNodeCountmaxNodeCountpreemptiblespot*
注意:
- 可以在 Managed Service for Apache Spark API
GkeNodePoolAcceleratorConfig中设置gpuPartitionSize。 - 可以在 Managed Service for Apache Spark API GkeNodeConfig 中设置
spot。
删除节点池
删除 Managed Service for Apache Spark on GKE 集群时,集群使用的节点池 不会被删除。如需删除 Managed Service for Apache Spark on GKE 集群不再使用的节点池,请参阅删除节点池 。
节点池位置
在创建或更新虚拟集群时,您可以指定与 Managed Service for Apache Spark on GKE 虚拟集群关联的节点池的 可用区 位置。节点池可用区必须位于关联的虚拟集群的区域中。
角色到节点池的映射
节点池 角色
针对 Spark 驱动程序和执行器工作而定义,节点池针对所有类型的工作定义了默认角色
。Managed Service for Apache Spark 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"