hadoop2.x安装配置
1.首先准备hadoop2.2.0的安装包,从官网获取,略。
2.加压安装包,进行配置。假设hadoop安装到/usr/hadoop-2.2.0目录,则进行如下配置:
(1)/etc/profile配置
export HADOOP_PREFIX=/usr/hadoop-2.2.0
export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin
(2)/usr/hadoop-2.2.0/etc/hadoop下配置文件的配置
core-site.xml配置
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop.datanode3.com:9000</value> </property> <property> <name>io.file.buffer.size</name> <value>4096</value> </property> <property> <name>hadoop.tmp.dir</name> <value>file:/data/hadoop/temp</value> </property> </configuration>hdfs-site.xml
<configuration> <property> <name>dfs.namenode.name.dir</name> <value>file:/data/hadoop/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/data/hadoop/dfs/data</value> </property> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> </configuration>yarn-site.xml
<configuration> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <name>yarn.resourcemanager.address</name> <value>hadoop.datanode3.com:8032</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>hadoop.datanode3.com:8030</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>hadoop.datanode3.com:8031</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>hadoop.datanode3.com:8033</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>hadoop.datanode3.com:8088</value> </property> </configuration>salves文件
hadoop.datanode2.com hadoop.datanode3.commaster文件
hadoop.datanode3.com(3)bin/hadoop-env.sh
修改以下两项:
export JAVA_HOME=/usr/java/jdk1.6.0_43 export HADOOP_PID_DIR=/data/hadoop/temp(4)sbin/yarn-daemon.sh
添加以下一项:
export YARN_PID_DIR=/data/hadoop/temp3. 至此,配置完成,启动集群。
(1)格式化namenode,执行hdfs namenode -fomat
(2)启动hdfs,执行start-dfs.sh
(3)启动yarn,执行start-yarn.sh
ok,到此集群启动完毕!注意:在(1)中你仔细查看执行过程的输出的话,可能会看到如下的提示
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
接着你去验证集群的功能,无论执行什么语句都是报这个警告,而且什么语句不能执行。why?
网上一搜发现是因为官方提供的lib目录中.so文件是在32位系统下编译的,如果是64位系统,需要自己下载源码在64位上重新编译,没办法只能自己编译了。
参考:http://tech.ddvip.com/2013-10/1381302137203719.html
http://www.linuxidc.com/Linux/2012-04/59200.htm
4. 编译hadoop源码,生成64bit本地lib
参考:http://www.cnblogs.com/lucius/p/3435296.html
注意:hadoop2.2.0官网提供的源码包中有一个pom.xml的bug,需要修改一下,见jira:https://issues.apache.org/jira/browse/HADOOP-10110
编译完成后,将新生成的lib/hadoop/native下的文件全部覆盖原来的即可,然后注意在/etc/profile中添加:
export JAVA_LIBRARY_PATH=${HADOOP_PREFIX}/lib/native5.重新启动集群,进行验证。
(1)hdfs功能验证:执行文件的相关操作,没有任何问题
(2)mapreduce功能验证:执行hadoop-2.2.0自带的wordcount程序进行验证,没有任何问题
参考:http://hi.baidu.com/kongxianghe123/item/731aa74762111ae81381da9b
至此,简单hadoop2.x集群已搭建成功!接下来进行HA(高可用)集群配置
6. 配置HA集群