在ubuntu系統下裝hadoop


1.環境:ubuntuhadoop2.7.3

2.Ubuntu下創建hadoop用戶組和用戶

① 添加hadoop用戶到系統用戶

 

 

② 現在只是添加了一個用戶hadoop,它並不具備管理員權限,我們給hadoop用戶添加權限,打開/etc/sudoers文件

命令:sudo vi /etc/sudoers

③ root  ALL=(ALL:ALL)  ALL下添加hadoop  ALL=(ALL:ALL)  ALL

此文件為只讀文件,修改后強制保存::wq!

3.安裝ssh服務

命令:sudo apt-get install ssh openssh-server

4.使用ssh進行無密碼驗證登錄

① 先進入hadoop用戶

命令: su hadoop

② 作為一個安全通信協議(ssh生成密鑰有rsadsa兩種生成方式,默認情況下采用rsa方式),使用時需要密碼,因此我們要設置成免密碼登錄,生成私鑰和公鑰:

 

 

(注:回車后會在~/.ssh/下生成兩個文件:id_rsaid_rsa.pub這兩個文件是成對出現的前者為私鑰,后者為公鑰)

 

進入~/.ssh/目錄下,將公鑰id_rsa.pub追加到authorized_keys授權文件中,開始是沒有authorized_keys文件的(authorized_keys 用於保存所有允許以當前用戶身份登錄到ssh客戶端用戶的公鑰內容)

命令:cat ~/.ssh/id_rsa.pub>> ~/.ssh/authorized_keys

③ 然后即可無密碼驗證登錄了 

命令:ssh localhost

 

 

5.下載Hadoop安裝包

官網地址:

https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/stable/

 

 

6.解壓縮Hadoop安裝包

 

 

要確保所有的操作都是在用戶hadoop下完成的,所以將該hadoop文件夾的屬主用戶設為hadoop

命令:sudo chown -R hadoop:hadoop hadoop

7.安裝Java

 

 

8.配置Hadoop中相應的文件

需要配置的文件如下,hadoop-env.shcore-site.xmlmapred-site.xml.templatehdfs-site.xml,所有的文件均位於/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>

② mapred-site.xml.template配置如下:

<configuration>

<property>

<name>mapred.job.tracker</name>

<value>localhost:9001</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>

其中dfs.namenode.name.dirdfs.datanode.data.dir的路徑可以自由設置,最好在hadoop.tmp.dir的目錄下面。

 

補充,如果運行Hadoop的時候發現找不到jdk,可以直接將jdk的路徑放置在hadoop-env.sh里面,具體如下:

    export JAVA_HOME="/usr/local/jdk1.8.0_91"

9.運行Hadoop

① 初始化HDFS系統

命令:bin/hdfs namenode -format

 

 

 

② 開啟NameNodeDataNode守護進程

命令:sbin/start-dfs.sh,成功如下:

 

 

③ 查看進程信息

命令:jps

 

 

④ 查看Web UI

在瀏覽器輸入http://192.168.86.126:50070/

 

 

10.運行WordCount Demo

① 在本地新建一個文件,在/home/download/wangling目錄下新建了一個words文檔,里面的內容可以隨便填寫。此words里寫的如下:

 quux labs foo bar quux

② HDFS中新建一個文件夾,用於上傳本地的words文檔,在hadoop目錄下輸入如下命令:

命令:bin/hdfs dfs -mkdir /test,表示在hdfs的根目錄下建立了一個test目錄

使用如下命令可以查看HDFS根目錄下的目錄結構

命令:bin/hdfs dfs -ls /

 

 

③ 將本地words文檔上傳到test目錄中

命令:bin/hdfs dfs -put /home/download/wangling/words /test/

 

 

表示已經將本地的words文檔上傳到了test目錄下了。

④ 運行wordcount

命令:bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /test/words /test/out

運行完成后,在/test目錄下生成名為out的文件

查看命令:bin/hdfs dfs -ls /test

 

 

⑤ 查看運行結果

命令:bin/hdfs dfs -ls /test/out

 bin/hadoop fs -cat /test/out/part-r-00000

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM