Linux環境Hadoop徹底分佈模式安裝詳解

徹底分佈模式:正常的Hadoop集羣,由多個各司其職的節點構成。html

安裝環境java

操做平臺:VMnode

操做系統:CentOS6.4(關閉防火牆)web

軟件版本:Hadoop-0.20.二、JDK7  瀏覽器

集羣架構:3個節點--一個Mater,二個Slave。服務器

準備工做架構

JDK安裝與配置負載均衡

詳情請見:http://www.cnblogs.com/zhangwenjing/p/3580726.htmlssh

安裝步驟oop

1、配置hosts文件

  修改全部節點的/ect/hosts,使彼此之間都能把主機名解析爲ip.

  vi /ect/hosts

  192.168.1.53 master

  192.168.1.113 node1

  192.168.1.145 node2

2、創建hadoop運行帳號

  在全部的節點建立hadoop運行帳號

  groupadd hadoop

  useradd -g hadoop grid

  id grid

  passwd grid

3、配置ssh免密碼鏈接

   在三個節點中,均grid用戶登陸,在grid用戶的主目錄下進行操做:

   ssh-keygen -t rsa -P "" 

   cd ~.ssh

   ls

  完成以上步驟,把各個節點的authorized_keys的內容互相拷貝加入到對方的此文件中,咱們這裏採起的措施是:而後就能夠免密碼彼此ssh連入

  以master爲例:

   cat /home/grid/.ssh/id_rsa.pub >> /home/grid/.ssh/authorized_keys

   ssh node1 cat /grid/hadoop/.ssh/id_rsa.pub >> /home/grid/.ssh/authorized_keys

   ssh node2 cat /home/grid/.ssh/id_rsa.pub >> /home/grid/.ssh/authorized_keys

4、Hadoop安裝

  一、Hadoop下載與安裝

           解壓縮:tar -zxvf hadoop-0.20.2.tar.gz

    重命名:mv hadoop-0.20.2 hadoop

    #vi ect/profile

    HADOOP_PREFIX=/home/grid/hadoop 

    PATH=$HADOOP_PREFIX/bin:$PATH 

    export HADOOP_PREFIX PATH 

    執行環境配置:source /etc/profile

    驗證:hadoop -version

  (注意:三臺服務器Hadoop安裝目錄要保持一致。)

  二、Hadoop配置

    Hadoop配置在~/hadoop/conf下,做以下修改:

    hadoop-env.sh

           export JAVA_HOME=/usr/local/java/jdk1.7.0_51(JDK安裝目錄)

           修改內存大小:export HADOOP_CLIENT_OPTS="-Xmx512m $HADOOP_CLIENT_OPTS"

    core-site.xml作以下配置:

    <configuration>
            <property> 
               <name>fs.default.name</name> 
               <value>hdfs://master:9000</value> 
            </property> 
          </configuration>

    hdfs-site.xml作以下配置:

            <configuration> 
             <property> 
                <name>dfs.replication</name> 
                  <value>2</value> 
              </
property>

        <property>
        <name>dfs.permissions</name>
        <value>false</value>
        </property>

            </configuration>

    mapred-site.xml作以下配置:    

      <configuration> 
             <property>
                   <name>mapred.job.tracker</name> 
                   <value>master:9001</value> 
              </property>
            </configuration>

    masters,作以下配置:

    namenode節點主機名或IP,若是有多個,則用回車分隔

    vi masters

    master

    slaves,作以下配置:

    datanode節點主機名或IP,若是有多個,則用回車分隔

    vi slaves

    node1

    node2

   三、複製hadoop到各節點

      scp -r 原文件目錄 目標文件目錄

   四、在NameNode節點格式化HDFS

        在Hadoop安裝目錄下運行:bin/hadoop namenode –format

     五、在NameNode啓動Hadoop

      在Hadoop安裝目錄下運行:bin/start-all.sh

   六、在各個節點檢查進程是否啓動,執行以下命令

      jps

5、實例運行

         切換到安裝目錄,創建要上傳到hadoop的兩個文件 test1.txt、test2.txt 

         mkdir input

         cd input

         echo "hello world" > test1.txt

         echo "hello hadoop" > test2.txt

         運行hadoop自帶的wordcount實例能夠統計一批文本文件中單詞出現的次數

         bin/hadoop jar hadoop-0.20.2-examples.jar wordcount input output

         查看結果:

         cat output/*

 6、經過web檢查Hadoop

  經過瀏覽器監控jobstracker:http://192.168.1.53:50030

  經過瀏覽器監控集羣:http://192.168.1.53:50070

附:

如何添加節點?(準備工做JDK安裝和配置)

①配置host文件

創建hadoop運行帳號

③設置ssh免密碼進出該節點

④在新的節點安裝好hadoop(安裝目錄和其餘節點保持一致)

⑤把namenode的有關配置文件複製到該節點

⑥修改全部節點masters和slaves文件,增長該節點

⑦單獨啓動該節點上的datanode和tasktracker(hadoop-daemon.sh start datanode/tasktracker)

⑧運行start-balancer.sh進行數據負載均衡

相關文章
相關標籤/搜索