** 環境:CentOS-x86_64位系統 hadoop版本:hadoop-2.6.0-src.tar.gz**java
因爲hadoop官網只提供32位版本,安裝後會出現一個錯誤,在64系統上運行會出錯:apache
WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
步驟以下 1.在Linux安裝依賴軟件: jdk-1.7和maven-3.3.3我是獨立安裝的 注意:若是用JDK1.8 編譯會報錯註釋標籤問題tomcat
yum install -y libprotobuf-dev protobuf-compiler cmake build-essential pkg-config libssl-dev zlib1g-dev llvm-gcc automake autoconf make
2.下載hadoop-2.6.0源碼bash
wget http://mirrors.cnnic.cn/apache/hadoop/common/hadoop-2.6.0/hadoop-2.6.0-src.tar.gz
3.下載完成後解壓app
tar -zxvf hadoop-2.6.0-src.tar.gz
4.進去入解壓後的文件目錄,並編譯maven
cd hadoop-2.6.0-src mvn package -DskipTests -Pdist,native -Dtar
這一步比較耗時,大概須要15~30分鐘。 正確執行的結果以下:oop
編譯好的二進制文件包位於: hadoop-2.6.0-src/hadoop-dist/target/hadoop-2.6.0.tar.gz 其餘版本編譯大概相同 備註: 使用自行編譯的Hadoop二進制包安裝Hadoop時須要刪除.bashrc文件與hadoop-env.sh文件中下面兩行(默認不會有這兩行,可是嘗試解決報錯時可能改寫了)ui
export HADOOP_COMMON_LIB_NATIVE_DIR="~/hadoop/lib/" export HADOOP_OPTS="$HADOOP_OPTS -Djava.library.path=~/hadoop/lib/"
------- OK -------code
出現的問題:orm
1.protobuf(2.3)版本太低 需安裝protobuf-2.5.0
2.tomcat6下載失敗報錯 手動下載apache-tomcat-6.0.41.tar.gz 放在hadoop-2.6.0-src/hadoop-common-project/hadoop-kms/downloads/ 目錄下
3.同上面第二個問題
由於下載很慢或失敗,仍是須要手動下載apache-tomcat-6.0.41.tar.gz後放在 hadoop-hdfs-project/hadoop-hdfs-httpfs/downloads/目錄下