Hadoop 源码编译
一、为什么需要源码编译
http://hadoop.apache.org/docs/r1.0.4/cn/native_libraries.html
二、怎么编译?
1 、基础环境
yum install wget g++ autoconf automake libtool cmake zlib1g-dev pkg-config openssl-devel gcc-c++ zlib-devel ncurses-devel openssl-devel
2、 下载源码包 ,并上传到Linux 中
http://hadoop.apache.org/ Apache官方网站
http://archive.apache.org/dist/ Apache归档
在上述网站中均可下载到Hadoop的源码包
3、安装JDK,并且配置环境变量
export HADOOP_HOME=/home/hadoop/hadoop-2.6.0
export JAVA_HOME=/home/java/jdk1.8.0_181
export MAVEN_HOME=/home/maven/apache-maven-3.3.9/
export M2_HOME=/home/maven/apache-maven-3.3.9/
export FINDBUGS_HOME=/home/findbugs/findbugs-3.0.1/
export PATH=$PATH:$NODE_HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$MAVEN_HOME/bin:$M2_HOME/bin:$FINDBUGS_HOME/bin
4、安装 Maven (版本:3.3.9)
Maven可以配置阿里云镜像
需要配置环境变量
MAVEN_HOME
M2_HOME
PATH
<mirrors>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors>
5、安装 protobuf (版本:2.5)
https://github.com/protocolbuffers/protobuf 官方网站中很难找到2.5
https://pan.baidu.com/s/1pJlZubT 百度云
解压
编译
./configure --prefix=/home/protobuf/protobuf-2.5.0
make
make check
make install
cd bin 查看版本 ./protoc --version
配置环境变量
6、安装 findbugs (版本 : 3.0.1)
http://findbugs.sourceforge.net/downloads.html
配置环境变量
export FINDBUGS_HOME=/home/findbugs/findbugs-3.0.1/
export PATH=$FINDBUGS_HOME/bin
7、开始编译
# 设置maven可以用内存
export MAVEN_OPTS="-Xms256m -Xmx512m"
在Hadoop 源码根目录中运行 此命令
# 编译命令
mvn clean package -Pdist,native -DskipTests -Dtar -Dmaven.javadoc.skip=true
如果出现tomcat下载速度过慢
将已经准备好的tomcat 直接放入此目录即可
/home/hadoop/hadoop-2.6.0-src/hadoop-common-project/hadoop-kms/downloads/
如果第二次出现tomcat下载速度过慢
将已经准备好的tomcat 直接放入此目录即可
/home/hadoop/hadoop-2.6.0-src/hadoop-hdfs-project/hadoop-hdfs-httpfs/downloads/
8、编译成功
最后编译完成后 已经编译好的安装包存在此目录
/home/hadoop/hadoop-2.6.0-src/hadoop-dist/target/
今天晚上加个班明天有惊喜
三连 有吗~