如何设置spark配置以使用aws上的任务节点?

nhaq1z21  于 2021-05-29  发布在  Spark
关注(0)|答案(1)|浏览(407)

我不是spark配置Maven,任务节点有问题。我在aws中的集群有1个主节点、3个核心节点和5个任务节点。我只能在主节点和3个核心节点上看到负载,而任务节点什么也不做。
示例:
核心节点:4个vCore,16gib内存
任务节点:4个vCore,8gib内存
我的配置:

.set("spark.executors.cores", "5")\
    .set("spark.submit.deployMode", "cluster")\
    .set("spark.yarn.executor.memoryOverhead", "1024")\
    .set("spark.sql.shuffle.partitions","108")\
    .set("spark.default.parallelism", "108")\
    .set("spark.yarn.node-labels.enabled","true")\
    .set("spark.yarn.node-labels.am.default-node-label-expression", "CORE")\
    .set("spark.yarn.executor.nodeLabelExpression","TASK")\
    .set("spark.yarn.nodemanager.vmem-check-enabled", "false")\
    .set("spark.yarn.node-labels.configuration-type", 'distributed')\
    .set("spark.memory.fraction", "0.8")\
    .set("spark.memory.storageFraction", "0.2")\
    .set("maximizeResourceAllocation","true")\

配置中是否有解决此问题的选项?

5q4ezhmt

5q4ezhmt1#

我不认为有单独的节点级别称为 TASK .
任务是默认节点级别的一部分。如果您看到在我的集群中,有10个任务节点正在运行,但它是默认分区的一部分。所以把房子搬走 .set("spark.yarn.executor.nodeLabelExpression","TASK")
您还可以在spark配置中添加以下内容:

spark.dynamicAllocation.enabled=true

我也不认为你需要指定这2个属性。在yarn-site.xml中,它已经配置好了。 .set("spark.yarn.node-labels.enabled","true")\ .set("spark.yarn.node-labels.am.default-node-label-expression", "CORE")

相关问题