Hadoop-CDH源碼編譯
* Hadoop-CDH源碼編譯
這一節我們主要講解一下根據CDH源碼包手動編譯的過程,至於為什麽要使用CDH,前幾節已經說明,那為什麽又要自己手動編譯,因為CDH的5.3.6對應的Hadoop2.5.0沒有native動態庫,很多壓縮功能無法使用。
* 首先源碼包下載:
http://archive.cloudera.com/cdh5/cdh/5/
找到對應的 :hadoop-2.5.0-cdh5.3.6-src.tar.gz開始下載即可。
* 下載完成後解壓該軟件包,註意目錄權限問題
解壓後,我的目錄結構如圖:
* 查看BUILDING.txt文件,重要內容如下:
註意:該部分描述的內容是編譯這個版本的CDH所需的環境
編譯環境所需軟件打包下載傳送門:
鏈接:http://pan.baidu.com/s/1jI1bHPG 密碼:i8z8
* Findebugs安裝:
$ unzip -o -d /opt/modules/ /opt/softwares/findbugs-1.3.9.zip
* ProtocolBuffer 2.5.0安裝
$ ./configure --prefix=/opt/modules/protobuf-2.5.0
$ make && make install
如果,在執行以上命令時,如果出現編譯錯誤,可能編譯工具補全導致的,請安裝:
# yum install gcc
# yum install gcc-c++
# yum install cmake
* 安裝snappy
先下載:
https://github.com/electrum/hadoop-snappy
指定的一個安裝目錄,默認是根目錄:
./configure --prefix=/opt/modules/snappy
make && make install
mvn package -Dsnappy.prefix=/opt/modules/snappy
* 最後兩個依賴:
# yum -y install zlib-devel
# yum -y install openssl
最後我的環境變量配置如圖:
註意,JDK我臨時用了1.7的,因為1.8的編譯會出現錯誤* 編譯
Maven的setttings.xml中的mirror配置:
使用命令進行編譯:
$ mvn package -Pdist,native,docs -DskipTests -Dtar
在編譯過程中可能出現種種錯誤,比如tomcat依賴包下載不下來,或者各種依賴包下載不下來,可以自行下載報錯的依賴然後放置到指定目錄,以及刪除報錯對應目錄下的x.lastUpdated文件。祝你好運:)(我從沒遇見過1次就編譯成功的)
最後,想省勁,或者在使用本教程的過程中想直接解決找不到native錯誤問題的,直接下載編譯好的即可,註意最後要放在Hadoop的對應目錄下:
鏈接:http://pan.baidu.com/s/1dEDgZBj 密碼:x27z
個人微博:http://weibo.com/seal13
QQ大數據技術交流群(廣告勿入):476966007
作者:Z盡際
鏈接:https://www.jianshu.com/p/a300bceb1caf
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請註明出處。
Hadoop-CDH源碼編譯