zoukankan      html  css  js  c++  java
  • hadoop队列管理(指定queue跑程序)

    hadoop 升级到cdh5后,队列管理被取消,而是统一用资源池分配。 





    hadoop2.0版本,Hadoop采用了平级队列组织方式,,管理员可将用户分到若干个扁平队列中,在每个队列中,可指定一个或几个队列管理员管理这些用户,比如杀死任意用户的作业,修改任意用户作业的优先级。

    但这还不够,需要将资源划分到这几个队列中,并按照一定的策略完成资源分配,这就需要Hadoop作业调度器的支持。

    总之,在Hadoop中,队列的组织是队列管理和资源分配的基础。


    线上环境,设置成三个队列,分别是default,queue1,queue2,queue3。

    在编写代码时,设定

    Configuration conf = new Configuration();
    conf.set("mapred.job.queue.name", "queue3");

    使用queue3跑程序,任务少,资源相对充足。



    Hadoop 队列管理:

    配置Queue相关信息

    •配置属性在mapre-site.xml

    配置Queue的相关信息

    <property>

     <name>mapred.acls.enabled</name>

     <value>true</value>

    </property>

    <property>

     <name>mapred.queue.names</name>

     <value>test,default</value>

    </property> 属性mapred.queue.names 是 queue 的所有名字,在这一名字中,必须有一个叫“ default”的 queue

    <property>

     <name>mapred.queue.my_queue.acl-submit-job</name>

     <value> test</value>

    </property>

    <property>

     <name>mapred.queue.default.acl-administer-jobs</name>

     <value></value>

    </property>

    <property>

     <name>mapred.queue.my_queue.acl-administer-jobs</name>

     <value></value>

    </property>

    mapred.queue.names是queue的所有名字

    •必须有一个叫“default”的queue

    • mapred.queue.<queue-name>.acl-submit-job,指定哪些user或者group可以向该queue中提交作业

    •mapred.queue.<queue-name>.acl-administer-jobs,指定哪些user或者group可以管理该queue中的所有作业。

    • 每个queue拥有的资源量和其他信息,在其他配置文件里指定

    • mapred.queue.<queue-name>.acl-submit-job和mapred.queue.<queue-name>.acl-administer-jobs配置方法如下:

         用户和用户组之间用空格分开,用户之间用“,”分割,用户组之间用“,”分割,如果queue的属性值中只有用户组,则前面保留一个空格。

  • 相关阅读:
    个人总结08
    npm快速入门
    Activity简介
    SELinux
    正则表达式学习笔记(二)表达式的匹配原理
    git学习笔记(一)
    使用VSFTPD传输文件
    正则表达式学习笔记(一)正则表达式入门
    Linux基础(一)磁盘分区
    Shell脚本笔记(九)数组
  • 原文地址:https://www.cnblogs.com/cl1024cl/p/6205431.html
Copyright © 2011-2022 走看看