hadoop2.2.0安装详解

Hadoop2.2.0版本的改善
  • 新的 Hadoop MapReduce框架 YARN
  • ②HDFS 高可用性
  • ③HDFS FederationHDFS盟):使得 HDFS支持多个命名空,并且允 HDFS中同存在多个 Name Node
  • ④HDFS 快照
  • ⑤NFSv3 访问 HDFS中的数据
  • 支持在 Windows平台上运行 Hadoop
  • 兼容基于 Hadoop 1.x构建的 MapReduce
  • 大量针对中其他目的集成测试

Hadoop2.2.0的注意事

  • ①HDFS 社区建 symlinks功能从 2.3版本中移除,目前功能已停用
  • 在新的 YARN/MapReduce中,用需要更改 ShuffleHandler名称——需要将 mapreduce.shuffle mapreduce_shuffle

YARN的介

  • 设计大大减小了 JobTracker(也就是在的 ResourceManager)的源消耗,并且让监测每一个 Job 子任 (tasks)的程序分布式化了,更安全、更美。
  • 在新的 Yarn中,ApplicationMaster 是一个可更的部分,用可以不同的程模型写自己的AppMst更多型的程模型能跑在 Hadoop 集群中
  • 源的表示以内存为单 ( 在目前版本的 Yarn中,没有考 cpu的占用 ),比之前以剩余 slot数目更合理。
  • 老的框架中,JobTracker一个很大的担就是 job下的 tasks 的运行状况,在,个部分就扔 ApplicationMaster 做了,而 ResourceManager中有一个模叫做 ApplicationsMasters(注意不是 ApplicationMaster),它是监测ApplicationMaster 的运行状况,如果出问题,会将其在其他机器上重启。
  • ⑤Container Yarn了将来作源隔离而提出的一个框架。一点应该 Mesos 的工作,目前是一个框架,仅仅提供 java机内存的隔离 ,hadoop团队设计思路应该能支持更多的度和控制 , 既然源表示成内存量,那就没有了之前的 map slot/reduce slot造成集群置的尬情况。

 

Hadoop2.2.0部署安装

工作 :于防火SSH通信、JDK的安装、hosts配置、文件的上等等就不一一介,直切主.

安装境:Red Hat 6

机模式:192.168.5.130  v

注:网上大多数教程都是扯子,乱七八糟,希望本文大家有所帮助,运行起来Hadoop2.2机做起~~~

Hadoop2.2.0/usr/local,并解、重命名

录结构如下:

[root@v hadoop2]# ls bin  include libexec      NOTICE.txt  sbin etc lib      LICENSE.txt  README.txt  share

其配置文件构如下:

[root@v hadoop2]# cd etc/hadoop/ [root@v hadoop]# lscapacity-scheduler.xml      httpfs-site.xmlconfiguration.xsl          log4j.properties container-executor.cfg     mapred-env.cmdcore-site.xml              mapred-env.shhadoop-env.cmd             mapred-queues.xml.templatehadoop-env.sh              mapred-site.xml.template hadoop-metrics2.properties  slaveshadoop-metrics.properties   ssl-client.xml.examplehadoop-policy.xml          ssl-server.xml.example hdfs-site.xml              yarn-env.cmdhttpfs-env.sh              yarn-env.sh httpfs-log4j.properties     yarn-site.xmlhttpfs-signature.secret

配置JAVA_HOME

Yarn 框架中由于启HDFS分布式文件系和启 MapReduce框架分离,JAVA_HOME 需要在 hadoop-env.sh Yarn-env.sh 中分配置

[root@v hadoop]# vi hadoop-env.sh

# export JAVA_HOME=${JAVA_HOME}【默,蛋疼 却不,需要修改】

export JAVA_HOME=/usr/local/jdk

[root@v hadoop]# vi yarn-env.sh

# some Java parameters export JAVA_HOME=/usr/local/jdk【需要手修改】

配置

export HADOOP_HOME=/usr/local/hadoop2 exportPATH=.:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$JAVA_HOME/bin:$PATH

然后行命令:source/etc/profile

配置HADOOP_LOG_DIR

老框架在 LOG, conf, tmp 等均默认为脚本启的当前目下的 log, conf, tmp 子目,无需配置 但Yarn新框架中Log 认创建在 Hadoop home下的 log子目,因此最好在${hadoop_home_dir}/etc/hadoop/hadoop-env.sh配置 HADOOP_LOG_DIR,否有可能会因你启hadoop的用 .bashrc或者.bash_profile 中指定了其他的 PATH 量而造成日志位置混乱,而位置没有访问权限的动过程中会报错

# Where log files are stored.  $HADOOP_HOME/logs bydefault.export HADOOP_LOG_DIR=/usr/local/hadoop2/logs

配置core-site.xml

<configuration> < property> <name>fs.default.name</name> < value>hdfs://v:9000</value>< /property> < property> < name>hadoop.tmp.dir</name>< value>/usr/local/hadoop2/tmp</value> < /property> </configuration>

配置hdfs-site.xml

<configuration> < property> <name>dfs.default.name</name> <value>/usr/local/hadoop2/tmp</value> < /property> <property> < name>dfs.replication</name> <value>1</value> < /property> < property> <name>dfs.permissions</name> < value>false</value> </property> < /configuration>

重命名 mapred-site.xml.templatemapred-site.xml并配置

<configuration> < property> <name>mapreduce.framework.name</name> < value>Yarn</value>< /property>

</configuration>

【注意】:此无需配置mapred.job.tracker,JobTracker经变成客端的一个,它可能被随机度到任意一个slave上面,也就是 它的位置是动态生成的.

配置文件中mapreduce.framework.name指定采用的框架名称,是将作提交到MRv1JobTracker.

配置yarn-site.xml

<configuration>

<property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>v:8990</value> < description>host is the hostname of theresource manager and port is the port on which the NodeManagers contact theResource Manager. < /description> < /property>

<property> <name>yarn.resourcemanager.scheduler.address</name> <value>v:8991</value> < description>host is the hostname of theresourcemanager and port is the port on which the Applications in the clustertalk to the Resource Manager. < /description> < /property>

<property> <name>yarn.resourcemanager.scheduler.class</name> <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity.CapacityScheduler</value>< description>In case you do not want to use the defaultscheduler</description> < /property>

<property> <name>yarn.resourcemanager.address</name> <value>v:8993</value> < description>the host is the hostname ofthe ResourceManager and the port is the port on which the clients can talk tothe Resource Manager. </description> < /property>

<property> <name>yarn.nodemanager.local-dirs</name> <value>/usr/local/hadoop2/tmp/node</value> < description>thelocal directories used by the nodemanager</description> </property>

<property> <name>yarn.nodemanager.address</name> <value>v:8994</value> < description>the nodemanagers bind to thisport</description> < /property>

<property> < name>yarn.nodemanager.resource.memory-mb</name>< value>10240</value> < description>the amount of memory onthe NodeManager in GB</description> < /property>

<property> <name>yarn.nodemanager.remote-app-log-dir</name> <value>/usr/local/hadoop2/tmp/app-logs</value> < description>directoryon hdfs where the application logs are moved to </description> </property>

<property> <name>yarn.nodemanager.log-dirs</name> <value>/usr/local/hadoop2/tmp/node</value> < description>thedirectories used by Nodemanagers as log directories</description> </property>

<property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> < description>shuffle servicethat needs to be set for Map Reduce to run </description> </property> < /configuration>

【注意】:了运行MapReduce,需要各个NodeManager在启动时shuffleserver, shuffle server实际Jetty/Netty Server, Reduce Task过该server从各个NodeManager程拷MapTask生的中间结.上面增加的两个配置用于指定shuffle server. 如果YARN集群有多个,需要配置yarn.resourcemanager.address等参数

修改slaves

localhost

 

到此配置完成

 

初始化Hadoop hadoop namenode -format

欧了~~~~

程如下:
hadoop2.2.0安装详解_第1张图片 

张图,,哈哈,, 写的可能有细节疏漏,如果大家实际配置遇到问题欢迎随留言


 

分布式就更简单喽 ,改一下slaves就欧啦 ~~~

 

hadoop2.2.0安装详解_第2张图片

你可能感兴趣的:(hadoop2.2.0安装详解)