apache hadoop 軟體庫是一個架構,它允許使用簡單的程式設計模型在計算機叢集上對大型資料集進行分布式處理。apache™ hadoop® 是可靠、可擴充、分布式計算的開源軟體。
該項目包括以下子產品:
hadoop common:支援其他 hadoop 子產品的常用工具。
hadoop 分布式檔案系統 (hdfs™):分布式檔案系統,可提供對應用程式資料的高吞吐量通路支援。
hadoop yarn:作業排程和叢集資源管理架構。
hadoop mapreduce:一個基于 yarn 的大型資料集并行處理系統。
本文将幫助你逐漸在 centos 上安裝 hadoop 并配置單節點 hadoop 叢集。
安裝 java
在安裝 hadoop 之前,請確定你的系統上安裝了 java。使用此指令檢查已安裝 java 的版本。
java -version
java version "1.7.0_75"
java(tm) se runtime environment (build 1.7.0_75-b13)
java hotspot(tm) 64-bit server vm (build 24.75-b04, mixed mode)
要安裝或更新 java,請參考下面逐漸的說明。
第一步是從 oracle 官方網站下載下傳最新版本的 java。
cd /opt/
wget --no-cookies --no-check-certificate --header "cookie: gpw_e24=http%3a%2f%2fwww.oracle.com%2f; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz"
tar xzf jdk-7u79-linux-x64.tar.gz
需要設定使用更新版本的 java 作為替代。使用以下指令來執行此操作。
cd /opt/jdk1.7.0_79/
alternatives --install /usr/bin/java java /opt/jdk1.7.0_79/bin/java 2
alternatives --config java
there are 3 programs which provide 'java'.
selection command
-----------------------------------------------
* 1 /opt/jdk1.7.0_60/bin/java
+ 2 /opt/jdk1.7.0_72/bin/java
3 /opt/jdk1.7.0_79/bin/java
enter to keep the current selection[+], or type selection number: 3 [press enter]
現在你可能還需要使用 alternatives 指令設定 javac 和 jar 指令路徑。
alternatives --install /usr/bin/jar jar /opt/jdk1.7.0_79/bin/jar 2
alternatives --install /usr/bin/javac javac /opt/jdk1.7.0_79/bin/javac 2
alternatives --set jar /opt/jdk1.7.0_79/bin/jar
alternatives --set javac /opt/jdk1.7.0_79/bin/javac
下一步是配置環境變量。使用以下指令正确設定這些變量。
設定 java_home 變量:
export java_home=/opt/jdk1.7.0_79
設定 jre_home 變量:
export jre_home=/opt/jdk1.7.0_79/jre
設定 path 變量:
export path=$path:/opt/jdk1.7.0_79/bin:/opt/jdk1.7.0_79/jre/bin
安裝 apache hadoop
設定好 java 環境後。開始安裝 apache hadoop。
第一步是建立用于 hadoop 安裝的系統使用者帳戶。
useradd hadoop
passwd hadoop
現在你需要配置使用者 hadoop 的 ssh 密鑰。使用以下指令啟用無需密碼的 ssh 登入。
su - hadoop
ssh-keygen -t rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
exit
現在從官方網站 hadoop.apache.org 下載下傳 hadoop 最新的可用版本。
cd ~
wget http://apache.claz.org/hadoop/common/hadoop-2.6.0/hadoop-2.6.0.tar.gz
tar xzf hadoop-2.6.0.tar.gz
mv hadoop-2.6.0 hadoop
下一步是設定 hadoop 使用的環境變量。
編輯 ~/.bashrc,并在檔案末尾添加以下這些值。
export hadoop_home=/home/hadoop/hadoop
export hadoop_install=$hadoop_home
export hadoop_mapred_home=$hadoop_home
export hadoop_common_home=$hadoop_home
export hadoop_hdfs_home=$hadoop_home
export yarn_home=$hadoop_home
export hadoop_common_lib_native_dir=$hadoop_home/lib/native
export path=$path:$hadoop_home/sbin:$hadoop_home/bin
在目前運作環境中應用更改。
source ~/.bashrc
編輯 $hadoop_home/etc/hadoop/hadoop-env.sh 并設定 java_home 環境變量。
export java_home=/opt/jdk1.7.0_79/
現在,先從配置基本的 hadoop 單節點叢集開始。
首先編輯 hadoop 配置檔案并進行以下更改。
cd /home/hadoop/hadoop/etc/hadoop
讓我們編輯 core-site.xml。
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
接着編輯 hdfs-site.xml:
<name>dfs.replication</name>
<value>1</value>
<name>dfs.name.dir</name>
<value>file:///home/hadoop/hadoopdata/hdfs/namenode</value>
<name>dfs.data.dir</name>
<value>file:///home/hadoop/hadoopdata/hdfs/datanode</value>
并編輯 mapred-site.xml:
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
最後編輯 yarn-site.xml:
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
現在使用以下指令格式化 namenode:
hdfs namenode -format
要啟動所有 hadoop 服務,請使用以下指令:
cd /home/hadoop/hadoop/sbin/start-dfs.shstart-yarn.sh
要檢查所有服務是否正常啟動,請使用 jps 指令:
jps
你應該看到這樣的輸出。
26049 secondarynamenode
25929 datanode
26399 jps
26129 jobtracker
26249 tasktracker
25807 namenode
現在,你可以在浏覽器中通路 hadoop 服務:http://your-ip-address:8088/ 。
hadoop
謝謝閱讀!!!
作者:anismaj
來源:51cto