我将apachespark(2.4.4)与yarn结合使用,以实现更好的作业调度并支持多个并发作业。但我的工作一直处于被接受的状态,没有进展。
我的集群由10个节点组成(1个主节点和9个从节点)。每个节点8个CPU和16 gb内存。yarn工作得非常好,可以看到ui中的节点,没有不正常的节点,但是不确定作业是否长时间处于可接受状态,并且在某个时间点之后失败。我读了不同的文章,到处都提到“Yarn没有足够的资源来分配”。但是我的集群相当大,而且我的工作也很小。任何帮助都将不胜感激。
yarn-site.xml文件
<configuration>
<property>
<description>The hostname of the RM.</description>
<name>yarn.resourcemanager.hostname</name>
<value>${hostname}</value>
</property>
<property>
<name>yarn.scheduler.minimum-allocation-mb</name>
<value>1024</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.class</name>
<value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>12288</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>12288</value>
</property>
</configuration>
Yarn用户界面
应用
公平调度程序选项
<?xml version="1.0" encoding="UTF-8"?>
<allocations>
<defaultQueueSchedulingPolicy>fair</defaultQueueSchedulingPolicy>
<queue name="prod">
<weight>40</weight>
<schedulingPolicy>fifo</schedulingPolicy>
</queue>
<queue name="dev">
<weight>60</weight>
<queue name="eng" />
<queue name="science" />
</queue>
<queuePlacementPolicy>
<rule name="specified" create="false" />
<rule name="primaryGroup" create="false" />
<rule name="default" queue="dev.eng" />
</queuePlacementPolicy>
</allocations>
spark提交命令
./bin/spark-submit --class Main --master yarn --deploy-mode cluster --driver-memory 1g --executor-memory 1g aggregator-1.0-SNAPSHOT.jar
暂无答案!
目前还没有任何答案,快来回答吧!