zoukankan      html  css  js  c++  java
  • Linux环境Hadoop伪分布模式安装详解

    伪分布式模式下,Hadoop将所有进程运行于同一台主机上,但此时Hadoop将使用分布式文件系统,而且各jobs也是由JobTracker服务管理的独立进程。同时,由于伪分布式的Hadoop集群只有一个节点,因此HDFS的块复制将限制为单个副本,其secondary-master和slave也都将运行于本地主机。此种模式除了并非真正意义的分布式之外,其程序执行逻辑完全类似于完全分布式,因此,常用于开发人员测试程序执行。

    hadoop的配置共有四种级别:集群、进程、作业和单独操作,前两类由集群管理员负责配置,后面的两类则属于程序员的工作范畴。

    hadoop的配置文件位于conf目录中,其中的core-site.xmlmapred-site.xmlhdfs-site.xml三个配置文件最为关键。core-site.xml用于配置hadoop集群的特性,它作用于全部进程及客户端,mapred-site.xml配置mapreduce集群的工作属性,hdfs-site.xml配置hdfs集群的工作属性。

    另外还有三个配置文件需要留意。hadoop-env.sh是Hadoop的多个脚本执行时source的配置信息,其用于为Hadoop指定运行时使用的JDK、各进程的JDK属性、PID文件及日志文件的保存目录等。masters则用于指定辅助名称节点(SecondaryNameNode)的主机名或主机地址,slaves用于指定各从服务器(TaskTracker或DataNode)的主机名或主机地址。对伪分布式的Hadoop集群来讲,这些节点均为本机。

    一、JDK安装与配置

          详情请见:http://www.cnblogs.com/zhangwenjing/p/3580726.html

    二、Hadoop安装与配置

         1、Hadoop下载与安装

           地址:http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.3.0/hadoop-2.3.0.tar.gz

         使用wget命令下载:wget http://mirrors.hust.edu.cn/apache/hadoop/common/hadoop-2.3.0/hadoop-2.3.0.tar.gz

           解压缩:tar -zxvf hadoop-2.3.0.tar.gz

         重命名:mv hadoop-2.3.0 hadoop

              #vi ect/profile

              HADOOP_PREFIX=/opt/hadoop 

              PATH=$HADOOP_PREFIX/bin:$PATH 

              export HADOOP_PREFIX PATH 

             执行环境配置:source /etc/profile

             验证:hadoop -version

         2、Hadoop配置

             Hadoop配置在hadoop/etc/hadoop下,作如下修改:

        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>

          <!--NameNode的IP地址和端口--> 
              <property> 
                 <name>fs.defaultFS</name> 
                 <value>hdfs://localhost:9000</value> 
              </property> 
              <property> 
                  <name>hadoop.tmp.dir</name> 
                  <value>/tmp/hadoop/hadoop-${user.name}</value>
              </property> 
            </configuration>

              hdfs-site.xml做如下配置(系统默认文件保存3份,因伪分布模式,故改为1份):

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

          <property>
                        <name>dfs.namenode.name.dir</name>
                        <value>/hadoop/namenode</value>
                  </property>
                  <property>
                        <name>dfs.datanode.data.dir</name>
                        <value>/hadoop/datanode</value>
                  </property>
              </configuration>

          mapred-site.xml做如下配置:

        <configuration> 

                <property> 
                     <name>mapreduce.jobtracker.address</name> 
                     <value>localhost:9001</value> 
                </property> 

             </configuration>

         hadoop2.0有了yarn所以原来的mapred配置都转向yarn-site.xml文件中了,这里也就指定yarn。

         yarn-site.xml,为方便,未进行配置。

             core-site.xml配置参考:http://hadoop.apache.org/docs/r2.3.0/hadoop-project-dist/hadoop-common/core-default.xml

        hdfs-site.xml配置参考:http://hadoop.apache.org/docs/r2.3.0/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml

        mapred-site.xml配置参考:http://hadoop.apache.org/docs/r2.3.0/hadoop-mapreduce-client/hadoop-mapreduce-client-core/mapred-default.xml

             yarn-site.xml配置参考:http://hadoop.apache.org/docs/r2.3.0/hadoop-yarn/hadoop-yarn-common/yarn-default.xml

             执行hadoop环境配置:source /opt/hadoop/etc/hadoop/hadoop-env.sh 

       由于启动hadoop需一遍遍输入密码,不方便,故设置ssh免密登陆本机

             ssh-keygen -t rsa -P "" 输入这个命令后一直回车就可以了

             cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

             切换到安装目录

             格式化namenode:./bin/hadoop namenode –format

        启动hadoop:./sbin/start-all.sh设置ssh免密登陆本机

             检查进程是否启动:jps

             

              有以上内容说明已经启动

          hadoop资源管理页面:http://localhost:8088

        namenode节点信息:http://localhost:50070

  • 相关阅读:
    基于51单片机PWM调速L298芯片控制两选一直流电机正反运转的项目工程
    基于51单片机四位一体数码管显示短按加或减数值及长按连加或连减数值的项目工程
    Android 多语言动态更新方案探索
    图解 Promise 实现原理(一)—— 基础实现
    vivo 大规模特征存储实践
    揭秘 vivo 如何打造千万级 DAU 活动中台
    前端科普系列(2):Node.js 换个角度看世界
    分布式定时任务调度框架实践
    深入学习和理解 Redux
    前端科普系列(1):前端简史
  • 原文地址:https://www.cnblogs.com/zhangwenjing/p/3583350.html
Copyright © 2011-2022 走看看