hadoop2.0的基本配置(修正)

1、      准备配置hadoop需要的软件

(1)    centos 6.5操作系统

(2)    jdk-7u79-linux-i586.tar.gz

(3)    hadoop-2.2.0-64bit.tar.gz

hadoop2.0的基本配置(修正)_第1张图片


2、      安装jdk

(1)  解压缩jdk-7u79-linux-i586.tar.gz

执行命令  tar    -zxvf jdk-7u79-linux-i586.tar.gz

 

(2)重命名jdk1.7.0_79为jdk

执行命令  mv  jdk1.7.0_79    jdk

(3)配置环境变量,修改/etc/profile文件,增加以下信息

export  JAVA_HOME=/usr/local/jdk

export  PATH=$PATH:$JAVA_HOME/bin

 

执行命令 vi /etc/profile

hadoop2.0的基本配置(修正)_第2张图片

(4)让配置立即生效

执行命令  source   /etc/profile

hadoop2.0的基本配置(修正)_第3张图片

(5)查看是否安装成功

     执行命令    java    -version

3、      修改主机名

执行命令  vi   /etc/sysconfig/network   把文件里面的内容

 NETWORKING=yes                              改为  NETWORKING=yes   

 HOSTNAME=localhost.localdomain                HOSTNAME=hadoop13

hadoop2.0的基本配置(修正)_第4张图片


4、配置/etc/hosts文件,使域名和ip对应起来

执行命令 vi   /etc/hosts   把文件的内容改为192.168.40.112     hadoop13

hadoop2.0的基本配置(修正)_第5张图片


5、关闭防火墙,并且不允许防火墙再自动启动

(1)执行命令  service    iptables   stop  关闭防火墙

hadoop2.0的基本配置(修正)_第6张图片


(2)执行命令  chkconfig   iptables  off    设置防火墙不能自启动


hadoop2.0的基本配置(修正)_第7张图片


6、设置SSH免密码登录

(1)进入   ~/.ssh 目录,生成密钥和公钥

     执行命令   cd  ~/.ssh

hadoop2.0的基本配置(修正)_第8张图片


  执行命令  ssh-keygen   -t   rsa  (默认的生成密钥方式是dsa)

     注意:要连续按下几下Enter键,直到出现一个图片的方框为止

hadoop2.0的基本配置(修正)_第9张图片


(2)把  ~/.ssh/id_rsa.pub  文件放到   ~/.ssh/authorized_keys文件中

  执行命令 cp  ~/.ssh/id_rsa.pub      ~/.ssh/authorized_keys


(3)验证ssh免登录是否配置成功

   执行命令 ssh   hadoop13

hadoop2.0的基本配置(修正)_第10张图片

7、安装hadoop

(1)进入 /usr/local/目录,解压缩文件hadoop-2.2.0-64bit.tar.gz

  执行命令 tar  -zxvf    hadoop-2.2.0-64bit.tar.gz

hadoop2.0的基本配置(修正)_第11张图片


(2)重命名hadoop-2.2.0为hadoop

执行命令  mv    hadoop-2.2.0  hadoop


(3)配置环境变量,修改文件/etc/profile,添加hadoop的bin路径和sbin路径

修改的内容如下

  export   JAVA_HOME =/usr/local/jdk

  export   HADOOP_HOME=/usr/local/hadoop

  export    PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

hadoop2.0的基本配置(修正)_第12张图片

(4)  让配置立即生效

执行命令  source   /etc/profile

(5)  修改/usr/local/hadoop/etc/hadoop目录下的六个文件夹

       ①修改hadoop-env.sh,这个文件只是修改JAVA_HOME的路径

        即export   JAVA_HOME=/usr/local/jdk

hadoop2.0的基本配置(修正)_第13张图片

      

         ②修改core-site.xml文件,修改的内容如下

       

        

             fs.defaultFS

             hdfs://hadoop13:9000 

        

 

        

        

             hadoop.tmp.dir

             file:/usr/local/hadoop/tmp                 

        

    

        

        

             io.file.buffer.size

             131072

        

 

        

        

             hadoop.proxyuser.local.hosts

              *

        

 

        

        

        hadoop.proxyuser.local.groups

         *

        

hadoop2.0的基本配置(修正)_第14张图片


            ③修改hdfs-site.xml文件,修改的内容如下

 

        

         

            dfs.replication

            1

         

 

          

            

                    dfs.namenode.secondary.http-address

                    hadoop13:9001

                  

              

          

             

                     dfs.namenode.name.dir

                     file:/usr/local/hadoop/dfs/name

             

 

           

             

                  dfs.datanode.data.dir

                  file:/usr/local/hadoop/dfs/data

               

 

             

             

                   dfs.webhdfs.enabled

                  true

              

 


hadoop2.0的基本配置(修正)_第15张图片



           ④把mapred-site.xml.template重命名为mapred-site.xml,然后修改里面的内容如下:

      

           

                mapreduce.framework.name

                yarn

            

 

      

          

              mapreduce.jobhistory.address

              hadoop13:10020

          

         

        

          

             mapreduce.jobhistory.webapp.address

             hadoop13:19888

         

 

hadoop2.0的基本配置(修正)_第16张图片


             ⑤修改yarn-site.xml文件,修改的内容如下

 

    

     

         yarn.nodemanager.aux-services

         mapreduce_shuffle

 

     

 

  

      yarn.nodemanager.aux-services.mapreduce.shuffle.class

       org.apache.hadoop.mapred.ShuffleHandler

 

 

      yarn.resourcemanager.address

       hadoop13:8032

 

     

      yarn.resourcemanager.scheduler.address

        hadoop13:8030

 

 

      yarn.resourcemanager.resource-tracker.address

       hadoop13:8035

 

 

      yarn.resourcemanager.admin.address

       hadoop13:8033

 

      yarn.resourcemanager.webapp.address

       hadoop2:8088

 

 


hadoop2.0的基本配置(修正)_第17张图片


 

⑥修改slaves文件,这里主要就是datanode的地址,因为配置的是单节点的,所以可以把本机的ip放进去,如果没有的话,将不能存储数据,

                添加的内容如下:

                 hadoop13

                执行vi    slaves

hadoop2.0的基本配置(修正)_第18张图片


8、格式化分布式文件系统

执行命令    hdfs  namenode  -format(hadoop    namenode  -format已经过时了)

hadoop2.0的基本配置(修正)_第19张图片


9、启动hadoop

执行命令   start-all.sh

可以先启动start-dfs.sh  ,然后启动start-yarn.sh

hadoop2.0的基本配置(修正)_第20张图片


10、查看是否启动成功

执行命令  jps,如果出现如下图所示的几个进程,则说明启动成功

hadoop2.0的基本配置(修正)_第21张图片


总结:

1、安装jdk的时候一定要选择与linux系统相匹配的版本进行安装;

(1)查看linux是多少位的命令如下:

getconf     LONG_BIT


也可以通过uname  -a

如上图所示,没有出现64bit,所以他是32位的系统



(2)查看jdk是32位还是64位

 执行命令   java  -version

hadoop2.0的基本配置(修正)_第22张图片

如上图,没有出现64bit,所以jdk是32位的



2、如果你使用的jdk版本是1.7,则会出现以下的错误

M: ssh: Could not resolve hostname VM: Nameor service not known

Client: ssh: Could not resolve hostnameClient: Name or service not known

warning:: ssh: Could not resolve hostnamewarning:: Name or service not known

library: ssh: Could not resolve hostnamelibrary: Name or service not known

Java: ssh: Could not resolve hostname Java:Name or service not known

have: ssh: Could not resolve hostname have:Name or service not known

loaded: ssh: Could not resolve hostnameloaded: Name or service not known

You: ssh: Could not resolve hostname You:Name or service not known

have: ssh: Could not resolve hostname have:Name or service not known

might: ssh: Could not resolve hostnamemight: Name or service not known

which: ssh: Could not resolve hostnamewhich: Name or service not known

 

解决的办法:

(1)/etc/profile文件夹中添加一些额外的环境变量:如以下所示

export JAVA_HOME=/usr/local/jdk

export HADOOP_HOME=/usr/local/hadoop

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native (额外添加)

export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"(额外添加)

(2)上述问题还可能是由于/usr/local/hadoop/etc/hadoop/slaves里面配置的域名引起的,因为所配置的域名找不到与之对应的ip(默认的配置是localhost,即默认的存储数据的节点只有本地)


3、 如何添加多个datanode节点

Datanode节点主要是在/usr/local/hadoop/etc/hadoop/slaves里面配置的,在该文件可以配置datanode的域名或者ip地址,然后把/usr/local/hadoop整个文件夹发给各个datanode,然后再配置相关的环境变量,在启动hadoop之前,确保datanode节点是出于开机状态,这样才可以存储数据











你可能感兴趣的:(分布式系统)