安裝單節點Hadoop教學 - twilighthook/BigDataNote GitHub Wiki

Hadoop安裝總共分成三種:

  1. 單機模式(Standalone mode, local mode)   這種模式下不會有背景城市運行在JVM中。單機模式適合用於開發MapReduce程式,因為易於測試與除錯。
  2. 偽分散模式(Pseudo-distributed mode)   Hadoop服務運行於本機,可以模擬成小規模的叢集。
  3. 完全分散模式(Fully distributed mode)   Hadoop服務運行在一座叢集的主機上,真正的hdfs系統。

這篇主要是安裝單節點的Hadoop教學,與分散式的不同,單機模式只需設定最基本的參數就能運行測試文件。

1. 安裝java和Hadoop

可以用下面這段安裝default的JAVA

sudo apt install default-jdk

安裝後可以用指令查看JAVA安裝版本

java -version

安裝前先到要安裝Hadoop的位置

sudo tar -zxvf hadoop-2.6.0.tar.gz

然後需要一個tmp位置和hdfs(分散式儲存系統)裡面的data和name

sudo mkdir tmp hdfs hdfs/name hdfs/data

這裡可用sudo chown hadoop(user name) * 將全部的資料夾給予hadoop使用者

2. 設置java和Hadoop環境Path

sudo vim ~/.bashrc

加入下面的環境配置

# Set HADOOP_HOME
export HADOOP_HOME=/opt/hadoop
# Set JAVA_HOME 
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
# Add Hadoop bin and sbin directory to PATH
export PATH=$PATH:$HADOOP_HOME/bin;$HADOOP_HOME/sbin
export HADOOP_CLASSPATH=$JAVA_HOME/lib/tools.jar

Hadoop 的檔案 (hadoop-env.sh) 也要加入 Java 環境變數

sudo vim /opt/hadoop/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

3. 建立test資料夾

sudo mkdir test test/input test/output

接下來就可以進行MapReduce的程式測試了!