Hadoop2.6.4 重新编译 64 位本地库

2018年6月27日
编译原理习题(含答案)——20代码生成——哈工大陈鄞配套版本
2018年6月27日
java书籍分享–助你成神
2018年6月27日

Hadoop2.6.4  重新编译 64  位本地库

解释在前:Hadoop只提供32位编译好的本地库,不提供64位编译好的本地库版本,我们需要用hadoop2.7.2源码进行64位本地库编译。

环境:虚拟机 VMware Pro,操作系统 64  CentOS 6.7
下载重新编译需要的软件包

资源整合:https://download.csdn.net/download/as1072966956/10494931

软件下载网站:http://archive.apache.org/dist/  
apache-ant-1.9.4-bin.tar.gz

apache-maven-3.0.5-bin.tar.gz
findbugs-3.0.0.tar.gz
protobuf-2.5.0.tar.gz

下载 Hadoop2.6.4 的源码包
hadoop-2.6.4-src.tar.gz

(附赠:cenos-6.5-hadoop-2.6.4.tar.gz
解压源码包
[root@mini61 ~]$ tar -zxvf hadoop-2.6.4-src.tar.gz
安装编译所需软件、 MAVEN
解压 apache-maven-3.0.5-bin.tar.gz /opt/目录
[root@mini61 grid]# tar -zxvf apache-maven-3.0.5-bin.tar.gz -C /opt/
修改/etc/profile 配置,增加 MAVEN 环境配置
M2_HOME   PATH

export M2_HOME=/opt/apache-maven-3.0.5

export PATH=$M2_HOME/bin:$PATH


保存后使用 source /etc/profile 使修改配置即时生效
[root@mini61 apache-maven-3.0.5]# source /etc/profile
使用 mvn -v 命令进行验证,如图所示表示安装配置成功


安装 ANT
压解 apache-ant-1.9.4-bin.tar.gz /opt/目录
[root@mini61 grid]# tar -zxvf apache-ant-1.9.4-bin.tar.gz -C /opt/
修改/etc/profile 配置,增加 ANT 环境配置
 ANT_HOME   PATH

export ANT_HOME=/opt/apache-ant-1.9.4

export PATH=$PATH:$ANT_HOME/bin


保存后使用 source /etc/profile 使修改配置即时生效
[root@mini61 apache-ant-1.9.4]# source /etc/profile
使用 ant-version 命令进行验证,如图所示表示安装配置成功


安装 FINDBUGS
压解 findbugs-3.0.0.tar.gz /opt/目录
[root@mini61 grid]# tar -zxvf findbugs-3.0.0.tar.gz -C /opt/
修改/etc/profile 配置,增加 FINDBUGS 环境配置
保存后使用 source /etc/profile 使修改配置即时生效
[root@mini61 apache-ant-1.9.4]# source /etc/profile
使用 findbugs-version 命令进行验证,如图所示表示安装配置成功

 


安装 PROTOBUF
编译 Hadoop 2.4.0,需要 protobuf 的编译器protoc,一定要是 protobuf 2.5.0 以上
直接压解 protobuf-2.5.0.tar.gz
[root@mini61 grid]# tar -zxvf protobuf-2.5.0.tar.gz
安装 protobuf,依次执行如下命令
[root@mini61 grid]# cd protobuf-2.5.0
[root@mini61 protobuf-2.5.0]# ./configure
[root@mini61 protobuf-2.5.0]# make
[root@mini61 protobuf-2.5.0]# make check
[root@mini61 protobuf-2.5.0]# make install
使用 protoc –version 命令进行验证,如图所示表示安装配置成功

安装 依赖包



安装 cmake,openssl-devel,ncurses-devel  依赖包(root  用户且能够连上互联网)
[root@mini61 ~]# yum install cmake
如下图表示安装成功


[root@mini61 ~]# yum install openssl-devel
如下图表示安装成功


[root@mini61 ~]# yum install ncurses-devel
如下图表示依赖包系统中已经安装并且为最新版本


编译 64  位本地库
进入已压解的 hadoop 源码目录

[root@mini61 ~]$ cd hadoop-2.4.0-src
[root@mini61 hadoop-2.4.0-src]$ pwd
/home/hadoop/apps/hadoop-2.6.4-src


执行 mvn clean install -DskipTests 命令,等待完成(比较久)
[root@mini61 hadoop-2.4.0-src]$ mvn clean install -DskipTests
执行 mvn package -Pdist,native -DskipTests -Dtar 命令,开始编译,等待完成
root@mini61 hadoop-2.4.0-src]$ mvn package -Pdist,native -DskipTests -Dtar
出现如下信息

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Apache Hadoop Main ................................ SUCCESS[6.304s]
[INFO] Apache Hadoop Project POM ......................... SUCCESS [26.555s]
[INFO] Apache Hadoop Annotations ......................... SUCCESS[2.757s]
[INFO] Apache Hadoop Assemblies .......................... SUCCESS [0.216s]
[INFO] Apache Hadoop Project Dist POM .................... SUCCESS [19.592s]
[INFO] Apache Hadoop Maven Plugins ....................... SUCCESS [2.715s]
[INFO] Apache Hadoop MiniKDC ............................. SUCCESS [2.360s]
[INFO] Apache Hadoop Auth ................................ SUCCESS [2.950s]
[INFO] Apache Hadoop Auth Examples ....................... SUCCESS[2.119s]
[INFO] Apache Hadoop Common .............................. SUCCESS [1:22.302s]
[INFO] Apache Hadoop NFS ................................. SUCCESS [5.095s]
[INFO] Apache Hadoop Common Project...................... SUCCESS [0.026s]
[INFO] Apache Hadoop HDFS ................................ SUCCESS [2:06.178s]
[INFO] Apache Hadoop HttpFS .............................. SUCCESS [1:09.142s]
[INFO] Apache Hadoop HDFS BookKeeper Journal ............. SUCCESS [14.457s]
[INFO] Apache Hadoop HDFS-NFS ............................SUCCESS [2.859s]
[INFO] Apache Hadoop HDFS Project ........................ SUCCESS [0.030s]
[INFO] hadoop-yarn ....................................... SUCCESS [0.029s]
[INFO] hadoop-yarn-api ................................... SUCCESS [59.010s]
[INFO] hadoop-yarn-common ................................ SUCCESS [20.743s]
[INFO] hadoop-yarn-server ................................ SUCCESS[0.026s]
[INFO] hadoop-yarn-server-common ......................... SUCCESS [7.344s]
[INFO] hadoop-yarn-server-nodemanager .................... SUCCESS [11.726s]
[INFO] hadoop-yarn-server-web-proxy ...................... SUCCESS [2.508s]
[INFO] hadoop-yarn-server-applicationhistoryservice ...... SUCCESS [4.041s]
[INFO] hadoop-yarn-server-resourcemanager ................ SUCCESS [10.370s]
[INFO] hadoop-yarn-server-tests .......................... SUCCESS [0.374s]
[INFO] hadoop-yarn-client ................................ SUCCESS [4.791s]
[INFO] hadoop-yarn-applications .......................... SUCCESS [0.025s]
[INFO] hadoop-yarn-applications-distributedshell ......... SUCCESS [2.242s]
[INFO] hadoop-yarn-applications-unmanaged-am-launcher .... SUCCESS [1.553s]
[INFO] hadoop-yarn-site .................................. SUCCESS [0.024s]
[INFO] hadoop-yarn-project ............................... SUCCESS [3.261s]
[INFO] hadoop-mapreduce-client ........................... SUCCESS [0.082s]
[INFO] hadoop-mapreduce-client-core ...................... SUCCESS [18.549s]
[INFO] hadoop-mapreduce-client-common .................... SUCCESS [13.772s]
[INFO] hadoop-mapreduce-client-shuffle ................... SUCCESS [2.441s]
[INFO] hadoop-mapreduce-client-app ....................... SUCCESS [6.866s]
[INFO] hadoop-mapreduce-client-hs ........................ SUCCESS [6.280s]
[INFO] hadoop-mapreduce-client-jobclient .................SUCCESS [3.510s]
[INFO] hadoop-mapreduce-client-hs-plugins ................ SUCCESS [1.725s]
[INFO] Apache Hadoop MapReduce Examples .................. SUCCESS [4.641s]
[INFO] hadoop-mapreduce .................................. SUCCESS[3.002s]
[INFO] Apache Hadoop MapReduce Streaming ................. SUCCESS [3.497s]
[INFO] Apache Hadoop Distributed Copy .................... SUCCESS [5.847s]
[INFO] Apache Hadoop Archives ............................ SUCCESS [1.791s]
[INFO] Apache Hadoop Rumen ............................... SUCCESS [4.693s]
[INFO] Apache Hadoop Gridmix ............................. SUCCESS [3.235s]
[INFO] Apache Hadoop Data Join........................... SUCCESS [2.349s]
[INFO] Apache Hadoop Extras .............................. SUCCESS [2.488s]
[INFO] Apache Hadoop Pipes ............................... SUCCESS [5.863s]
[INFO] Apache Hadoop OpenStack support ................... SUCCESS [3.776s]
[INFO] Apache Hadoop Client .............................. SUCCESS [5.235s]
[INFO] Apache Hadoop Mini-Cluster ........................ SUCCESS [0.070s]
[INFO] Apache Hadoop Scheduler Load Simulator ............ SUCCESS [3.935s]
[INFO] Apache Hadoop Tools Dist .......................... SUCCESS [4.392s]
[INFO] Apache Hadoop Tools ............................... SUCCESS [0.022s]
[INFO] Apache Hadoop Distribution ........................ SUCCESS [21.274s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 25:40.708s

[INFO] Finished at: Sun Jun 24 20:00:54 CST 2018

[INFO] Final Memory: 96M/237M
[INFO] ------------------------------------------------------------------------

 


表示编译成功(出错的话请把内存调高重新执行)
进入/home/grid/hadoop-2.4.0-src/hadoop-dist/target/hadoop-2.4.0/lib/native 检查,使用 file *命令,如下图已经成功将编译 64 本地库


 64 位的 native 文件夹替换原 32 位的文件夹即可

[root@mini61 native]# pwd

/home/hadoop/apps/hadoop-2.6.4-src/hadoop-dist/target/hadoop-2.6.4/lib/native

#/home/hadoop/apps/hadoop-2.6.4/lib/native

[root@mini61native]#\cp-rf/home/hadoop/apps/hadoop-2.6.4-src/hadoop-dist/target/hadoop-2.6.4/lib/native/ /home/hadoop/apps/hadoop-2.6.4/lib/native/

发表评论

电子邮件地址不会被公开。 必填项已用*标注