配置Capacity Scheduler

多用户下的Hadoop集群,少不了资源配置的管理。

Capacity Scheduler作为Yahoo开源的资源管理器,有着相当不错的适用性。

 

在HADOOP_HOME下的lib文件夹下面,找找有没有capacity schedule的jar包。

老版本的hadoop会把capacity scheduler的jar包

放在contrib/capacity-scheduler/hadoop-capacity-scheduler.jar 

 

将jar包拷贝到hadoop的lib包下面。

 

修改namenode节点中的conf/mapred-site.xml文件

 

扫描二维码关注公众号,回复: 603967 查看本文章
  <property>
    <name>mapred.jobtracker.taskScheduler</name>
    <value>org.apache.hadoop.mapred.CapacityTaskScheduler</value>
  </property>
  <property>
    <name>mapred.queue.names</name>
    <value>default,hadoop,hive</value>
  </property>

 

 

修改conf下的capacity-scheduler.xml 配置文件

 

本人修改的已经在附件中上传。注意配置文件中的几个:

 

1.mapred.capacity-scheduler.queue.default.capacity

表示该队列中,占所有资源的比例值 x/100 %

所有队列的该值之和,不能超过100%

 

2.mapred.capacity-scheduler.queue.default.minimum-user-limit-percent

表示每个用户可以使用该队列值的多少

 

最后,如何使用该队列呢:

mapreduce:在Job的代码中,设置Job属于的队列,例如hive:

conf.setQueueName("hive");

hive:在执行hive任务时,设置hive属于的队列,例如hive:

set mapred.job.queue.name=hive;

 

猜你喜欢

转载自dacoolbaby.iteye.com/blog/2104144