Hadoop 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

  

 

 

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

  

<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

   

<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

   

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

  

 

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

  

   

   5.5、指定 SecondaryNameNode 節點

  在 /home/hadoop hadoop-2.7/etc/hadoop 目錄下手動創建一個 masters 文件

vi masters

  打開文件后,輸入 SecondaryNameNode 節點的主機名或者 IP 地址

  

 

  

   

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

  

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

  

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

(4)輸入命令,jps,可以看到相關信息

 

 

 8、訪問界面

  ①、關閉防火牆

service iptables stop
chkconfig iptables off

  ②、訪問 NameNode 節點信息:http://192.168.146.200:50070

  

 

    點擊DataNodes 查看 DataNode 節點

    

 

 

  ③、訪問 SecondaryNameNode 節點信息,就是我們在hdfs-site.xml 中配置的路徑  http://192.168.146.201:50090

  

 


免責聲明!

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



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