1. 程式人生 > >hadoop偽分布式搭建

hadoop偽分布式搭建

hadoop 大數據

  • 一:系統需求與軟件包
  • 二:系統環境初始化
  • 三:hadoop 偽分布式搭建
  • 四:運行wordcount測試

一:環境配置需求

  • 系統
    CentOS6.4x64
  • 需要軟件
    hadoop-2.5.0.tar.gz
    jdk-7u67-linux-x64.tar.gz
    native-2.5.0.tar.gz

二:系統環境初始化

  • 關閉CentOS6.4x64 系統防火墻與selinux

    1. 關閉iptables 防火墻
      #iptables -F
      #service iptables save
      #service iptables stop
      #chkconfig iptables on
      技術分享圖片
    2. 將selinux 設置成為disabled 的狀態
      vim /etc/selinux/config
      技術分享圖片
  • 配置系統信息

    1. 新建安裝用戶,更改主機名,配置靜態IP設置
      1.1 新建安裝用戶hadoop
      #useradd hadoop
      #echo "hadoop" |passwd hadoop --stdin
      技術分享圖片

      上傳所有安裝文件到hadoop 用戶目錄下面,並新建安裝目錄yangyang下面
      技術分享圖片

      1.2 更改主機名與host文件
      #hostname namenode01.hadoop.com
      #vim /etc/sysconfig/network
      技術分享圖片
      #vim /etc/hosts
      技術分享圖片
      1.3 配置靜態IP設置
      #vim /etc/sysconfig/network-script/ifcfg-eth1

      技術分享圖片

  • 配置系統的無密鑰認證
    1.1 生成系統的無密鑰
    #ssh-keygen 一直敲回車鍵到最後
    技術分享圖片
    1.2 導入公鑰文件
    #cat id_rsa.pub >> authorized_keys
    #chmod 600 authorized_keys
    技術分享圖片

三:hadoop 偽分布式搭建

  • 配置jdk 與增加環境變量
    1.1 jdk 的安裝與配置
            #tar -zxvf jdk-7u67-linux-x64.tar.gz
            #mv jdk-7u67-linux-x64 yangyang/jdk
            #vim .bash_profile

    技術分享圖片

            #source .bash_profile


export JAVA_HOME=/home/hadoop/yangyang/jdk

export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

export HADOOP_HOME=/home/hadoop/yangyang/hadoop

PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:${HADOOP_HOME}/bin

java -version 

技術分享圖片

  • hadoop 偽分布環境配置
    1.1 安裝hadoop
            #tar -zxvf hadoop-2.5.0.tar.gz 
            #mv hadoop-2.5.0 yangyang/hadoop
            #echo "export JAVA_HOME=/home/hadoop/yangyang/jdk" >> hadoop-env.sh
            #echo "export JAVA_HOME=/home/hadoop/yangyang/jdk" >> mapred-env.sh
            #echo "export JAVA_HOME=/home/hadoop/yangyang/jdk" >> yarn-env.sh
     1.2 更改配置文件
        1.2.1 配置core-site.xml 
        #cd yangyang/hadoop/etc/
        #vim core-site.xml 配置內容
    <configuration> 
    <property>
    <name>hadoop.tmp.dir</name>
    <value>/home/hadoop/yangyang/hadoop/data</value>
    <description>hadoop_temp</description>
    </property>
    <property>
    <name>fs.default.name</name>
    <value>hdfs://namenode01.hadoop.com:8020</value>
    <description>hdfs_derect</description>
    </property>
    </configuration> 

    1.2.2 配置hdfs-site.xml 文件
    #vim hdfs-site.xml

    <configuration>
    <property>
    <name>dfs.replication</name> 
    <value>1</value>
    <description>num</description>
    <name>dfs.namenode.http-address</name>
    <value>namenode01.hadoop.com:50070</value>
    </property>
    </configuration>

    1.2.3 配置map-site.xml
    #cp -p mapred-site.xml.template mapred-site.xml
    #vim mapred-site.xml

    <configuration>
    <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    </property> 
    <property>
    <name>mapreduce.jobhistory.webapp.address</name>
    <value>namenode01.hadoop.com:19888</value>
    </property>
    </configuration>

    1.2.4 配置yarn-site.xml
    #vim yarn-site.xml

    <configuration>
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>
    </configuration>

    1.2.5 替換native 包

    #cd yangyang/hadoop/lib/native
    #rm -rf *
    #tar -zxvf native-2.5.0.tar.gz -C yangyang/hadoop/lib/native/

    1.2.6 格式文件系統

     # hdfs namenode -format

    1.2.7 啟動相關服務器

     #cd yangyang/sbin
     #./hadoop-deamon.sh start namenode 
     #./hadoop-deamon.sh start datanode
     #./yarn-deamon.sh start resourcemanager
     #./yarn-deamon.sh start nodemanager
     #jps

    技術分享圖片

1.2.8 上傳 文件

     #hdfs dfs -mkdir /input
     #hdfs dfs -put file1 /input/
     #hdfs dfs -mkdir /output

技術分享圖片
1.2.9 打開瀏覽器
192.168.3.1:50070
技術分享圖片
192.168.3.1:8088
技術分享圖片

四:運行wordcount測試

  • 運行命令
    #cd /home/hadoop/yangyang/hadoop/share/hadoop/mapreduce
    #yarn jar hadoop-mapreduce-examples-2.5.2.jar wordcount /input/ /output/wd.file1
    技術分享圖片

hadoop偽分布式搭建