一.hadoop伪分布安装步骤如下

安装环境:centOS6.5

1.1 设置ip地址


    执行命令    service network restart


    验证:    ifconfig



1.2 设置主机名


    执行命令    (1)hostname chaoren


                (2)vi /etc/sysconfig/network


1.3 ip与hostname绑定


    执行命令    vi /etc/hosts


    验证:        ping chaoren


1.4 关闭防火墙


    执行命令    service iptables stop


    验证:        service iptables status


1.5 关闭防火墙的自动运行


  

                  (11)分别启动namenode、datanode、resourcemanager、nodemanager、jopHistroyServer, 要关闭时直接使用stop

执行命令    chkconfig iptables off 

     验证:        chkconfig --list | grep iptables 

 1.6 设置ssh免密码登陆 

     执行命令    (1)执行 ssh-keygen -t rsa  命令后一直按回车即可。 

             (2)cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys 或者用该命名:1:cd /root/.ssh    2:cp id_rsa.pub authorized_keys 

     验证:    ssh chaoren 

 1.7 安装jdk(JDK到官网下载linux版本) 

     执行命令    (1)cd /usr/local 

                 (2)chmod u+x jdk-6u24-linux-i586.bin     //修改jdk的操作权限 

                 (3)./jdk-6u24-linux-i586.bin                      //解压jdk文件 

                 (4)mv jdk-1.6.0_24  jdk                //给该文件中重命名为jdk 

                 (5)vi /etc/profile 增加内容如下: 

                                 export JAVA_HOME=/usr/local/jdk 

                                 export PATH=.:$JAVA_HOME/bin:$PATH 

                 (6)source /etc/profile 

     验证:    java -version 

 1.8 安装hadoop2.6.0 

     执行命令    (1)tar -zxvf hadoop-1.1.2.tar.gz 

                 (2)mv hadoop-1.1.2 hadoop 

                 (3)vi /etc/profile 增加内容如下: 

                                 export JAVA_HOME=/usr/local/jdk 

                                 export HADOOP_HOME=/usr/local/hadoop 

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

                 (4)source /etc/profile 

                (5) 修改hadoop/etc/hadoop/hadoop-env.sh 文件,
                     添加内容:JAVA_HOME=/usr/local/jdk
                (6) 修改hadoop/etc/hadoop/core-site.xml,添加内容如下:
                          <configuration>
                               <property>
                                  <name>fs.defaultFS</name>
                                  <value>hdfs://192.168.21.12:9000</value>
                              </property>
                             <property>
                                  <name>hadoop.tmp.dir</name>
                                 <value>/usr/local/hadoop-2.6.0/tmp</value>
                            </property>
                            <property>
                                  <name>fs.trash.interval</name>
                                 <value>1440</value>
                            </property>
                           </configuration>
                  (7) 修改hadoop/etc/hadoop/hdfs-site.xml,添加内容如下:                         <configuration>
                                 <property>
                                     <name>dfs.replication</name>
                                     <value>1</value>
                                 </property>
                             <property>
                                  <name>dfs.permissions</name>
                                  <value>false</value>
                            </property>
                        </configuration>

                    (8) 修改hadoop/etc/hadoop/yarn-site.xml,添加内容如下:                          <configuration>
                                   <property>
                                       <name>yarn.nodemanager.aux-services</name>
                                       <value>mapreduce_shuffle</value>
                                   </property>
                           </configuration>                   (9) 修改hadoop/etc/hadoop/mapred-site.xml,添加内容如下:
                                <configuration>
                                       <property>
                                            <name>mapreduce.framework.name</name>
                                            <value>yarn</value>
                                      </property>
                                </configuration>                   (10)格式化namenode,执行命令:hadoop namenode -format

            

启动namenode命令: sbin/hadoop-daemon.sh start namenode
                        启动datanode命令:sbin/hadoop-daemon.sh start datanode                       启动resourcemanager命令:sbin/yarn-daemon.sh start resourcemanager
                       启动nodemanager命令:sbin/yarn-daemon.sh start nodemanager
                       启动jopHistroyServer命令:sbin/mr-jobhistory-daemon.sh start historyserver

                     

 注意也可以执行:sbin/start-all.sh一次性将以上进程全部启动,不用一个个启动。


    验证:    (1)执行命令jps 如果看到5个新的java进程,分别是NameNode、DataNode、ResourceManager、NodeManager、JobHistoryServer则安装成功。


                  (2)在浏览器查看,http://chaoren:50070  http://chaoren:50030


1.9 启动时没有NameNode的可能原因:


    (1)没有格式化


    (2)环境变量设置错误


    (3)ip与hostname绑定失败


1.9.1 启动hadoop namenode -format进行格式化时,若报错找不到jdk的路径,


        则要去看看hadoop/etc/hadoop/目录下查看JAVA_HONE路径是否正确


2.0遇到错误是要学会看日志,日志位于hadoop/logs目录下面



二、Hadoop分布式安装


注意:以下两步操作(1和2)都在主节点操作。下面的操作是在上面hadoop伪分布式的基础上进行的。集群中每个节点都要安装JDK。


1、在/etc/hosts中添加集群中的所有节点,ip   主机名的形式,形如下:


    192.168.1.103        masternode


    192.168.1.104        slavernode1


    192.168.1.105        slavernode2



2、配置masters和slavers主从节点


    编辑hadoop/etc/hadoop/slaves  :在slaves文件中添加如下内容:


        slavernode1


        slavernode2



3、将主节点上配置好的hadoop 文件  copy 其它的slaves节点上


    命令:scp  -r hadoop/  root@192.168.1.170:/usr/local/



4、设置所有从节点ssh免密码登录


    将Masters节点的公钥中的内容(id_rsa.pub中的内容)复制到所有的slavers节点的authorized_keys(/root/.ssh/authorized_keys)



5、集群启动


    在主节点(masters)上启动即可,从节点上不用启动


    命令:hadoop/bin/start-all.sh




  

安装过程中如遇到什么问题,可以提问,本人会尽可能的帮你解决问题。