hadoop容量调度器和spark

g0czyy6m  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(733)

如果我像这里解释的那样在yarn中定义capacityscheduler队列
http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/capacityscheduler.html
我该如何使用这个?
我想做些有Spark的工作。。。但是它们不应该占用所有集群,而是在一个capacityscheduler上执行,该capacityscheduler有一组固定的资源分配给它。
有没有可能。。。特别是在cloudera平台上(假设cloudera上的spark运行在yarn上?)。

pu3pd22g

pu3pd22g1#

您应该通过编辑capacity-scheduler.xml根据需要配置capacityscheduler。您还需要在yarn-site.xml中将yarn.resourcemanager.scheduler.class指定为org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.capacityscheduler,这也是当前hadoop版本的默认选项
将spark作业提交到设计的队列。
如:

$ ./bin/spark-submit --class org.apache.spark.examples.SparkPi \
    --master yarn \
    --deploy-mode cluster \
    --driver-memory 4g \
    --executor-memory 2g \
    --executor-cores 1 \
    --queue thequeue \
    lib/spark-examples*.jar \
    10

这个 --queue 指示要提交的队列,该队列应符合capacityscheduler配置

相关问题