一、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. luncene 查询字符串的解析-QueryParser类

    搜索流程中的第二步就是构建一个Query.下面就来介绍Query及其构建. 当用户输入一个关键字,搜索引擎接收到后,并不是立刻就将它放入后台开始进行关键字的检索,而应当首先对这个关键字进行一定的分析和 ...

  2. [JS] jq绑定事件的参数传递

    $(function(){ var obj = {name:"select",param:"2"}; $("#select").click( ...

  3. 定期删除Azure存储账号下N天之前的数据文件-ARM

    ######RemoveStorageBlob*DaysOld-ARM##### <# .SYNOPSIS Remove all blob contents from one storage a ...

  4. C#-WebForm-GridView表格展示数据

    GrideView 控件,功能是将数据库的数据用表格的形式展示在页面上 一.<源>代码中放入 GridView 控件 打开<设计>界面 二.绑定数据源 (一)创建 LinQ 类 ...

  5. Gradle学习系列(三)

    上一篇我们已经学习了 Gradle 打包,那么这一节 就开始讲讲本章的第二版块:打包及使用Gradle过程中的常见错误问题. 有时候我们需要编辑一个开源项目之类的,希望把它导入了我们自己的IDE工具中 ...

  6. (转)CentOS 7 安装 Docker

    原文:http://www.cnblogs.com/stulzq/p/7743073.html http://www.cnblogs.com/stulzq/p/8629165.html-------- ...

  7. C# this关键字(给底层类库扩展成员方法)

    本文参考自唔愛吃蘋果的C#原始类型扩展方法—this参数修饰符,并在其基础上做了一些细节上的解释 1.this作为参数关键字的作用 使用this关键字,可以向this关键字后面的类型添加扩展方法,而无 ...

  8. OGNL取Map,List,Set的值

    用到的类有: 相应代码: public class Dog { private String name; public Dog(){ } public Dog(String name){ this.n ...

  9. redis之 集群配置(主从复制)

    集群的作用: 集群的方式有二种: 第二种的好处是:master宕机以后可以直接切换到slave1 主从通信的过程 先通过dump导出大块的rdb 然后把aof缓冲过来,然后通过replicationf ...

  10. android逆向基础:apk 反编译 重打包 重签名

    apk 反编译大家都比较熟悉,这里只做一个笔记. 1 反编译 apk apktool d perfect.apk 这样就把资源文件解压缩了, classes.dex 也反编译成了 smali 文件 2 ...