分享

Hadoop-2.2.0中文文档:MapReduce 配置一个单节点集群大全(详细版)

本帖最后由 xioaxu790 于 2014-9-6 18:19 编辑
问题导读
1、如何获取Mapreduce 包?


2、MapReduce 如何配置一个单节点集群?



Mapreduce 包
你需从发布页面获得MapReduce tar包。若不能,你要将源码打成tar包。
  1. $ mvn clean install -DskipTests
  2. $ cd hadoop-mapreduce-project
  3. $ mvn clean install assembly:assembly -Pnative
复制代码

注意:你需要安装有protoc 2.5.0。
忽略本地建立mapreduce,你可以在maven中省略-Pnative参数。tar包应该在target/directory。

配置环境
假设你已经安装hadoop-common/hadoop-hdfs,并且输出了$HADOOP_COMMON_HOME/$HADOOP_HDFS_HOME,解压hadoop mapreduce 包,配置环境变量$HADOOP_MAPRED_HOME到要安装的目录。$HADOOP_YARN_HOME的配置和 $HADOOP_MAPRED_HOME一样.
注意:下面的操作假设你已经运行了hdfs。

设置配置信息
要启动ResourceManager and NodeManager, 你必须升级配置。假设你的 $HADOOP_CONF_DIR是配置目录,并且已经安装了HDFS和core-site.xml。还有2个配置文件你必须设置 mapred-site.xml 和yarn-site.xml.
设置 mapred-site.xml
添加下面的配置到你的mapred-site.xml.
  1. <property>
  2.     <name>mapreduce.cluster.temp.dir</name>
  3.     <value></value>
  4.     <description>No description</description>
  5.     <final>true</final>
  6.   </property>
  7.   <property>
  8.     <name>mapreduce.cluster.local.dir</name>
  9.     <value></value>
  10.     <description>No description</description>
  11.     <final>true</final>
  12.   </property>
复制代码


设置 yarn-site.xml
添加下面的配置到你的yarn-site.xml.
  1. <property>
  2.     <name>yarn.resourcemanager.resource-tracker.address</name>
  3.     <value>host:port</value>
  4.     <description>host is the hostname of the resource manager and
  5.     port is the port on which the NodeManagers contact the Resource Manager.
  6.     </description>
  7.   </property>
  8.   <property>
  9.     <name>yarn.resourcemanager.scheduler.address</name>
  10.     <value>host:port</value>
  11.     <description>host is the hostname of the resourcemanager and port is the port
  12.     on which the Applications in the cluster talk to the Resource Manager.
  13.     </description>
  14.   </property>
  15.   <property>
  16.     <name>yarn.resourcemanager.scheduler.class</name>
  17.     <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>
  18.     <description>In case you do not want to use the default scheduler</description>
  19.   </property>
  20.   <property>
  21.     <name>yarn.resourcemanager.address</name>
  22.     <value>host:port</value>
  23.     <description>the host is the hostname of the ResourceManager and the port is the port on
  24.     which the clients can talk to the Resource Manager. </description>
  25.   </property>
  26.   <property>
  27.     <name>yarn.nodemanager.local-dirs</name>
  28.     <value></value>
  29.     <description>the local directories used by the nodemanager</description>
  30.   </property>
  31.   <property>
  32.     <name>yarn.nodemanager.address</name>
  33.     <value>0.0.0.0:port</value>
  34.     <description>the nodemanagers bind to this port</description>
  35.   </property>  
  36.   <property>
  37.     <name>yarn.nodemanager.resource.memory-mb</name>
  38.     <value>10240</value>
  39.     <description>the amount of memory on the NodeManager in GB</description>
  40.   </property>
  41.   <property>
  42.     <name>yarn.nodemanager.remote-app-log-dir</name>
  43.     <value>/app-logs</value>
  44.     <description>directory on hdfs where the application logs are moved to </description>
  45.   </property>
  46.    <property>
  47.     <name>yarn.nodemanager.log-dirs</name>
  48.     <value></value>
  49.     <description>the directories used by Nodemanagers as log directories</description>
  50.   </property>
  51.   <property>
  52.     <name>yarn.nodemanager.aux-services</name>
  53.     <value>mapreduce_shuffle</value>
  54.     <description>shuffle service that needs to be set for Map Reduce to run </description>
  55.   </property>
复制代码



设置 capacity-scheduler.xml
确保你放置根队列到capacity-scheduler.xml.
  1. <property>
  2.     <name>yarn.scheduler.capacity.root.queues</name>
  3.     <value>unfunded,default</value>
  4.   </property>
  5.   
  6.   <property>
  7.     <name>yarn.scheduler.capacity.root.capacity</name>
  8.     <value>100</value>
  9.   </property>
  10.   
  11.   <property>
  12.     <name>yarn.scheduler.capacity.root.unfunded.capacity</name>
  13.     <value>50</value>
  14.   </property>
  15.   
  16.   <property>
  17.     <name>yarn.scheduler.capacity.root.default.capacity</name>
  18.     <value>50</value>
  19.   </property>
复制代码



运行守护进程
假设环境变量 $HADOOP_COMMON_HOME, $HADOOP_HDFS_HOME, $HADOO_MAPRED_HOME, $HADOOP_YARN_HOME,$JAVA_HOME 和 $HADOOP_CONF_DIR 已经设置正确。$$YARN_CONF_DIR 的设置同 $HADOOP_CONF_DIR。
运行ResourceManager 和 NodeManager 如下:
  1. $ cd $HADOOP_MAPRED_HOME
  2. $ sbin/yarn-daemon.sh start resourcemanager
  3. $ sbin/yarn-daemon.sh start nodemanager
复制代码


你应该启动和运行。你可以运行randomwriter如下:
  1. $ $HADOOP_COMMON_HOME/bin/hadoop jar hadoop-examples.jar randomwriter out
复制代码

祝你好运。



没找到任何评论,期待你打破沉寂

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条