hadoop2.2.0源代码编译

一、环境说明

虚拟软件:VMware Workstation 10

虚拟机配置:

RHEL Server release 6.5 (Santiago) 2.6.32-431.el6.x86_64

cpu:4核心,内存:4G,硬盘:50G

二、前提条件:

1:将rhel6.5的iso文件作为yum源

2:hadoop-2.2.0-src.tar.gz

3:安装JDK 1.6.0_43

4:安装并配置apache-maven 3.0.5(apache-maven-3.0.5-bin.tar.gz)

源码中BUILDING.txt中要求使用3.0,从hadoop2.0版本以后使用maven编译,之前用Ant)

解压并配置环境变量

mvn -version

5:安装并配置apache-ant-1.9.3-bin.zip(下载二进制版本的,这个需要编译安装findbugs)

解压并配置环境变量

ant -version

6:下载并安装cmake cmake-2.8.12.1,安装命令如下:

  tar -zxvf cmake-2.8.12.1.tar.gz

  cd cmake-2.8.12.1

  ./bootstrap

  make

  make install

  检查安装是否正确

cmake --version(如果能正确显示版本号,则说明安装正确)

7:下载并安装配置findbugs-2.0.2-source.zip

http://sourceforge.jp/projects/sfnet_findbugs/releases/

使用ant编译安装。如果不编译安装则编译的时候会报

hadoop-common-project/hadoop-common/${env.FINDBUGS_HOME}/src/xsl/default.xsl doesn’t exist. -> [Help 1]

进入到解压后的目录,直接运行ant命令

如果不安装,则在编译时会报如下错误:

Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.6:run (site) on project hadoop-common: An Ant BuildException has occured

8:安装zlib-devel

默认情况下,系统没有安装zlib-devel

yum install zlib-devel

如果不安装,则在编译时会报如下错误:

Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.6:run (make) on project hadoop-common

9: protobuf-2.5.0

yum install gcc-c++ (如果不安装,则cmake configure失败)

./configure

make

make check

make install

检查安装是否正确

protoc --version((如果能正确显示版本号,则说明安装正确)

三、hadoop2.2源码编译

1:进入hadoop2.2.0解压后的源码目录

2:执行mvn命令编译,此过程需要连接网络,编译的速度取决于你的网速

mvn clean package -Pdist,native -DskipTests -Dtar

2.1.Create binary distribution without native code and without documentation:

$ mvn package -Pdist -DskipTests -Dtar

2.2.Create binary distribution with native code and with documentation:

$ mvn package -Pdist,native,docs -DskipTests -Dtar

2.3.Create source distribution:

$ mvn package -Psrc -DskipTests

2.4.Create source and binary distributions with native code and documentation:

$ mvn package -Pdist,native,docs,src -DskipTests -Dtar

2.5.Create a local staging version of the website (in /tmp/hadoop-site)

$ mvn clean site; mvn site:stage -DstagingDirectory=/tmp/hadoop-site

3:编译后的项目发布版本在hadoop-2.2.0-src/hadoop-dist/target/目录下

hadoop-2.2.0-src/hadoop-dist/target/hadoop-2.2.0/

四、安装hadoop 单点伪分布式模式

1:配置ssh互信

ssh-keygen -t dsa (或行ssh-keygen -t rsa -P "" 加上-P ""参数只需要一次回车就可以执行完毕。不加需要三次回车)

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys 

如果仍然需要输入密码,则执行如下命令

chmod 600 ~/.ssh/authorized_keys

2:将编译后的hadoop-2.2.0-src/hadoop-dist/target/hadoop-2.2.0复制到/data/hadoop/目录下

3:建议软链接 ln -s hadoop-2.2.0 hadoop2

4: 在用户的.bash_profile增加如下变量

export HADOOP_HOME=/data/hadoop/hadoop2

export PATH=$PATH:$HADOOP_HOME/bin

export PATH=$PATH:$HADOOP_HOME/sbin

export HADOOP_MAPRED_HOME=${HADOOP_HOME}

export HADOOP_COMMON_HOME=${HADOOP_HOME}

export HADOOP_HDFS_HOME=${HADOOP_HOME}

export YARN_HOME=${HADOOP_HOME}

5:建议data.dir及namenode.dir目录

mkdir hdfs

mkdir namenode

chmod -R 755 hdfs

6:修改hadoop-env.sh

export JAVA_HOME=/usr/java/jdk1.6.0_43

export HADOOP_HOME=/data/hadoop/hadoop2

7:修改core-site.xml,hdfs-site.xml,mapred-site.xml,yarn-site.xml,内容见附录2

8:格式化HDFS文件系统

执行命令 hadoop namenode -format

9:启动hdfs,yarn

start-dfs.sh

start-yarn.sh

10:验证启动是否成功

jps

如果显示如下6个进程,则启动成功

53244 ResourceManager

53083 SecondaryNameNode

52928 DataNode

53640 Jps

52810 NameNode

53348 NodeManager

五、运行自带的wordcount例子

hadoop fs -mkdir /tmp

hadoop fs -mkdir /tmp/input

hadoop fs -put /usr/hadoop/test.txt /tmp/input

cd /data/hadoop/hadoop2/share/hadoop/mapreduce

hadoop jar hadoop-mapreduce-examples-2.2.0.jar wordcount /tmp/input /tmp/output

如果能正确运行,则hadoop安装配置正确

六、附录1:

设置的环境变量(/etc/profile,编辑后运行source /etc/profile/ 使配置生效)

#java set

export JAVA_HOME=/usr/java/jdk1.6.0_43

export JRE_HOME=/usr/java/jdk1.6.0_43/jre

export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export PATH=$PATH:$JAVA_HOME/bin

#maven set

export M2_HOME=/home/soft/maven

export PATH=$PATH:$M2_HOME/bin

#ant

export ANT_HOME=/home/soft/apache-ant-1.9.3

export PATH=$PATH:$ANT_HOME/bin

#findbugs

export FINDBUGS_HOME=/home/soft/findbugs-2.0.2

export PATH=$PATH:$FINDBUGS_HOME/bin

   附录2:core-site.xml,hdfs-site.xml,mapred-site.xml,yarn-site.xml的文件内容

core-site.xml内容:

<configuration>

   <property>

<name>fs.defaultFS</name>

<value>hdfs://vdata.kt:8020</value>

   </property>

</configuration>

hdfs-site.xml内容:

<configuration>

   <property>

<name>dfs.name.dir</name>

<value>/data/hadoop/namenode</value>

   </property>

   <property>

<name>dfs.data.dir</name>

<value>/data/hadoop/hdfs</value>

   </property>

   <property>

<name>dfs.replication</name>

<value>1</value>

   </property>  

   <property>

<name>dfs.permissions</name>

<value>false</value>

   </property>

</configuration>

mapred-site.xml内容:

<configuration>

   <property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

   </property> 

</configuration>

yarn-site.xml内容:

<configuration>

   <property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

    </property>

</configuration>

时间: 2024-11-05 12:28:07

hadoop2.2.0源代码编译的相关文章

CentOS 6.4+nginx-1.4.4+php-5.5.8(php-fpm)+mysql-5.6.15+xcache-3.1.0+memcache-2.2.7源代码编译安装指南

风信网(ithov.com)原创文章:本文将向大家讲解关于CentOS 6.4 X64位系统源代码编译安装nginx-1.4.4+php-5.5.8(php-fpm)+mysql-5.6.15+xcache-3.1.0+memcache-2.2.7的详细过程,希望能帮助大家解决生产环境中的环境配置问题. 安装需要支持的库文件 [root@localhost mysql-5.6.15]# yum install pcre [root@localhost mysql-5.6.15]# yum ins

Hadoop-2.8.0集群搭建、hadoop源码编译和安装、host配置、ssh免密登录、hadoop配置文件中的参数配置参数总结、hadoop集群测试,安装过程中的常见错误

25.集群搭建 25.1 HADOOP集群搭建 25.1.1集群简介 HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起 HDFS集群: 负责海量数据的存储,集群中的角色主要有NameNode / DataNode YARN集群: 负责海量数据运算时的资源调度,集群中的角色主要有 ResourceManager /NodeManager 25.1.2服务器准备 本案例使用虚拟机服务器来搭建HADOOP集群,所用软件及版本: ü Vmware 11.

从源代码编译 Vim 8.0

从源代码编译 Vim 实际上并不那么困难.下面是你所要做的: 1.首先,安装包括 Git 在内的所有必备的库.对于一个 Debian 类的 Linux 发行版,例如 Ubuntu,命令如下: sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \ libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \ libcairo2-dev libx11-dev libxpm-dev lib

ubuntu 64位编译hadoop-2.6.0失败,网上看了好久,都没解决,大神速来解救

问题描述 ubuntu 64位编译hadoop-2.6.0失败,网上看了好久,都没解决,大神速来解救 [exec] CMake Error at /usr/local/share/cmake-2.6/Modules/FindPackageHandleStandardArgs.cmake:52 (MESSAGE): [exec] Could NOT find ZLIB [exec] Call Stack (most recent call first): [exec] /usr/local/sha

本地编译Hadoop2.8.0源码总结和问题解决(转自:http://blog.csdn.net/young_kim1/article/details/50324345)

编译准备 1.下载所需的软件 先去官网下载hadoop2.8.0源码并解压,打开解压目录下的BUILDING.txt,编译过程和需要的软件其实就是根据这个文档里的描述来的. (可以通过命令下载:wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.8.0/hadoop-2.8.0-src.tar.gz) Requirements: * Unix System * JDK 1.7+ * Maven 3.0 or later *

CentOS 64位上编译 Hadoop2.6.0

由于hadoop-2.6.0.tar.gz安装包是在32位机器上编译的,64位的机器加载本地库.so文件时会出错,比如: java.lang.UnsatisfiedLinkError: org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjava/lang/String;JZ)V  所以需要重新编译 1.编译环境 yum install cmake lzo-devel zlib-devel

ubuntu17.04编译Tiny4412 Android5.0源代码

跟着ubuntu12.04一样,我解开了4412的Android5.0源代码. 因为前面这篇文章已经安装了一些开发环境,所以这里不再哆嗦. 还是和这篇文章一样的: http://blog.csdn.net/morixinguan/article/details/70190518 遇到下面这个错误: 那么,这次就有经验了,直接用下面这个解决方法: clang编辑器的问题,在art/build/Android.common_build.mk 中将host 默认编辑器使用clang关掉,找到WITHO

使用ubuntu17.04编译Android 6.0源代码

在安装了最新的ubuntu17.04后编译Android6.0源代码的过程中,遇到了很多问题: 1.openjdk无法支持jdk8,只能用回jdk7 2.还有很多未曾遇到的编译问题 还陆陆续续遇到了各种各样的编译失败的信息,最后,参考这两位博主的16.04编译Android的方法顺利解决. 比如下面这个错误: 解决方法我是参考以下两位博主的: http://blog.csdn.net/fuchaosz/article/details/51487585 http://blog.csdn.net/c

linux下apache+mysql+php开发环境纯源代码编译搭建

apache|mysql|编译|源代码 记录一下我在fedora core 1下通过源代码编译出来的apache+mysql+php开发环境的全部过程 通常安装一台服务器当然使用rpm是最方便的,不需要考虑太多配置的问题,就可以轻松获得需要的环境了.不过rpm包互相关联的问题也不是这么容易解决. apache,mysql,php这三个应用从源代码编译安装还是比较简单的,配置参数不算复杂,而且没有太多的依赖关系,从源码编译出来的系统也比较稳定一些,方便未来打补丁和升级工作. 编译安装的前提是,系统