首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >火花动态分配不起作用

火花动态分配不起作用
EN

Stack Overflow用户
提问于 2016-07-20 16:46:08
回答 2查看 2.9K关注 0票数 0

我想为我提交的应用程序使用spark的dynamic-allocation特性,但是应用程序不缩放。

我的集群由3节点组成,每个节点都有:

  • 4芯
  • 8GB RAM
  • 火花: 1.6
  • 纱线+ MapReduce2: 2.7

我使用hdp2.4并按照以下方式设置所有所需的动态分配属性(它们是在hdp中预先配置的,但我用文档验证它们):

  • spark.dynamicAllocation.enabled=true
  • spark.dynamicAllocation.initialExecutors=5 -spark.dynamicAllocation.maxExecutors=10
  • spark.dynamicAllocation.minExecutors=1
  • spark.shuffle.service.enabled=true
  • yarn.nodemanager.aux-services=mapreduce_shuffle,spark_shuffle
  • yarn.nodemanager.aux-services.spark_shuffle.class=org.apache.spark.network.yarn.YarnShuffleService

我使用纱线资源管理器-UI来查找使用过的核心。

当我提交下面的PI示例时,只有3个包含每个1核心的容器被使用。在那里有足够的资源分配,但没有使用更多的资源。

代码语言:javascript
复制
./bin/spark-submit --class org.apache.spark.examples.SparkPi \
--master yarn-cluster \
--deploy-mode cluster \
--driver-memory 512m \
--executor-memory 512m\
lib/spark-examples*.jar 10000

当我测试提交带有指定数量的执行器的PI示例时,可以分配更多的资源。在这个例子中,它静态地分配了8个容器,每个1核。(1名司机+7名遗嘱执行人)

代码语言:javascript
复制
./bin/spark-submit --class org.apache.spark.examples.SparkPi \
--master yarn-cluster \
--num-executors 7 \
--driver-memory 512m \
--executor-memory 512m \
lib/spark-examples*.jar 100000

我做错了什么,这不会自动分配最大限度的可用资源?

谢谢你的帮助:)

EN

回答 2

Stack Overflow用户

发布于 2016-07-22 02:29:39

我认为这个博客(http://jerryshao.me/architecture/2015/08/22/spark-dynamic-allocation-investigation/)可以帮助你。您的应用程序可以请求多达10个执行者,但它不需要那么多执行者。

票数 0
EN

Stack Overflow用户

发布于 2017-11-20 08:51:16

当他想要将其运行到动态分配模式时,不应该指定-num-executor参数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38486300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档