paulwong

          配置Hadoop M/R 采用Fair Scheduler算法代替FIFO

          采用Cloudera版本的hadoop/hbase:

          hadoop-0.20.2-cdh3u0

          hbase-0.90.1-cdh3u0

          zookeeper-3.3.3-cdh3u0

          默認已支持FairScheduler調度算法.

          只需改配置使期用FairSchedule而非默認的JobQueueTaskScheduler即可.

          配置fair-scheduler.xml (/$HADOOP_HOME/conf/):

          <?xml version="1.0"?>
          <property>
              <name>mapred.fairscheduler.allocation.file</name>
              <value>[HADOOP_HOME]/conf/fair-scheduler.xml</value>
          </property>
          <allocations>
              <pool name="qiji-task-pool">
                  <minMaps>5</minMaps>
                  <minReduces>5</minReduces>
                  <maxRunningJobs>
                      <maxRunningJobs>5</maxRunningJobs>
                      <minSharePreemptionTimeout>300</minSharePreemptionTimeout>
                      <weight>1.0</weight>
              </pool>
              <user name="ecap">
                  <maxRunningJobs>
                      <maxRunningJobs>6</maxRunningJobs>
              </user>
              <poolMaxJobsDefault>10</poolMaxJobsDefault>
              <userMaxJobsDefault>8</userMaxJobsDefault>
              <defaultMinSharePreemptionTimeout>600
              </defaultMinSharePreemptionTimeout>
              <fairSharePreemptionTimeout>600</fairSharePreemptionTimeout>
          </allocations>



          配置$HADOOP_HOME/conf/mapred-site.xml,最后添加:

          <property>
              <name>mapred.jobtracker.taskScheduler</name>
              <value>org.apache.hadoop.mapred.FairScheduler</value>
          </property>
          <property>
              <name>mapred.fairscheduler.allocation.file</name>
              <value>/opt/hadoop/conf/fair-scheduler.xml</value>
          </property>
          <property>
              <name>mapred.fairscheduler.assignmultiple</name>
              <value>true</value>
          </property>
          <property>
              <name>mapred.fairscheduler.sizebasedweight</name>
              <value>true</value>
          </property>



          然后重新運行集群,這樣有幾個Job(上面配置是5個并行)并行運行時,不會因為一個Job把Map/Reduce占滿而使其它Job處于Pending狀態.

          可從: http://<masterip>:50030/scheduler查看并行運行的狀態.

          posted on 2013-01-31 17:30 paulwong 閱讀(1519) 評論(1)  編輯  收藏 所屬分類: HADOOP云計算

          Feedback

          # re: 配置Hadoop M/R 采用Fair Scheduler算法代替FIFO 2013-05-17 10:07 Christopher

          樓主你好,最近我也在配置hadoop的fair scheduler, 但是遇到了一些問題。
          首先我使用的是cloudera-cdh-demo-vm-4.2.0-kvm。當我配置$HADOOP_HOME/conf/mapred-site.xml時,指定pool的分配文件,
          <property>
          <name>mapred.fairscheduler.allocation.file</name>
          <value>/usr/lib/hadoop-0.20-mapreduce/conf/fair-scheduler.xml</value>
          </property>
          重啟cluster之后,無法登錄http://<masterip>:50030/scheduler查看并行運行的狀態.
          請問樓主可否解答?如果需要更詳細的配置,能否留下郵箱進一步讓我進一步咨詢。
            回復  更多評論   


          主站蜘蛛池模板: 镇坪县| 根河市| 章丘市| 柘城县| 平度市| 昌都县| 滕州市| 吴川市| 南通市| 邵武市| 郴州市| 疏附县| 元氏县| 霍州市| 依安县| 寻乌县| 卢湾区| 遂昌县| 武宁县| 肥乡县| 化德县| 日土县| 蕲春县| 如东县| 阿拉尔市| 萨嘎县| 福州市| 成安县| 洛阳市| 全南县| 蓬溪县| 虎林市| 汨罗市| 专栏| 来安县| 咸丰县| 靖西县| 石屏县| 卢龙县| 四子王旗| 聊城市|