一、hadoop简介

相信你或多或少都听过hadoop这个名字,hadoop是一个开源的、分布式软件平台。它主要解决了分布式存储(hdfs)和分布式计算(mapReduce)两个大数据的痛点问题,在hadoop平台上你可以轻易地使用和扩展数千台的计算机而不用关心底层的实现问题。而现在的hadoop更是形成了一个生态体系,如图:

上图大体展示了hadoop的生态体系,但并不完整。总而言之,随着hadoop越来越成熟,也会有更多地成员加入hadoop生态体系中。

hadoop官方网站:http://hadoop.apache.org/

二、安装hadoop

hadoop安装分为三种形式:

1、单节点:也就是仅在一台机器上安装一个hadoop节点;

2、伪分布式:在一台机器上安装多个hadoop节点,模拟分布式环境;

3、完全分布式:在多态机器上分别安装节点;

而本文将以单节点安装作为学习演示使用

伪分布式可以参考:http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html#Pseudo-Distributed_Operation

完全分布式可以参考:http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html

准备环境

Linux系统:hadoop可以在Linux和windows平台上安装,但是windows平台没有经过生成测试,所以建议使用Linux平台,而本文采用的是centos作为测试平台。你可以在自己的电脑安装虚拟机来操作,安装vmware和centos参考文档:

https://www.cnblogs.com/lay2017/p/9786213.html

https://www.cnblogs.com/lay2017/p/9786479.html

hadoop是由Java开发的,所以你需要提供JDK环境的支持:

Linux中JDK安装参考文档:

https://www.cnblogs.com/lay2017/p/7442217.html

注意:如果你安装hadoop2.7+版本的话需要JDK1.7+的支持,如果是2.6-版本需要JDK1.6的支持。

下载安装hadoop

前往hadoop下载页面找到二进制包的下载地址

http://www.apache.org/dyn/closer.cgi/hadoop/common/

我们先在centos下创建一个hadoop目录,然后进入该目录:

mkdir /usr/local/hadoop
cd /usr/local/hadoop

使用wget命令下载hadoop到当前目录下(本文下载的是2.9.0稳定版:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.9.0/hadoop-2.9.0.tar.gz

使用tar命令解压缩

你会得到

接下来,你需要配置JAVA_HOME,首先进入到etc/hadoop目录下

cd /usr/local/hadoop/hadoop-2.9.0/etc/hadoop

编辑hadoop-env.sh文件

配置你的JAVA_HOME

三、测试

你可以使用hadoop/bin目录下的hadoop命令简单地查看一下版本号来测试:

bin/hadoop version

除了简单地使用命令,我们还可以运行hadoop的示例程序

为了验证当前的hadoop是否可用的,下面我们使用share目录下mapReduce的示例jar来测试一下

我们先回到hadoop的根目录

cd /usr/local/hadoop/hadoop-2.9.0

在运行示例jar之前先创建一个目录用于输入文件数据

mkdir input

我们将etc/hadoop下的一些文本文件拷贝过来当作测试用一下

cp etc/hadoop/*.xml input

接下来我们就可以运行share目录下的示例程序了(运行结果是统计所有输入文件中字符h出现的次数)

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.9.0.jar grep input output 'h'

我们将结果输出看一下

cat output/*

你会看到,统计次数为528次

为了以后方便,我们将hadoop的bin目录和sbin目录配置到系统环境变量里面去:

编辑系统环境变量配置

vi /etc/profile

增加环境变量,把hadoop_home和path给添加到系统里面去

这样我们在使用命令的时候就可以直接使用了,如

hadoop version

以上就是hadoop单节点的安装,参考官方文档实现:http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html

一、hadoop单节点安装测试的更多相关文章

  1. 【大数据系列】hadoop单节点安装官方文档翻译

    Hadoop: Setting up a Single Node Cluster. HADOOP:建立单节点集群 Purpose Prerequisites Supported Platforms R ...

  2. Hadoop 3.1.1 - 概述 - 单节点安装

    Hadoop: 单节点安装 目标 本文描述了如何安装和配置单机的 Hadoop,这样你可以使用 Hadoop MapReduce 和 Hadoop 分布式文件系统(HDFS)快速地尝试简单的操作. 前 ...

  3. Hadoop介绍及最新稳定版Hadoop 2.4.1下载地址及单节点安装

     Hadoop介绍 Hadoop是一个能对大量数据进行分布式处理的软件框架.其基本的组成包括hdfs分布式文件系统和可以运行在hdfs文件系统上的MapReduce编程模型,以及基于hdfs和MapR ...

  4. Hadoop学习笔记(一)Hadoop的单节点安装

    要想深入学习Hadoop分布式文件系统,首先需要搭建Hadoop的实验环境,Hadoop有两种安装模式,即单节点集群模式安装(也称为伪分布式)和完全分布式模式安装,本节只介绍单节点模式的安装,参考官方 ...

  5. hbase伪分布式安装(单节点安装)

    hbase伪分布式安装(单节点安装) http://hbase.apache.org/book.html#quickstart   1.    前提配置好java,环境java变量     上传jdk ...

  6. vertica单节点安装教程

    [准备] 1.CentOS 7.6的镜像盘(下载地址:官网) 2.vertica-9.1.0-0.x86_64.RHEL6(下载地址:https://pan.baidu.com/s/1IjWBUTku ...

  7. 二、hdfs单节点安装

    一.准备环境 在配置hdfs之前,我们需要先安装好hadoop的配置,本文主要讲述hdfs单节点的安装配置. hadoop的单节点安装配置请参考:https://www.cnblogs.com/lay ...

  8. Centos7 单节点安装 FastDFS + FastDHT服务

    Centos7 单节点安装 FastDFS + FastDHT服务 1.安装gcc(编译时需要) FastDFS是C语言开发,安装FastDFS需要先将官网下载的源码进行编译,编译依赖gcc环境,如果 ...

  9. Flume 学习笔记之 Flume NG概述及单节点安装

    Flume NG概述: Flume NG是一个分布式,高可用,可靠的系统,它能将不同的海量数据收集,移动并存储到一个数据存储系统中.轻量,配置简单,适用于各种日志收集,并支持 Failover和负载均 ...

随机推荐

  1. BEAUTIFUL

    DESCRIPTION:一个长度为n 的序列,对于每个位置i 的数ai 都有一个优美值,其定义是:找到序列中最长的一段[l, r],满足l<i<r,且[l, r] 中位数为ai(我们比较序 ...

  2. 初识阿里开源诊断工具Arthas

    上个月,阿里开源了一个名为Arthas的监控工具.恰逢近期自己在写多线程处理业务,由此想到了一个问题. 如果在本机开发调试,IDE可以看到当前的活动线程,例如IntelliJ IDEA,线程是运行还是 ...

  3. Mybatis 优化:

    Mybatis 的优化: ** 第一个 对于数据库配置的优化: 创建一个 DB.properties 的文件 里面编写Key = value 形式的数据库信息 比如: driver = com.mys ...

  4. 理解 atime,ctime,mtime (上)

    理解 atime,ctime,mtime (上) Unix文件系统会为每个文件存储大量时间戳.这意味着您可以使用这些时间戳来查找任意时间访问到的任何文件或目录(读取或写入),更改(文件访问权限更改)或 ...

  5. Ionic2使用TypeScript调用自定义JavaScript脚本

    在项目app目录下面写一个.d.ts 里面声明你要引用JS库里面定义的变量,变量名要保持一致 declare var Strophe: any; 然后把JS库放在www目录下面 然后在index.ht ...

  6. 基于CH340的一键下载电路

    一.CH340简介 CH340 是一个 USB 总线的转接芯片,实现 USB 转串口或者 USB 转打印口.CH340是国产芯片,应用场合居多,市场占有率很高.常用的USB转串口芯片还有CP2102. ...

  7. @ModelAttribute注解和POJO传参过程

    1.@ModelAttribute注解 @ModelAttribute主要有三个用途,对方法进行注解,对参数进行注解,还有@ModelAttribute和@RequestMapping一起对方法进行注 ...

  8. 调用ajax的返回值,需要再ajax之外的函数体里return,以及同步异步问题

    <html> <head> <meta charset="utf-8"/> <script src="js/jquery-1.1 ...

  9. SBC应用

    在VoIP呼叫中主要使用会话发起协议(SIP),H.323和MGCP呼叫信令协议,Sbc 在主叫和被叫的信令/媒体路径之间引入. 通常,SBC隐藏网络拓扑,接管呼入并生成到新的请求分支到被叫.技术上叫 ...

  10. C#高效新增数据到数据库(十万级别测试)

    我们在对数据库进行新增数据时,怎么能把速度提到最快,时间缩到最短呢?下面针对三种方法进行比较 新增 逐条新增数据模式 Stopwatch s2 = new Stopwatch(); s2.Start( ...