Ubuntu16.04 安裝hadoop僞分佈式1

最近要做畢設了,題目嘛應該用的到hadoop,以前上課都是用虛擬機搭建Master+1slave,總感覺用的不爽,於是多方借鑑搭建了僞分佈式。

中間也遇到了很多問題,於是趁現在比較閒,記錄下。

 

0.環境

本次使用 Ubuntu 16.04 64位 作爲系統環境,安裝的不是虛擬機,效果是一樣的。

ubuntu系統獲取

前兩天沒事點的時候發現3.0.0不見了,換別的也行,這個不重要

Hadoop使用的版本是3.0.0

Hadoop3.0.0下載(注意是第二個)

然後安裝好Ubuntu系統

1.準備工作

1.1 創建hadoop用戶

01:先打開終端(Ctrl+Alt+T)

鍵入指令:

sudo useradd -m hadoop -s /bin/bash

 

 

02:設置用戶hadoop的登錄密碼

sudo passwd hadoop

 

 

提示會要求輸入兩次密碼(鍵入密碼不會顯示),這裏我就用的hadoop。

03:爲用戶hadoop增加管理員權限

sudo adduser hadoop sudo

 

 

(雖然增加了管理員權限,但後面有些地方還是需要進入root用戶進行操作)

1.2 更新apt

接下來註銷,登錄到hadoop用戶下。

爲了安裝一些軟件,我們需要更新apt

sudo apt-get update 

 

 

 

由於之前實驗室的課,用的是Centos,自帶的好像是vi編輯器,這裏就習慣的安裝了一個vim,不想安裝也沒事,就用gedit也是可以的。

sudo apt-get install vim

 

1.3 安裝SSH並配置SSH無密碼登錄

 

之前配置過hadoop的同學們,肯定是知道這個的。

網上是說Ubuntu已經自帶了SSH client,還需要安裝SSH server

sudo apt-get install openssh-server

 

安裝成功後,使用命令登錄本機

 

 

ssh localhost

 

 

提示要求輸入yes就輸入

 

這樣做了,我們每次登錄還是會需要輸入密碼。

 

接下來配置SSH無密碼登錄

首先退出登錄的SSH。

 

想要退出的話,鍵入exit即可。

接下來生成密碼並加入授權:

cd ~/.ssh/
ssh-keygen -t rsa //遇到提示,一路回車即可
cat ./id_rsa.pub >> ./authorized_keys //加入授權

 

接下來可以再次嘗試ssh localhost,如若無需再次輸入密碼,既成功。

 

1.4 安裝Java環境

01:下載和安裝jdk

這裏選擇的版本是1.8.0_161

JDK1.8.0_161 64bit下載

下載好後,找到文件所在位置(以我的爲例,在下載目錄下)

cd ~/下載
mv ~/下載/jdk-8u161-linux-x64.tar.gz /usr/java //若提示權限不夠,則進入root下操作
tar -xvf /usr/java/jdk-8u161-linux-x64.tar.gz


可以在對應的路徑下找到解壓好的jdk文件

 

02:配置環境變量

 

vim ~/.bashrc


將如下環境變量寫入文件第一行(i鍵,對文檔開始編輯)

 

 

保存,退出。(Esc--:wq)

接下來需要讓環境變量生效:

source ~/.bashrc

 

檢查是否配置正確:

 

java -version

2.安裝Hadoop

 

cd ~/下載
mv ~/下載/hadoop-3.0.0.tar.gz /usr/local/hadoop
tar -xvf /usr/local/hadoop/hadoop-3.0.0.tar.gz

 

解壓完成後,可進行驗證

 

cd /usr/local/hadoop

 

 

3.Hadoop僞分佈式配置

01. 配置core-site.xml

vim /usr/local/hadoop/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>

02. 配置hadoop-env.sh

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

 

找到被註釋掉的JAVA_HOME

 

03. 配置hdfs-site.xml

 


 
vim /usr/local/hadoop/etc/hadoop/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的格式化

/usr/local/hadoop/bin/hdfs namenode -format

 

會有提示是否成功。

 

接着開啓NameNode和DataNode

/usr/local/hadoop/sbin/start-dfs.sh

 

這時,你可能會發現一個警告:

 

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable

該解決辦法請自行問度娘,加一個環境變量就可以。

 

至此,完成配置,可通過jps查看是否啓動成功。

 

ps:如果在最後查看localhost:50070

若發現404問題

1. 手動修改hdfs-site.xml 添加如下:

<property>
  <name>dfs.http.address</name>
  <value>127.0.0.1:50070</value>
</property>

127.0.0.1是對應的localhost地址

2. 也有可能是你的電腦爲手機開啓了熱點

可以用第一種方式或者關閉熱點解決該問題

 

後面還會進行Yarn的配置,暫時先到這裏

 

參考文章:

1.Hadoop安裝教程_單機/僞分佈式配置_Hadoop2.6.0/Ubuntu14.04

http://www.powerxing.com/install-hadoop/

2.hadoop無法訪問50070端口

http://blog.csdn.net/Neone__u/article/details/53741786

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章