一、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. SpringMVC 的映射

    27.1.1 @RequestMapping使用 之前,我们是把@RequestMapping注解放在方法之上,用来给方法绑定一个请求映射.除此以外,@RequestMapping注解还可以放在类的上 ...

  2. 《快学Scala》第六章 对象 第七章 包和引入

  3. jquery 通过attr获取属性只有一个值的解决

    var a = []; $($('select.list[data-target="' + target + '"]').find("option:selected&qu ...

  4. json 模块的基本使用学习

    内容大纲 1: 为什么要学习json模块 >1:因为网络之间的通信,还有不同语言之间的相互内容沟通,需要用到json 模式进行沟通 >2:写入部分文件用json文件保存, 2:json的序 ...

  5. Tomcat启动和请求处理解析

    tomcat是我们经常使用的组件,但是内部是如何运行的呢,我们去一探究竟. 1.tomcat架构 tomcat的整体架构图如下: Tomcat中只有一个Server,一个Server可以有多个Serv ...

  6. Dota2APP--第一天

    从今天开始,下定决心自己独立开发一个有关于Dota2的APP,因为非常喜欢这个游戏恰好自己又是做iOS移动开发的所以萌生了这个想法.希望可以坚持下去,有喜欢dota2的朋友也可以提点建议. 一.项目的 ...

  7. C++基础知识:成员函数、对象拷贝、私有成员

    一.综述 类是我们自己定义的数据类型(新类型) 设计类时要考虑的角度: (1)站在设计和实现者的角度来考虑 (2)站在使用者的角度来考虑 (3)父类,子类 二.类基础 (1)一个类就是一个用户自己定义 ...

  8. python学习,day3:函数式编程,带参数

    # coding=utf-8 # Author: RyAn Bi def test(x,y,z): print(x) print(y) print(z) test(y=2,z =3,x=1) #形参与 ...

  9. github上关于campbell数据采集的一些代码。

    数据自动采集: https://github.com/USGS-OWI/deployer-campbell   program that reads loggernet files and refor ...

  10. HAL库定时器

    1.在cubmx中设置时钟源,设置对应的定时器,预分频系数,计数模式,是否自动重装载,中断使能,中断优先级 2.HAL_TIM_Base_Start_IT(&htim2);开启定时器中断 3. ...