1. 程式人生 > >hadoop HDFS Pseudo-Distributed Mode 偽分散式部署

hadoop HDFS Pseudo-Distributed Mode 偽分散式部署

  •    一、 架構簡介:  

     本文件介紹如何設定和配置單節點Hadoop安裝,以便您可以使用Hadoop MapReduce和Hadoop分散式檔案系統(HDFS)快速執行簡單操作。

      使用hadoop版本:Apache Hadoop 2.6.5

      使用4個虛擬機器節點以及角色:

            hadoop01(192.168.92.66)  將namenode、second namenode放置在該節點

hadoop02(192.168.92.67)  datanode

 hadoop03(192.168.92.68)   datanode

 hadoop04(192.168.92.69)    datanode

  • 二、作業系統環境準備

        2.1、依賴軟體

           yum install -y ssh rsync          

        2.2、ssh免密

現在檢查您是否可以在沒有密碼的情況下ssh到localhost:

  $ ssh localhost

如果在沒有密碼短語的情況下無法ssh到localhost,請執行以下命令:

 [[email protected] .ssh]# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa             [[email protected] .ssh]# cat id_dsa.pub >> ~/.ssh/authorized_keys

           將hadoop01中的公鑰分發到其他節點並將公鑰新增到authorized_keys中,下面以hadoop02為例,其他操作一樣

[[email protected] .ssh]# scp id_dsa.pub [email protected]:`pwd`/hadoop01.pub            登入hadoop02

[[email protected] opt]# cd ~/.ssh

[[email protected] .ssh]# cat hadoop01.pub >> ~/.ssh/authorized_keys

hadoop03和hadoop04做同樣操作

注意:需要配置 hadoop01(namenode) 需要免密登入自己和其他所有的datanode節點

       2.3、 jdk安裝並配置環境變數

使用rz命令將jdk安裝包上傳到每個節點  /opt目錄下

cd /opt

安裝jdk  

[[email protected] opt]# rpm -ivh jdk-7u67-linux-x64.rpm 

配置環境變數

vi /etc/profile

追加兩行

export JAVA_HOME=/usr/java/jdk1.7.0_67

export PATH=$PATH:$JAVA_HOME/bin            重新引入一下配置檔案   source /etc/profile

注意  hadoop01 hadoop02 hadoop03 hadoop04都是同樣的

      2.4、 時間同步 

 [[email protected] opt]# date

Mon Oct 29 19:27:14 CST 2018

驗證每臺虛擬機器中的時間是否同步,如果不同步話需要執行下面操作將時間統一

修改主機名

[[email protected] opt]# vi /etc/sysconfig/network            

修改/etc/hosts檔案如下

三、

  • 三、hadoop部署(以hadoop01為例  其他節點同樣操作 )

3.1、 安裝hadoop

使用rz命令上傳安裝包到/opt目錄

cd /opt

解壓hadoop安裝包

[[email protected] opt]# tar -zxvf  hadoop-2.6.5.tar.gz

將解壓後文件複製到安裝目錄

[[email protected] opt]# cp -r hadoop-2.6.5 /usr/local

3.2、 配置環境變數

[[email protected] hadoop-2.6.5]# vi /etc/profile

修改如下:

      修改完畢後重新引入配置檔案

     source /etc/profile

3.2、 修改配置檔案

[[email protected] hadoop]# cd /usr/local/hadoop-2.6.5/etc/hadoop

修改hdfs-site.html

[[email protected] hadoop]# vi hdfs-site.xml 

    

修改core-site.html

修改slaves(配置datanode)

vi slaves 

修改jdk環境變數hadoop-env.sh

注意:已經配置了jdk的環境變數,為什麼還要修改呢?

原因:ssh直接登入虛擬機器的話會載入配置檔案,但是如果從一臺虛擬機器上呼叫ssh登入另一臺虛擬機器的話,預設是不載入配置檔案的,因此也就無法獲取到我們配置的jdk環境變數,因此需要在此處修改

vi hadoop-env.sh

建立臨時目錄

[[email protected] hadoop]# mkdir -p /var/sxt/hadoop/loca

namenode格式化

[[email protected] hadoop-2.6.5]# hdfs namenode -format

結果如下表示格式化成功

啟動

[[email protected] current]# start-dfs.sh 

輸入結果如下表示啟動成功

四、驗證

建立虛擬目錄

[[email protected] opt]# hdfs dfs -mkdir /user

[[email protected] opt]# hdfs dfs -mkdir /user/root