Hadoop伪分布式与分布式安装

来源:互联网 发布:架构师比程序员好吗 编辑:程序博客网 时间:2024/05/15 01:45
hadoop中文官方文档:http://hadoop.apache.org/docs/r1.0.4/cn/cluster_setup.html

一.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 关闭防火墙的自动运行
    执行命令    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

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

                       启动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


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



1 0
原创粉丝点击