1. 解压

    将安装包hadoop-2.2.0.tar.gz存放到/home/haozhulin/install/目录下,并解压

    #将hadoop解压到/home/haozhulin/install路径下,定位目录到/home/haozhulin/install

    tar –zxvf hadoop-2.2.0.tar.gz –C /home/haozhulin/install/

    或者先让其有执行权限,然后直接./就可以解压

    chmod
    +x hadoop-2.2.0.tar.gz    

    ./hadoop-2.2.0.tar.gz

    修改解压后的目录中的文件夹etc/hadoop下的xml配置文件(如果文件不存在,则自己创建),后面开始修改配置文件6个:

    在/home/haozhulin/install/hadoop-2.2.0/etc/hadoop/下的

    hadoop-env.sh

    core-site.xml

    hdfs-site.xml

    mapred-site.xml

    yarn-site.xml

    slaves

  2. 修改hadoop-env.sh

    配置hadoop的jdk版本环境

    cd /home/haozhulin/install/hadoop-2.2.0/etc/hadoop/

    vim hadoop-env.sh

    hadoop-env.sh为hadoop环境变量,依赖JDK,进行如下修改

    #第27行

    export JAVA_HOME=/home/haozhulin/install/java/jdk1.7.0_65

  3. 修改core-site.xml

    在其<configuration></ configuration >中插入:

    <!-- 制定HDFS的老大(NameNode)的地址 -->

    <property>

        <name>fs.default.name</name>

        <!--<name>fs.defaultFS</name>-->

        <value>hdfs://whaozl001:9000</value>

    </property>

    <!-- 指定hadoop运行时产生文件的存储目录 -->

    <property>

        <name>hadoop.tmp.dir</name>

        <value>/home/haozhulin/install/hadoop-2.2.0/tmp</value>

    </property>

    上面写的whaozl001是主机名,也可以更改为地址入10.30.30.1,端口号9000也可以是其他的。需要注意的是whaozl001是在/etc/hosts/中设置的host,如果未设置,需要更换为localhost,最好设置,见1.2.7。

    /home/haozhulin/install/hadoop-2.2.0/tmp为手动创建的haozhulin文件夹下的tmp目录下。

  4. 修改hdfs-site.xml

    在其<configuration></ configuration >中插入:

    <!-- 指定HDFS副本的数量 -->

    <property>

        <name>dfs.replication</name>

        <value>1</value>

    </property>

    由于这里是伪分布,只有一台机器,只保存一份。

    问题:当采用虚拟机搭建hadoop环境时,每次虚拟机重启后,hadoop无法启动成功?

    解决方案:在hdfs-site.xml中增加以下两个配置项:

    <!--配置NameNode元信息存放的路径-->

    <property>

        <name>dfs.namenode.name.dir</name>

        <value>/home/haozhulin/install/hadoop-2.2.0/dfs/name</value>

    </property>

    <!--配置DataNode数据信息存放的路径,可配置多个,逗号隔开-->

    <property>

        <name> dfs.datanode.data.dir </name>

        <value>/home/haozhulin/install/hadoop-2.2.0/dfs/data</value>

    </property>

    其中,各个目录一定要是非/tmp下的目录,dfs.namenode.name.dir属性可以配置多个目录,如/data1/dfs/name,/data2/dfs/name, /data3/dfs/name,….。各个目录存储的文件结构和内容都完全一样,相当于备份,这样做的好处是当其中一个目录损坏了,也不会影响到 Hadoop的元数据,特别是当其中一个目录是NFS(网络文件系统Network File System,NFS)之上,即使你这台机器损坏了,元数据也得到保存。

  5. 修改mapred-site.xml

    在里面没有mapred-site.xml文件,但是提供了mapred-site.xml.template模板文件,将其重命名为mapred-site.xml文件,然后进行配置(后续不再重述)。

    #cp命令也可以,mv为重命名命令

    mv mapred-site.xml.template mapred-site.xml

    vim mapred-site.xml

    再在其<configuration></ configuration >中插入:

    <!-- 指定mr运行在yarn上 -->

    <property>

        <name>mapreduce.framework.name</name>

        <value>yarn</value>

    </property>

    mr为mapReduce,将mapReduce配置到yarn上运行

  6. 修改yarn-site.xml

    在其<configuration></ configuration >中插入:

    <!-- 指定YARN的老大(ResourceManager)的地址 -->

    <property>

        <name>yarn.resourcemanager.hostname</name>

        <value>whaozl001</value>

    </property>

    <!-- reducer获取数据的方式 -->

    <property>

        <name>yarn.nodemanager.aux-services</name>

        <value>mapreduce_shuffle</value>

    </property>

  7. 修改slaves

    #定位到/home/haozhulin/install/hadoop-2.2.0/etc/hadoop/slaves文件

    vim etc/hadoop/slaves

    #由于是单机伪分布,所以DataNode就只有localhost

    #不需要修改,也可以改为127.0.0.1,都是指本机

     

  8. 将hadoop添加到环境变量

    将hadoop添加到环境变量之后,可直接在命令窗口中使用hadoop命令(替换了其对应hadoop所在的路径)。

    #指定到环境变量文件

    vim /etc/profile

    做如下修改:

    #java environment

    export JAVA_HOME=/home/haozhulin/install/java/jdk1.7.0_09

    export HADOOP_HOME=/home/haozhulin/install/hadoop-2.2.0

    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

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

    然后刷新环境变量配置

    source /etc/profile

    【注意】最好是安装JDK同时,把HADOOP_HOME也配置好,后续方便(各DataNode机就不用麻烦)。

  9. 格式化namenode

    这里所有配置当前路径应该是/home/haozhulin/install/hadoop-2.2.0/bin下

    这里是对HDFS的namenode进行格式化。

    #hadoop namenode –format 该命令过时了,但是依然可用

    #进入hadoop位置/home/haozhulin/install/hadoop-2.2.0/bin/hadoop

    which hadoop

    #hdfs位置#/home/haozhulin/install/hadoop-2.2.0/bin/hdfs

    which hdfs

    之前配置core-site.xml时配置了一个tmp目录(非临时文件目录)

    #新命令格式化namenode,产生tmp目录

    hdfs namenode -format

    【注意】如果没有配置hadoop环境变量,则格式化须使用:

    #该命令过时

    bin/hadoop namenode –format

    #采用如下命令(同上)

    bin/hdfs namenode -format

  10. 启动hadoop

    这里可以一次用./sbin/start-all.sh启动所有,但是一般是先启动HDFS,然后启动yan(因为启动all会多次要求输入root密码),而且start-all.sh命令已经过时。

    #先启动HDFS

    sbin/start-dfs.sh

    #再启动yarn

    sbin/start-yarn.sh

    单独启动HDFS:

    #跳转到hadoop-2.2.0目录下

    sbin/hadoop-daemon.sh start namenode

    sbin/hadoop-daemon.sh start datanode

    单独启动yarn:

    sbin/yarn-daemon.sh start nodemanager

    sbin/yarn-daemon.sh start resourcemanager

  11. 验证hadoop启动成功

    使用jps命令验证

    jps

    27408 NameNode

    28218 Jps

    27643 SecondaryNameNode

    28066 NodeManager

    27803 ResourceManager

    27512 DataNode

    jps为Java命令(which jps)

    http://10.30.30.1:50070 (HDFS管理界面)

    http://10.30.30.1:8088 (MapReduce管理界面)

    表 2.1 hadoop各进程关系

    进程

    关系

    含义

    ResourceManager 

    yarn的老大

    负责资源调度分配给

    mapreduce/spark/storm

    NodeManager

    yarn的小弟

    负责干活

    NameNode

    hdfs的老大

    负责接收用户请求,数据映射关系

    DataNode

    hdfs的小弟

    负责存储数据

    SecondaryNameNode

    NameNode的助理

    不是NameNode的热备

    协助NameNode

    NameNode一般是多个,一般配置一个主一个备。

  12. hdfs测试(下载和上传)

    #将/root/jdk-7u9-linux-i586.gz文件上传到hdfs/下并重命名为jdk

    hadoop fs –put /root/jdk-7u9-linux-i586.gz hdfs://whaozl001:9000/jdk

    然后通过http://10.30.30.1:50070(HDFS管理界面)里面的点击Browse the filesystem NameNode logs查看,也可以在里面下载。

    可以将hadoop的系统理解为一个网盘。

    #命令方式下载jdk并重命名为jdk1.7

    hadoop fs –get hdfs://whaozl001:9000/jdk /home/jdk1.7

    #解压这个文件

    tar –zxvf jdk1.7

  13. 测试MapReduce和YARN

    /home/haozhulin/install/hadoop-2.2.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.2.0.jar下就是多个mapreduce的例子,里面有一个wordcount例子

    #查看后面还需要跟哪些参数,wordcount需要一个输入一个输出

    hadoop jar hadoop-mapreduce-expamples-2.2.0.jar

    #弄一个words文件,里面有很多单词,将其上传到hdfs

    hadoop fs –put /words hdfs://whaozl001:9000/words

    #显示hdfs下的所有文件

    hadoop fs –ls hdfs://whaozl001:9000

    #测试examples中的wordcount例子

    hadoop jar hadoop-mapreduce-expamples-2.2.0.jar wordcount hdfs://whaozl001:9000/words hdfs://whaozl001:9000/wcount

    #查看结果

    hadoop fs –ls hdfs://whaozl001:9000

  14. 检验错误

    错误都保存在/home/haozhulin/install/hadoop-2.2.0/logs目录下

    cd /home/haozhulin/install/hadoop-2.2.0/

    ls

    cd logs

hadoop伪分布安装的更多相关文章

  1. Hadoop伪分布安装详解(五)

    目录: 1.修改主机名和用户名 2.配置静态IP地址 3.配置SSH无密码连接 4.安装JDK1.7 5.配置Hadoop 6.安装Mysql 7.安装Hive 8.安装Hbase 9.安装Sqoop ...

  2. Hadoop伪分布安装详解(三)

    目录: 1.修改主机名和用户名 2.配置静态IP地址 3.配置SSH无密码连接 4.安装JDK1.7 5.配置Hadoop 6.安装Mysql 7.安装Hive 8.安装Hbase 9.安装Sqoop ...

  3. 转载 hadoop 伪分布安装

    一. 概要        经过几天的调试,终于在Linux Cent OS 5.5下成功搭建Hadoop测试环境.本次测试在一台服务器上进行伪分布式搭建.Hadoop 伪分布式模式是在单机上模拟 Ha ...

  4. Hadoop伪分布安装详解(二)

    目录: 1.修改主机名和用户名 2.配置静态IP地址 3.配置SSH无密码连接 4.安装JDK1.7 5.配置Hadoop 6.安装Mysql 7.安装Hive 8.安装Hbase 9.安装Sqoop ...

  5. Hadoop伪分布安装配置

    安装环境: 系统:Ubuntu 14.10   64bit hadoop:2.5.1 jdk:1.8.0_11 安装步骤: 一.安装JDK 安装 jdk,并且配置环境以及设置成默认 sudo gedi ...

  6. Hadoop伪分布安装详解(四)

    目录: 1.修改主机名和用户名 2.配置静态IP地址 3.配置SSH无密码连接 4.安装JDK1.7 5.配置Hadoop 6.安装Mysql 7.安装Hive 8.安装Hbase 9.安装Sqoop ...

  7. Hadoop伪分布安装详解(一)

    注:以下截图针对Ubuntu操作系统,对Centos步骤类似.请读者选择不同镜像即可. 第一部分:VMware WorkStation10 安装 1.安装好VMware10虚拟机软件并下载好Ubunt ...

  8. linux配置Hadoop伪分布安装模式

    1)关闭禁用防火墙: /etc/init.d/iptables status 会得到一系列信息,说明防火墙开着. /etc/rc.d/init.d/iptables stop 关闭防火墙 2)禁用SE ...

  9. Hadoop学习记录(1)|伪分布安装

    本文转载自向着梦想奋斗博客 Hadoop是什么? 适合大数据的分布式存储于计算平台 不适用小规模数据 作者:Doug Cutting 受Google三篇论文的启发 Hadoop核心项目 HDFS(Ha ...

随机推荐

  1. 在SQL Server 实现递归

    --在SQL Server 中其实提供了CTE[公共表表达式]来实现递归: Declare @Id Int Set @Id = 24;    ---在此修改父节点 With RootNodeCTE(I ...

  2. ArcGIS Runtime SDK for WPF已不更新,后续将被ArcGIS Runtime SDK for .NET取代

    ArcGIS Runtime SDK 10.2.5 for WPF is now available! by mbranscomb and Rex Hansen on January 27, 2015 ...

  3. 解决Android Studio启动速度慢的问题。避免每次启动Android Studio都要fetching Android sdk compoment information。

    Android Studio每次启动都要去fetching sdk,由于Android sdk 官网在大陆连不上,所以每次启动时界面都会停在那里很久. 解决办法就是设置取消每次fetching sdk ...

  4. Web开发必备资源汇总[转]

    导读:原文来自< Best “must know” open sources to build the new Web>,译文由酷壳网陈皓整理编译< 开源中最好的Web开发的资源 & ...

  5. oracle进制转换

    h2 { margin-top: 0.46cm; margin-bottom: 0.46cm; direction: ltr; line-height: 173%; text-align: justi ...

  6. oracle 日期格式大全

    to_date("要转换的字符串","转换的格式")   两个参数的格式必须匹配,否则会报错. 即按照第二个参数的格式解释第一个参数. to_char(日期,& ...

  7. 自己在使用的English词典

    一.ESL/非母语词典 二.EFL/母语词典 1.American Heritage Dictionary 2.World Book Dictionary 3.Oxford Dictionary of ...

  8. P1832 A+B Problem(再升级)

    P1832 A+B Problem(再升级) 题目提供者 usqwedf 传送门 标签 动态规划 数论(数学相关) 洛谷原创 难度 普及/提高- 通过/提交 107/202 题目背景 ·题目名称是吸引 ...

  9. UIView-图层方法

    // // ViewController.m // UIView-图层概念 // // Created by wangtouwang on 15/5/5. // Copyright (c) 2015年 ...

  10. ubuntu fcitx 安装 使用

    系统内置的ibus的86五笔,感觉有些老不太好用, 所以安装试用了一下fcitx下的五笔,记录一下安装方法 ,各种搜索... 我的ubuntn版本: #48-Ubuntu SMP Fri Aug 24 ...