天天看點

Hadoop hdfs完全分布式搭建教程

hdfs 完全分布式搭建教程

1、安裝環境

  ①、四台Linux CentOS6.7 系統

  hostname                ipaddress                subnet mask                  geteway    

1、 master     192.168.146.200    255.255.255.0      192.168.146.2

2、 slave1      192.168.146.201    255.255.255.0      192.168.146.2

3、 slave2      192.168.146.202    255.255.255.0      192.168.146.2

4、 slave3      192.168.146.203    255.255.255.0      192.168.146.2

   其中 master 機器是 NameNode;

      slave1 機器是 SecondaryNameNode

      slave1,slave2,slave3 是三台 DataNode

  ②、hadoop 2.7 安裝包

    百度雲下載下傳連結:http://pan.baidu.com/s/1gfaKpA7 密碼:3cl7

  ③、三台機器上建立一個相同的使用者 hadoop

2、安裝 JDK

  教程:http://www.cnblogs.com/ysocean/p/6952166.html

3、配置SSH 無密碼登入

  教程:http://www.cnblogs.com/ysocean/p/6959776.html

我們以 master 機器來進行如下配置:

4、解壓 hadoop-2.7.3.tar.gz

  ①、将下載下傳的 hadoop-2.7.3.tar.gz  複制到 /home/hadoop 目錄下(可以利用工具 WinSCP)

  ②、解壓,進入/home/hadoop 目錄下,輸入下面指令

tar -zxvf hadoop-2.7.3.tar.gz
      

  ③、給 hadoop-2.7.3檔案夾重命名,以便後面引用

mv hadoop-2.7.3 hadoop2.7
      

  ④、删掉壓縮檔案 hadoop-2.7.3.tar.gz,并在/home/hadoop 目錄下建立檔案夾tmp

  

   ⑤、配置 hadoop 環境變量(這裡我Java 和 hadoop 環境變量一起配置了)

  使用 root 使用者登入。輸入

vi /etc/profile
      
Hadoop hdfs完全分布式搭建教程

5、配置 hadoop 檔案中相應的檔案

   需要配置的檔案如下,hadoop-env.sh,core-site.xml,hdfs-site.xml,slaves,所有的檔案配置均位于hadoop2.7.1/etc/hadoop下面,具體需要的配置如下:

  5.1 配置/home/hadoop/hadoop2.7/etc/hadoop目錄下的core-site.xml

Hadoop hdfs完全分布式搭建教程
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.146.200:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop/tmp</value>
    </property>

</configuration>
      

  注意:hadoop.tmp.dir是hadoop 檔案系統依賴的配置檔案。 預設是在 /tmp 目錄下的,而這個目錄下的檔案,在Linux系統中,重新開機之後,很多都會被清空。是以我們要手動指定這寫檔案的儲存目錄。

     這個目錄路徑要麼不存在,hadoop啟動的時候會自動幫我們建立;要麼是一個空目錄,不然在啟動的時候會報錯。

   5.2配置/home/hadoop/hadoop-2.7/etc/hadoop目錄下的hdfs-site.xml

   

Hadoop hdfs完全分布式搭建教程
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>192.168.146.201:50090</value>
    </property>
</configuration>
      

  注意:dfs.replication 是配置檔案儲存的副本數;dfs.namenode.secondary.http-address 是指定 secondary 的節點。

   5.3配置/home/hadoop/hadoop-2.7/etc/hadoop目錄下hadoop-env.sh 的JAVA_HOME

Hadoop hdfs完全分布式搭建教程

  設定 JAVA_HOME 為自己在系統中安裝的 JDK 目錄

Hadoop hdfs完全分布式搭建教程

   5.4配置/home/hadoop/hadoop-2.7/etc/hadoop目錄下的slaves,删除預設的localhost,增加3個從節點

Hadoop hdfs完全分布式搭建教程

   

Hadoop hdfs完全分布式搭建教程

   5.5、指定 SecondaryNameNode 節點

  在 /home/hadoop hadoop-2.7/etc/hadoop 目錄下手動建立一個 masters 檔案

vi masters
      

  打開檔案後,輸入 SecondaryNameNode 節點的主機名或者 IP 位址

Hadoop hdfs完全分布式搭建教程

6、将配置好的 hadoop 檔案上傳給其它三個節點

scp -r /home/hadoop 192.168.146.201:/home/
scp -r /home/hadoop 192.168.146.202:/home/
scp -r /home/hadoop 192.168.146.203:/home/
      

 7、啟動 hadoop

在master伺服器啟動hadoop,從節點會自動啟動,進入/home/hadoop/hadoop-2.7目錄

(1)初始化,輸入指令,bin/hdfs namenode -format

Hadoop hdfs完全分布式搭建教程

(2)啟動hdfs 指令:sbin/start-dfs.sh

Hadoop hdfs完全分布式搭建教程

(3)停止指令,sbin/stop-hdfs.sh

(4)輸入指令,jps,可以看到相關資訊

 8、通路界面

  ①、關閉防火牆

service iptables stop
chkconfig iptables off      

  ②、通路 NameNode 節點資訊:http://192.168.146.200:50070

Hadoop hdfs完全分布式搭建教程

    點選DataNodes 檢視 DataNode 節點

    

Hadoop hdfs完全分布式搭建教程

  ③、通路 SecondaryNameNode 節點資訊,就是我們在hdfs-site.xml 中配置的路徑  http://192.168.146.201:50090

Hadoop hdfs完全分布式搭建教程

作者:IT可樂

出處:http://www.cnblogs.com/ysocean/

資源:微信搜【IT可樂】關注我,回複 【電子書】有我特别篩選的免費電子書。

本文版權歸作者所有,歡迎轉載,但未經作者同意不能轉載,否則保留追究法律責任的權利。