• Hadoop学习笔记一:单节点安装


    通过本节的学习,可以掌握如何在单节点上使用Hadoop进行Map/Reduce以及HDFS存储的实现。

    环境要求:

    支持的平台:

         支持GNU/Linux平台,可以作为测试和生产环境使用。Hadoop在2000个节点的生产环境中经受过考验。

         支持Win32平台作为测试环境,正式环境的测试还不够充分,所以发布版暂时不能支持Win32环境。

    需要的软件:

         1、Java 1.6.x,必须。

         2、ssh、sshd,必须。

         如果是在Windows环境下,你也许需要 Cygwin。

    安装必要的软件

         如果服务器没有必要的软件,就必须进行安装。不同的发行版本,有不同的安装方法。例如Ubuntu下:

         $ sudo apt-get install ssh

         $ sudo apt-get install rsync

    下载Hadoop

         从 这里 下载一个Hadoop的稳定版本。

    开始我们的Hadoop之旅

         解压下载的软件,在解压后的目录中,编辑 conf/hadoop-env.sh 脚本设置服务器的JAVA_HOME目录。

         我的环境是 Centos6.0,yum安装了OPEN-JDK,对应的目录为:

              /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/

         执行 bin/hadoop 命令,如果如下图所示,我们就做好使用 Hadoop 的准备了。

    Image(1)

         可以用三种方式使用Hadoop:

              本地模式(Local Standalone Mode);

              伪分布式模式(Pseudo-Distributed Mode);

              完全分布式模式;

    本地模式

         默认情况下,Hadoop是配置为本地运行的,以一个单独的Java进程运行,这种方式非常适合Debug。

         在本地,我选择了对 194Mb 的访问日志进行分析,如下代码:

             bin/hadoop jar hadoop-examples-0.20.203.0.jar grep input/ output/ 'favicon[a-z.]+'

         这个任务是分析日志中出现的favicon的次数,统计结果如下:

    Image(2)

         其中part文件中存储了我要查找的favicon字符串出现的次数。

    伪分布式模式

    配置:

         参照官方的配置进行,分别对conf/core-site.xml、conf/hdf-site.xml、conf/mapred-site.xml进行配置。配置的内容都比较类似,主要是配置一个服务器的主机名,然后配置对应的IP或值。

    设置无需密码的SSH:

         按照官方的设置

         $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

         $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

         但是第一次登陆的时候始终需要提示是否保存,这个有点不得其解。

    执行:

         首先格式化一个新的分布式文件系统

         $ bin/hadoop namenode -format

         完成后,会有一些提示,根据提示可以在 /tmp/hadoop-root/dfs 中找到两个文件夹。

         然后启动 Hadoop 的守护进程

         $ bin/start-all.sh

    我在安装的过程中提示了未知的jvm参数,但是并没有重大的影响,启动仍正常结束了,不知道什么原因

         这个问题是因为用root用户启动造成的,可以参考参考资料6中的方法,为hadoop这个文件打一个patch就可以解决。然后重新格式化namenode,进行测试。

          bin/hadoop jar hadoop-examples-0.20.203.0.jar grep logs output 'favicon'    

         执行上面的语句,可以对日志进行 WordCount 的分析。

         测试完成后,可以关闭所有的服务

    bin/stop-all.sh

    参考资料:

    1、Single Node Setup

    2、Hdfs Shell Handbook

    3、Hdfs error:could only be replicated to 0 nodes instead of 1

    4、Hadoop:Could not create Java Virtual Machine

    5、Namenode not starting

    6、Faile to start datanode while start-dfs.sh is executed by root user

  • 相关阅读:
    Impala 加载Hive的UDF
    在编译器中调试spark程序处理
    转:Kafka 客户端TimeoutException问题之坑
    Apache Kafka系列(五) Kafka Connect及FileConnector示例
    Apache Kafka系列(四) 多线程Consumer方案
    Apache Kafka系列(三) Java API使用
    Apache Kafka系列(二) 命令行工具(CLI)
    ajax异步刷新
    Mybaties下的分页功能的实现
    读取配置文件的方法
  • 原文地址:https://www.cnblogs.com/cocowool/p/2294564.html
Copyright © 2020-2023  润新知