【发布时间】:2016-11-15 18:24:51
【问题描述】:
我在具有以下设置的 YARN 集群 (HDP 2.4) 中使用 Spark:
- 1 个主节点
- 64 GB RAM(48 GB 可用)
- 12 核(8 核可用)
- 5 个从属节点
- 每个 64 GB RAM(48 GB 可用)
- 每个12核(8核可用)
- 纱线设置
- 所有容器(一台主机)的内存:48 GB
- 最小容器大小 = 最大容器大小 = 6 GB
- 集群中的 vcores = 40(5 x 8 个工作器核心)
- 最小#vcores/container = 最大#vcores/container = 1
当我使用命令 spark-submit --num-executors 10 --executor-cores 1 --executor-memory 5g ... 运行我的 spark 应用程序时,Spark 应该为每个执行程序提供 5 GB 的 RAM(由于大约 10% 的一些开销内存,我将内存设置为 5g)。
但是当我查看 Spark UI 时,我发现每个执行器只有 3.4 GB 的内存,看截图:
谁能解释为什么分配的内存这么少?
【问题讨论】:
标签: apache-spark containers hadoop-yarn hortonworks-data-platform executor