1. 程式人生 > >Hadoop安裝教程_單機/偽分散式配置_hadoop-2.7.5/Ubuntu14.04

Hadoop安裝教程_單機/偽分散式配置_hadoop-2.7.5/Ubuntu14.04

    本篇部落格為學習總結部落格,學習字源來自廈門大學資料庫實驗室,連結為:http://dblab.xmu.edu.cn/blog/install-hadoop/

    十分感謝!!!

一、 建立新使用者

    首先按 ctrl+alt+t 開啟終端視窗,輸入如下命令建立新使用者 :

    $ sudo useradd -m hadoop -s /bin/bash

    sudo是ubuntu中一種許可權管理機制,管理員可以授權給一些普通使用者去執行一些需要root許可權執行的操作。  
接著使用如下命令設定密碼,可簡單設定為 hadoop,按提示輸入兩次密碼:

    $ sudo passwd hadoop

    $ sudo adduser hadoop sudo

    更新apt
    sudo apt-get update 

    後續需要更改一些配置檔案,我比較喜歡用的是 vim(vi增強版,基本用法相同),建議安裝一下(如果你實在還不會用 vi/vim 的,請將後面用到 vim 的地方改為 gedit,這樣可以使用文字編輯器進行修改,並且每次檔案更改完成後請關閉整個 gedit 程式,否則會佔用終端):
    sudo apt-get install vim

二、 安裝SSH、配置SSH無密碼登陸

    叢集、單節點模式都需要用到 SSH 登陸(類似於遠端登陸,你可以登入某臺 Linux 主機,並且在上面執行命令),Ubuntu 預設已安裝了 SSH client,此外還需要安裝 SSH server:

    $ sudo apt-get install openssh-server


    安裝後,可以使用如下命令登陸本機:

    ssh localhost


但這樣登陸是需要每次輸入密碼的,我們需要配置成SSH無密碼登陸比較方便。

    首先退出剛才的ssh,就回到了我們原先的終端視窗,然後利用ssh-keygen 生成金鑰,並將金鑰加入到授權中:

    exit                           # 退出剛才的 ssh localhost

    $ cd ~/.ssh/                     # 若沒有該目錄,請先執行一次

    ssh localhost ssh-keygen -t rsa              #會有提示,都按回車就可以

    cat ./id_rsa.pub  >>  ./authorized_keys # 加入授權


三、安裝Java環境

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html


 建立一個目錄/usr/lib/jvm以便於把下載解壓後的包放到這個目錄下。
    cd /usr/lib
    sudo mkdir jvm


解壓並把解壓後的jdk資料夾放到/usr/lib/jvm目錄中

    $ sudo tar -zxvf /home/hadoop/Desktop/jdk-8u161-linux-x64.tar.gz  -C /usr/lib/jvm/ 


    進入到/usr/lib/jvm目錄下
    cd /usr/lib/jvm
    把解壓後的jdk資料夾重新命名為java1.8

    $ sudo mv jdk1.8.0_161/ java1.8


    先進入gedit編輯器,

      $ sudo gedit  ~/.bashrc

    在~/.bashrc的底部加入以下段落:

    export JAVA_HOME=/usr/lib/jvm/java1.8

    export JRE_HOME=${JAVA_HOME}/jre
    export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
    export PATH=${JAVA_HOME}/bin:$PATH

    需要使用命令使環境變數立即生效

    $ source  ~/.bashrc


    驗證java安裝是否成功

    java -version

    設定好後我們來檢驗一下是否設定正確:

    echo $JAVA_HOME

    $JAVA_HOME/bin/java -version

四、安裝 Hadoop 2

    我們選擇將 Hadoop 安裝至 /usr/local/ 中:
    $ sudo tar -zxvf /home/hadoop/Desktop/hadoop-2.7.5.tar.gz -C /usr/local/     # 解壓到/usr/local中
    $ cd /usr/local/
    $ sudo mv ./hadoop-2.7.5/ ./hadoop            # 將資料夾名改為hadoop
    $ sudo chown -R hadoop ./hadoop       # 修改檔案許可權


    Hadoop 解壓後即可使用。輸入如下命令來檢查 Hadoop 是否可用,成功則會顯示 Hadoop 版本資訊:
    cd /usr/local/hadoop

    ./bin/hadoop version


五、 Hadoop單機配置(非分散式)

    Hadoop 預設模式為非分散式模式(本地模式),無需進行其他配置即可執行。非分散式即單 Java 程序,方便進行除錯。

    Hadoop 可以在單節點上以偽分散式的方式執行,Hadoop 程序以分離的 Java 程序來執行,節點既作為 NameNode 也作為 DataNode,同時,讀取的是 HDFS 中的檔案。

    Hadoop 的配置檔案位於 /usr/local/hadoop/etc/hadoop/ 中,偽分散式需要修改2個配置檔案 core-site.xml 和 hdfs-site.xml 。Hadoop的配置檔案是 xml 格式,每個配置以宣告 property 的 name 和 value 的方式來實現。

    首先,先設定下hadoop預設的java路徑,執行:

    gedit /usr/local/hadoop/etc/hadoop/hadoop-env.sh


    修改配置檔案 core-site.xml (通過 gedit 編輯會比較方便: gedit ./etc/hadoop/core-site.xml)

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

    同樣的,修改配置檔案 hdfs-site.xml:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/tmp/dfs/data</value>
    </property>

</configuration>

    配置完成後,執行 NameNode 的格式化:

    ./bin/hdfs namenode -format


 接著開啟 NameNode 和 DataNode 守護程序。
    ./sbin/start-dfs.sh  #start-dfs.sh是個完整的可執行檔案,中間沒有空格

終端顯示上圖兩個紅框內的內容即算設定成功,執行jps命令檢視:

    $ jps


    成功啟動後,可以訪問 Web 介面 http://localhost:50070 檢視 NameNode 和 Datanode 資訊,還可以線上檢視 HDFS 中的檔案。

以上就是安裝的全部過程,再次感謝廈門大學資料庫實驗室對我學習的幫助!