CentOS下編譯hadoop-2.9.2

CentOS 下編譯 Hadoop

系統環境

系統: CentOS-7.3_x86_64
protobuf: protoc-2.5.0
maven: maven-3.6.0
hadoop: hadoop-2.9.2
java: jdk1.8.0_131
cmake: cmake-2.8.12.2
OpenSSL: OpenSSL 1.0.2k-fips
findbugs: findbugs-1.3.9

準備工作

# 安裝編譯需要的依賴庫
yum install -y lzo-devel zlib-devel autoconf automake libtool cmake openssl-devel cmake gcc gcc-c++

安裝maven

# 下載maven
$ wget https://mirrors.shu.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.tar.gz

# 解壓縮
$ tar -zxvf apache-maven-3.6.0-bin.tar.gz -C /usr/local/

# 配置到系統環境變量
$ vim /etc/profile

export MAVEN_HOME=/usr/local/apache-maven-3.6.0
export PATH=$PATH:$MAVEN_HOME/bin

# 刷新配置文件 
$ source /etc/profile

# 驗證maven安裝是是否成功
$ mvn -version

[root@localhost ~]# mvn -version
Apache Maven 3.6.0 (ff8f5e7444045639af65f6095c62210b5713f426; 2018-10-25T03:39:06+08:00)
Maven home: /usr/local/apache-maven-3.6.0
Java version: 1.8.0_131, vendor: Oracle Corporation
Java home: /usr/local/jdk1.8.0_131/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.20.13-1.el7.elrepo.x86_64", arch: "amd64", family: "unix"

安裝protobuf

# 安裝依賴環境
$ yum groupinstall Development tools -y

# 下載
$ https://github.com/protocolbuffers/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gz

# 解壓縮
$ tar -zxvf protobuf-2.5.0.tar.gz

# 進入解壓目錄 配置安裝路徑(--prefix=/usr/local/protobuf-2.5.0)
$ ./configure --prefix=/usr/local/protobuf-2.5.0

# 編譯
$ make

# 驗證編譯文件
$ make check

# 安裝
$ make install

# 配置protobuf環境變量
$ vim /etc/profile

# 刷新配置文件 
$ source /etc/profile

export PROTOCBUF_HOME=/usr/local/protobuf-2.5.0
export PATH=$PATH:$PROTOCBUF_HOME/bin

# 驗證是否安裝成功
$ protoc --version

[root@localhost ~]# protoc --version
libprotoc 2.5.0

安裝findbugs


# 下載
$ https://jaist.dl.sourceforge.net/project/findbugs/findbugs/1.3.9/findbugs-1.3.9.tar.gz

# 解壓縮
$ tar -zxvf findbugs-1.3.9.tar.gz -C /usr/local/findbugs-1.3.9

# 配置系統環境變量
$ vim /etc/profile

export FINDBUGS_HOME=/usr/local/findbugs-1.3.9
export PATH=$PATH:$FINDBUGS_HOME/bin

# 刷新配置文件 
$ source /etc/profile

# 驗證是否安裝成功
$ findbugs -version

[root@localhost ~]# findbugs -version
1.3.9

編譯hadoop


# 下載hadoop的源碼
$ wget https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-2.9.2/hadoop-2.9.2-src.tar.gz

# 解壓縮源碼
$ tar -zxvf hadoop-2.9.2-src.tar.gz

# 進入hadoop的源碼目錄開始編譯
$ mvn package -Pdist,native -DskipTests -Dtar

# 編譯完成

[INFO] Reactor Summary:
[INFO] 
[INFO] Apache Hadoop Main ................................. SUCCESS [ 36.760 s]
[INFO] Apache Hadoop Build Tools .......................... SUCCESS [ 22.223 s]
[INFO] Apache Hadoop Project POM .......................... SUCCESS [ 10.227 s]
[INFO] Apache Hadoop Annotations .......................... SUCCESS [ 10.297 s]
[INFO] Apache Hadoop Assemblies ........................... SUCCESS [  0.291 s]
[INFO] Apache Hadoop Project Dist POM ..................... SUCCESS [ 17.249 s]
[INFO] Apache Hadoop Maven Plugins ........................ SUCCESS [ 16.091 s]
[INFO] Apache Hadoop MiniKDC .............................. SUCCESS [01:55 min]
[INFO] Apache Hadoop Auth ................................. SUCCESS [01:23 min]
[INFO] Apache Hadoop Auth Examples ........................ SUCCESS [  5.916 s]
[INFO] Apache Hadoop Common ............................... SUCCESS [02:48 min]
[INFO] Apache Hadoop NFS .................................. SUCCESS [  7.323 s]
[INFO] Apache Hadoop KMS .................................. SUCCESS [ 21.010 s]
[INFO] Apache Hadoop Common Project ....................... SUCCESS [  0.077 s]
[INFO] Apache Hadoop HDFS Client .......................... SUCCESS [01:05 min]
[INFO] Apache Hadoop HDFS ................................. SUCCESS [01:12 min]
[INFO] Apache Hadoop HDFS Native Client ................... SUCCESS [  2.842 s]
[INFO] Apache Hadoop HttpFS ............................... SUCCESS [ 24.130 s]
[INFO] Apache Hadoop HDFS BookKeeper Journal .............. SUCCESS [ 16.353 s]
[INFO] Apache Hadoop HDFS-NFS ............................. SUCCESS [  5.314 s]
[INFO] Apache Hadoop HDFS-RBF ............................. SUCCESS [ 29.657 s]
[INFO] Apache Hadoop HDFS Project ......................... SUCCESS [  0.063 s]
[INFO] Apache Hadoop YARN ................................. SUCCESS [  0.075 s]
[INFO] Apache Hadoop YARN API ............................. SUCCESS [ 14.514 s]
[INFO] Apache Hadoop YARN Common .......................... SUCCESS [01:14 min]
[INFO] Apache Hadoop YARN Registry ........................ SUCCESS [  6.258 s]
[INFO] Apache Hadoop YARN Server .......................... SUCCESS [  0.072 s]
[INFO] Apache Hadoop YARN Server Common ................... SUCCESS [ 36.000 s]
[INFO] Apache Hadoop YARN NodeManager ..................... SUCCESS [ 14.787 s]
[INFO] Apache Hadoop YARN Web Proxy ....................... SUCCESS [  4.074 s]
[INFO] Apache Hadoop YARN ApplicationHistoryService ....... SUCCESS [ 19.797 s]
[INFO] Apache Hadoop YARN Timeline Service ................ SUCCESS [ 10.855 s]
[INFO] Apache Hadoop YARN ResourceManager ................. SUCCESS [ 22.955 s]
[INFO] Apache Hadoop YARN Server Tests .................... SUCCESS [  1.288 s]
[INFO] Apache Hadoop YARN Client .......................... SUCCESS [  6.973 s]
[INFO] Apache Hadoop YARN SharedCacheManager .............. SUCCESS [  4.901 s]
[INFO] Apache Hadoop YARN Timeline Plugin Storage ......... SUCCESS [  4.682 s]
[INFO] Apache Hadoop YARN Router .......................... SUCCESS [  5.892 s]
[INFO] Apache Hadoop YARN TimelineService HBase Backend ... SUCCESS [01:06 min]
[INFO] Apache Hadoop YARN Timeline Service HBase tests .... SUCCESS [ 16.535 s]
[INFO] Apache Hadoop YARN Applications .................... SUCCESS [  0.052 s]
[INFO] Apache Hadoop YARN DistributedShell ................ SUCCESS [  3.429 s]
[INFO] Apache Hadoop YARN Unmanaged Am Launcher ........... SUCCESS [  2.224 s]
[INFO] Apache Hadoop YARN Site ............................ SUCCESS [  0.042 s]
[INFO] Apache Hadoop YARN UI .............................. SUCCESS [  0.052 s]
[INFO] Apache Hadoop YARN Project ......................... SUCCESS [  7.005 s]
[INFO] Apache Hadoop MapReduce Client ..................... SUCCESS [  0.213 s]
[INFO] Apache Hadoop MapReduce Core ....................... SUCCESS [ 20.400 s]
[INFO] Apache Hadoop MapReduce Common ..................... SUCCESS [ 18.649 s]
[INFO] Apache Hadoop MapReduce Shuffle .................... SUCCESS [  4.872 s]
[INFO] Apache Hadoop MapReduce App ........................ SUCCESS [  9.835 s]
[INFO] Apache Hadoop MapReduce HistoryServer .............. SUCCESS [  6.539 s]
[INFO] Apache Hadoop MapReduce JobClient .................. SUCCESS [  5.527 s]
[INFO] Apache Hadoop MapReduce HistoryServer Plugins ...... SUCCESS [  2.240 s]
[INFO] Apache Hadoop MapReduce Examples ................... SUCCESS [  6.176 s]
[INFO] Apache Hadoop MapReduce ............................ SUCCESS [  2.566 s]
[INFO] Apache Hadoop MapReduce Streaming .................. SUCCESS [  8.532 s]
[INFO] Apache Hadoop Distributed Copy ..................... SUCCESS [  8.918 s]
[INFO] Apache Hadoop Archives ............................. SUCCESS [  2.482 s]
[INFO] Apache Hadoop Archive Logs ......................... SUCCESS [  2.645 s]
[INFO] Apache Hadoop Rumen ................................ SUCCESS [  6.271 s]
[INFO] Apache Hadoop Gridmix .............................. SUCCESS [  4.607 s]
[INFO] Apache Hadoop Data Join ............................ SUCCESS [  3.110 s]
[INFO] Apache Hadoop Ant Tasks ............................ SUCCESS [  2.631 s]
[INFO] Apache Hadoop Extras ............................... SUCCESS [  3.344 s]
[INFO] Apache Hadoop Pipes ................................ SUCCESS [  0.479 s]
[INFO] Apache Hadoop OpenStack support .................... SUCCESS [  5.677 s]
[INFO] Apache Hadoop Amazon Web Services support .......... SUCCESS [01:57 min]
[INFO] Apache Hadoop Azure support ........................ SUCCESS [ 25.907 s]
[INFO] Apache Hadoop Aliyun OSS support ................... SUCCESS [ 30.414 s]
[INFO] Apache Hadoop Client ............................... SUCCESS [  7.438 s]
[INFO] Apache Hadoop Mini-Cluster ......................... SUCCESS [  1.394 s]
[INFO] Apache Hadoop Scheduler Load Simulator ............. SUCCESS [  8.115 s]
[INFO] Apache Hadoop Resource Estimator Service ........... SUCCESS [ 10.685 s]
[INFO] Apache Hadoop Azure Data Lake support .............. SUCCESS [ 18.561 s]
[INFO] Apache Hadoop Tools Dist ........................... SUCCESS [ 18.124 s]
[INFO] Apache Hadoop Tools ................................ SUCCESS [  0.245 s]
[INFO] Apache Hadoop Distribution ......................... SUCCESS [01:01 min]
[INFO] Apache Hadoop Cloud Storage ........................ SUCCESS [  1.359 s]
[INFO] Apache Hadoop Cloud Storage Project ................ SUCCESS [  0.028 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 25:06 min
[INFO] Finished at: 2019-03-21T11:54:52+08:00
[INFO] Final Memory: 135M/384M
[INFO] ------------------------------------------------------------------------
[root@localhost hadoop-2.9.2-src]# 

# 編譯完成的文件在hadoop-dist/target/目錄下
$ ll hadoop-dist/target/

[root@localhost hadoop-2.9.2-src]# ll hadoop-dist/target/
total 949892
drwxr-xr-x 2 root root      4096 Mar 21 11:53 antrun
drwxr-xr-x 3 root root      4096 Mar 21 11:53 classes
-rw-r--r-- 1 root root      2209 Mar 21 11:53 dist-layout-stitching.sh
-rw-r--r-- 1 root root       635 Mar 21 11:53 dist-tar-stitching.sh
drwxr-xr-x 9 root root      4096 Mar 21 11:53 hadoop-2.9.2
-rw-r--r-- 1 root root 323710978 Mar 21 11:54 hadoop-2.9.2.tar.gz
-rw-r--r-- 1 root root     31694 Mar 21 11:53 hadoop-dist-2.9.2.jar
-rw-r--r-- 1 root root 648827621 Mar 21 11:54 hadoop-dist-2.9.2-javadoc.jar
-rw-r--r-- 1 root root     29003 Mar 21 11:54 hadoop-dist-2.9.2-sources.jar
-rw-r--r-- 1 root root     29003 Mar 21 11:54 hadoop-dist-2.9.2-test-sources.jar
drwxr-xr-x 2 root root      4096 Mar 21 11:54 javadoc-bundle-options
drwxr-xr-x 2 root root      4096 Mar 21 11:53 maven-archiver
drwxr-xr-x 3 root root      4096 Mar 21 11:53 maven-shared-archive-resources
drwxr-xr-x 3 root root      4096 Mar 21 11:53 test-classes
drwxr-xr-x 2 root root      4096 Mar 21 11:53 test-dir

總結

到此hadoop的編譯已經完成 過程中遇到了很多各種各樣的問題上述步驟都是經過驗證的如在安裝過程中遇到問題可以留言,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章