1、安装JDK
下载JDK 7u55版本,安装
JDK和JRE都需要,JDK里面有tools.jar,这个jar包是一定需要的
安装在/java上
2、下载Hadoop 2.2.0源代码
wget http://apache.dataguru.cn/hadoop/common/stable/hadoop-2.2.0-src.tar.gz
解压缩
tar
zxvf hadoop-2.2.0-src.tar.gz -C /tmp
3、安装依赖包
yum -y install lzo-devel zlib-devel gcc autoconf automake libtool gcc-c++
openssl-devel openssl-devel
4、安装相关编译用软件
Protobuf编译和安装
tar -zxvf protobuf-2.5.0.tar.gz
cd protobuf-2.5.0
./configure
--prefix=/usr/local/protobuf
make
make install
Ant安装
tar -zxvf apache-ant-1.9.2-bin.tar.gz
mv apache-ant-1.9.2
/usr/local/ant
Maven安装
tar -zxvf apache-maven-3.0.5-bin.tar.gz
mv apache-maven-3.0.5
/usr/local/maven
Findbugs安装
tar -zxfv findbugs-2.0.2.tar.gz
mv findbugs-2.0.2 /usr/local/findbugs
cmake编译安装
tar -zvxf cmake-2.8.8.tar.gz
cd cmake-2.8.8
./bootstrap
make
make
install
5、配置路径
vim /etc/profile
#java
export JAVA_HOME=/java
export JRE_HOME=$JAVA_HOME/jre
export
CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib
export
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
#maven
export MAVEN_HOME=/usr/local/maven
export MAVEN_OPTS="-Xms256m
-Xmx512m"
export CLASSPATH=.:$CLASSPATH:$MAVEN_HOME/lib
export
PATH=$PATH:$MAVEN_HOME/bin
#protobuf
export PROTOBUF_HOME=/usr/local/protobuf
export
CLASSPATH=.:$CLASSPATH:$PROTOBUF_HOME/lib
export
PATH=$PATH:$PROTOBUF_HOME/bin
#ant
export ANT_HOME=/usr/local/ant
export
CLASSPATH=.:$CLASSPATH:$ANT_HOME/lib
export PATH=$PATH:$ANT_HOME/bin
#findbugs
export FINDBUGS_HOME=/usr/local/findbugs
export
CLASSPATH=.:$CLASSPATH:$FINDBUGS_HOME/lib
export
PATH=$PATH:$FINDBUGS_HOME/bin
source /etc/profile
即刻生效
9、修改依赖Bug
vim /hadoop-2.2.0/hadoop-common-project/hadoop-auth/pom.xml
在dependency部分加入:
org.mortbay.jetty
jetty
test
org.mortbay.jetty
jetty-util
test
10、编译
cd hadoop-2.2.0-src
mvn clean package -Pdist,native -DskipTests -Dtar
[INFO]
------------------------------------------------------------------------
[INFO]
Reactor Summary:
[INFO]
[INFO] Apache Hadoop Main
................................ SUCCESS [10.796s]
[INFO] Apache Hadoop
Project POM ......................... SUCCESS [8.171s]
[INFO] Apache Hadoop
Annotations ......................... SUCCESS [18.306s]
[INFO] Apache Hadoop
Assemblies .......................... SUCCESS [1.704s]
[INFO] Apache Hadoop
Project Dist POM .................... SUCCESS [8.222s]
[INFO] Apache Hadoop
Maven Plugins ....................... SUCCESS [17.120s]
[INFO] Apache Hadoop
Auth ................................ SUCCESS [15.952s]
[INFO] Apache Hadoop
Auth Examples ....................... SUCCESS [12.085s]
[INFO] Apache Hadoop
Common .............................. SUCCESS [4:57.617s]
[INFO] Apache
Hadoop NFS ................................. SUCCESS [25.393s]
[INFO] Apache
Hadoop Common Project ...................... SUCCESS [0.231s]
[INFO] Apache
Hadoop HDFS ................................ SUCCESS [5:51.635s]
[INFO]
Apache Hadoop HttpFS .............................. SUCCESS
[1:27.220s]
[INFO] Apache Hadoop HDFS BookKeeper Journal .............
SUCCESS [59.011s]
[INFO] Apache Hadoop HDFS-NFS ............................
SUCCESS [11.979s]
[INFO] Apache Hadoop HDFS Project ........................
SUCCESS [0.195s]
[INFO] hadoop-yarn .......................................
SUCCESS [1:41.292s]
[INFO] hadoop-yarn-api
................................... SUCCESS [1:53.028s]
[INFO]
hadoop-yarn-common ................................ SUCCESS
[1:47.889s]
[INFO] hadoop-yarn-server ................................
SUCCESS [0.712s]
[INFO] hadoop-yarn-server-common .........................
SUCCESS [38.517s]
[INFO] hadoop-yarn-server-nodemanager ....................
SUCCESS [53.352s]
[INFO] hadoop-yarn-server-web-proxy ......................
SUCCESS [13.733s]
[INFO] hadoop-yarn-server-resourcemanager ................
SUCCESS [49.935s]
[INFO] hadoop-yarn-server-tests ..........................
SUCCESS [3.230s]
[INFO] hadoop-yarn-client ................................
SUCCESS [23.036s]
[INFO] hadoop-yarn-applications ..........................
SUCCESS [0.690s]
[INFO] hadoop-yarn-applications-distributedshell .........
SUCCESS [7.623s]
[INFO] hadoop-mapreduce-client ...........................
SUCCESS [0.581s]
[INFO] hadoop-mapreduce-client-core ......................
SUCCESS [1:26.644s]
[INFO] hadoop-yarn-applications-unmanaged-am-launcher
.... SUCCESS [8.783s]
[INFO] hadoop-yarn-site
.................................. SUCCESS [1.217s]
[INFO]
hadoop-yarn-project ............................... SUCCESS [30.587s]
[INFO]
hadoop-mapreduce-client-common .................... SUCCESS
[1:19.185s]
[INFO] hadoop-mapreduce-client-shuffle ...................
SUCCESS [17.693s]
[INFO] hadoop-mapreduce-client-app .......................
SUCCESS [41.929s]
[INFO] hadoop-mapreduce-client-hs ........................
SUCCESS [18.209s]
[INFO] hadoop-mapreduce-client-jobclient .................
SUCCESS [24.663s]
[INFO] hadoop-mapreduce-client-hs-plugins ................
SUCCESS [7.631s]
[INFO] Apache Hadoop MapReduce Examples ..................
SUCCESS [22.663s]
[INFO] hadoop-mapreduce ..................................
SUCCESS [10.093s]
[INFO] Apache Hadoop MapReduce Streaming .................
SUCCESS [19.489s]
[INFO] Apache Hadoop Distributed Copy ....................
SUCCESS [51.046s]
[INFO] Apache Hadoop Archives ............................
SUCCESS [7.621s]
[INFO] Apache Hadoop Rumen ...............................
SUCCESS [20.543s]
[INFO] Apache Hadoop Gridmix .............................
SUCCESS [15.156s]
[INFO] Apache Hadoop Data Join ...........................
SUCCESS [9.968s]
[INFO] Apache Hadoop Extras ..............................
SUCCESS [9.504s]
[INFO] Apache Hadoop Pipes ...............................
SUCCESS [15.708s]
[INFO] Apache Hadoop Tools Dist ..........................
SUCCESS [5.261s]
[INFO] Apache Hadoop Tools ...............................
SUCCESS [0.268s]
[INFO] Apache Hadoop Distribution ........................
SUCCESS [1:15.418s]
[INFO] Apache Hadoop Client
.............................. SUCCESS [29.025s]
[INFO] Apache Hadoop
Mini-Cluster ........................ SUCCESS [0.735s]
[INFO]
------------------------------------------------------------------------
[INFO]
BUILD SUCCESS
[INFO]
------------------------------------------------------------------------
[INFO]
Total time: 34:15.365s
[INFO] Finished at: Fri May 16 16:15:37 CST
2014
[INFO] Final Memory: 101M/385M
[INFO]
------------------------------------------------------------------------
编译完毕会在
hadoop-2.2.0-src/hadoop-dist/target/
产生一个包
hadoop-2.2.0.tar.gz
这个包就是最终可部署的hadoop包
整个编程过程可能会出现中间失败的情况,有很多原因,有可能是因为连接主机下载依赖不成功。
可以尝试:mvn clean package -Pdist,native -DskipTests -Dtar
多来几次,就可以了。