发布
社区首页 >问答首页 >spark.executor.cores在使用livy时无法生效

spark.executor.cores在使用livy时无法生效
EN

Stack Overflow用户
提问于 2017-03-12 21:11:23
回答 2查看 2.9K关注 0票数 1

我正在使用livy-server-0.2来运行spark作业,但是,我不能更改spark.executor.cores的默认设置,它不能在其他设置可以的情况下生效。

它总是使用一个核心来启动一个执行器。

代码语言:javascript
代码运行次数:0
复制
yarn     11893 11889  6 21:08 ?        00:00:01
/opt/jdk1.7.0_80/bin/java -server -XX:OnOutOfMemoryError=kill 
%p -Xms1024m -Xmx1024m -Djava.io.tmpdir=/var/lib/hadoop-yarn/cache/yarn/nm-local-dir/usercache/root/appcache/application_1487813931557_0603/container_1487813931557_0603_01_000026/tmp 
-Dspark.driver.port=51553 
-Dspark.yarn.app.container.log.dir=/var/log/hadoop-yarn/containers/application_1487813931557_0603/container_1487813931557_0603_01_000026 
-XX:MaxPermSize=256m org.apache.spark.executor.CoarseGrainedExecutorBackend 
--driver-url spark://CoarseGrainedScheduler@10.1.1.81:51553 --executor-id 19 
--hostname master01.yscredit.com --cores 1 --app-id application_1487813931557_0603 
--user-class-path file:/var/lib/hadoop-yarn/cache/yarn/nm-local-dir/usercache/root/appcache/application_1487813931557_0603/container_1487813931557_0603_01_000026/__app__.jar

下面是$SPARK_HOME/conf中的spark-defaults.conf文件

代码语言:javascript
代码运行次数:0
复制
spark.master=yarn
spark.submit.deployMode=cluster
spark.executor.instances=7
spark.executor.cores=6
spark.executor.memoryOverhead=1024
spark.yarn.executor.memoryOverhead=1400
spark.executor.memory=11264
spark.driver.memory=5g
spark.yarn.driver.memoryOverhead=600
spark.speculation=true
spark.yarn.executor.memoryOverhead=1400

有人能帮我吗?谢谢!

EN

回答 2

Stack Overflow用户

发布于 2017-11-13 19:14:19

我强烈建议你阅读Livy的源代码,我认为Livy的文档很少,所以,你可能会遇到很多问题,google.Livy只是一个中间件,代码量相对较小。

可以从3个位置指定spark参数:

  • Location A:如果您已经在创建会话post请求中将spark参数设置为LivyServer,则在您的post请求中发生的任何配置都不能被任何配置覆盖。也就是说,在您的post请求中的配置具有最高的priority;
  • Location B:然后,在$LIVY_HOME/conf中,您可以在spark-defaults.conflivy-client.conf中设置spark参数,如'spark.driver.memory‘;
  • Location C:最后,Livy也会在$SPARK_HOME/conf/spark-defaults.conf使用配置,但这里的配置优先级最低,也就是说,只有在位置A/B没有发生的配置才会生效。
票数 8
EN

Stack Overflow用户

发布于 2017-11-14 04:39:39

纱线中有一个属性限制了集群上的资源。

代码语言:javascript
代码运行次数:0
复制
sudo  vi /etc/hadoop/conf/capacity-scheduler.xml

将该属性更改为以下内容

代码语言:javascript
代码运行次数:0
复制
"yarn.scheduler.capacity.resource-calculator": "org.apache.hadoop.yarn.util.resource.DominantResourceCalcul‌​ator"

为了使此属性适用,您必须重新启动纱线

代码语言:javascript
代码运行次数:0
复制
 sudo  hadoop-yarn-resourcemanager stop

重新启动纱线

代码语言:javascript
代码运行次数:0
复制
sudo  hadoop-yarn-resourcemanager start 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42747822

复制
相关文章

相似问题

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