3-1.Hadoop單機模式安裝

Andy--Wong發表於2018-06-19

Hadoop單機模式安裝

一、實驗介紹

1.1 實驗內容

  • hadoop三種安裝模式介紹
  • hadoop單機模式安裝
  • 測試安裝

1.2 實驗知識點

  • 下載解壓/環境變數配置
  • Linux/shell
  • 測試WordCount程式

1.3 實驗環境

  • hadoop2.7.6
  • Linux CentOS6終端

1.4 適合人群

本課程難度為一般,屬於初級級別課程,適合具有linux基礎的使用者。

1.5 相關檔案

  • https://pan.baidu.com/s/1a_Pjl8uJ2d_-r1hbN05fWA

二、Hadoop啟動模式

Hadoop叢集有三種啟動模式:

  • 單機模式:預設情況下執行為一個單獨機器上的獨立Java程式,主要用於除錯環境
  • 偽分佈模式:在單個機器上模擬成分散式多節點環境,每一個Hadoop守護程式都作為一個獨立的Java程式執行
  • 完全分散式模式:真實的生產環境,搭建在完全分散式的叢集環境

三、使用者及使用者組

需要先新增用來執行Hadoop程式的使用者組hadoop及使用者hadoop。

3.1 新增使用者及使用者組

建立使用者hadoop

# adduser hadoop

# passwd

並按照提示輸入hadoop使用者的密碼,例如密碼設定為 hadoop。注意輸入密碼的時候是不顯示的。

將hadoop使用者新增進sudo使用者組

# usermod -G sudo hadoop

四、安裝及配置依賴的軟體包

4.1 安裝jdk

#  yum install java-1.8.0-openjdk* -y

# echo $JAVA_HOME

$ java -version

4.2 配置ssh免密碼登入

切換到 hadoop 使用者,hadoop 使用者時密碼為 hadoop。後續步驟都將在 hadoop 使用者的環境中執行。

$ su  hadoop # 密碼為hadoop

配置ssh環境免密碼登入。 在/home/hadoop目錄下執行

$cd ~

$ ssh-keygen -t rsa   #一路回車

$ cat .ssh/id_rsa.pub >> .ssh/authorized_keys

$ chmod 600 .ssh/authorized_keys

驗證登入本機是否還需要密碼,第一次需要密碼以後不需要密碼就可以登入。

$ sudo vi /etc/ssh/sshd_config

         ListenAddress 127.0.0.1 #新增ssh這行監聽本機

$ ssh localhost #僅需輸入一次hadoop密碼,以後不需要輸入

五、下載並安裝Hadoop

在hadoop使用者登入的環境中進行下列操作:

5.1 下載Hadoop 2.7.6

 

$  wget http://labfile.oss.aliyuncs.com/hadoop-2.7.6.tar.gz

5.2 解壓並安裝

$ tar -zxvf hadoop-2.7.6.tar.gz

$ rm -r /home/hadoop/hdfs  #刪除原本目錄中的hdfs資料夾

$ mv hadoop-2.7.6 /home/hadoop/hdfs

$ chmod 777 /home/hadoop/hdfs

5.3 配置Hadoop

$ vim /home/hadoop/.bashrc

在/home/hadoop/.bashrc檔案末尾新增下列內容:

#HADOOP START

export HADOOP_HOME=/home/hadoop/hdfs

#export JAVA_HOME=/usr/lib/jvm/java-8-oracle

#HADOOP END

在/home/hadoop/.bashrc檔案中PATH路徑更改HADOOP相關內容:

export PATH=/usr/local/sbin:/usr/local/bin/:/usr/bin:/usr/sbin:/sbin:/bin:/home/hadoop/hdfs/bin:/home/hadoop/hdfs/sbin

環境中的hive以及hbase等環境本次實驗不會用到可以刪去,儲存退出後,啟用新加的環境變數。

$ source ~/.bashrc

至此,Hadoop單機模式安裝完成,可以通過下述步驟的測試來驗證安裝是否成功。

六、測試驗證

建立輸入的資料,暫時採用/etc/protocols檔案作為測試

$ cd /home/hadoop/hdfs

$ mkdir input

$ cp /etc/protocols ./input

執行Hadoop WordCount應用(詞頻統計)

$ hadoop jar /home/hadoop/hdfs/share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.7.6-sources.jar wordcount input output

若以上語句執行錯誤可以嘗試應用以下語句執行

$ hadoop jar /home/hadoop/hdfs/share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.7.6-sources.jar  org.apache.hadoop.examples.WordCount input output

檢視生成的單詞統計資料

$ cat output/*

注意:如果要繼續下一節“偽分散式部署”實驗,請勿停止本實驗環境,直接點選文件上方的“下一個實驗”按鈕進入,因為偽分散式部署模式需要在單機模式基礎上進行配置。

七、小結

本實驗中介紹了Hadoop單機模式的安裝方法,並執行wordcount進行基本測試。

八、課後作業

請使用hadoop的wordcount對日誌檔案/var/log/dpkg.log進行詞頻統計。

九、參考文件

本實驗參考下列文件內容製作:

實驗樓練習平臺:http://www.shiyanlou.com/register?inviter=NTY0MzE5NjA1NjM3

 

相關文章