Hadoop高速入门

先决条件

支持平台

  • GNU/Linux是产品开发和执行的平台。

    Hadoop已在有2000个节点的GNU/Linux主机组成的集群系统上得到验证。

  • Win32平台是作为开发平台支持的。因为分布式操作尚未在Win32平台上充分測试,所以还不作为一个生产平台被支持。

所需软件

Linux和Windows所需软件包含:

  1. JavaTM1.5.x,必须安装,建议选择Sun公司发行的Java版本号。
  2. ssh 必须安装而且保证 sshd一直执行,以便用Hadoop 脚本管理远端Hadoop守护进程。

Windows下的附加软件需求

  1. Cygwin - 提供上述软件之外的shell支持。

安装软件

假设你的集群尚未安装所需软件,你得首先安装它们。

以Ubuntu Linux为例:

$ sudo apt-get install ssh

$ sudo apt-get install rsync

在Windows平台上,假设安装cygwin时未安装所有所需软件,则需启动cyqwin安装管理器安装例如以下软件包:

  • openssh - Net

下载

为了获取Hadoop的发行版。从Apache的某个镜像server上下载近期的 稳定发行版

执行Hadoop集群的准备工作

解压所下载的Hadoop发行版。编辑 conf/hadoop-env.sh文件。至少须要将JAVA_HOME设置为Java安装根路径。

尝试例如以下命令:

$ bin/hadoop

将会显示hadoop 脚本的使用文档。

如今你能够用下面三种支持的模式中的一种启动Hadoop集群:

  • 单机模式
  • 伪分布式模式
  • 全然分布式模式

单机模式的操作方法

默认情况下,Hadoop被配置成以非分布式模式执行的一个独立Java进程。这对调试很有帮助。

以下的实例将已解压的 conf 文件夹拷贝作为输入,查找并显示匹配给定正則表達式的条目。

输出写入到指定的output文件夹。

$ mkdir input

$ cp conf/*.xml input

$ bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+'


$ cat output/*

伪分布式模式的操作方法

Hadoop能够在单节点上以所谓的伪分布式模式执行,此时每个Hadoop守护进程都作为一个独立的Java进程执行。

配置

使用例如以下的 conf/hadoop-site.xml:

<configuration>
  <property>
    <name>fs.default.name</name>
    <value>localhost:9000</value>
  </property>
  <property>
    <name>mapred.job.tracker</name>
    <value>localhost:9001</value>
  </property>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
</configuration>

免passwordssh设置

如今确认是否能不输入口令就用ssh登录localhost:

$ ssh localhost

假设不输入口令就无法用ssh登陆localhost。运行以下的命令:

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

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

运行

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

$ bin/hadoop namenode -format

启动Hadoop守护进程:

$ bin/start-all.sh

Hadoop守护进程的日志写入到 ${HADOOP_LOG_DIR} 文件夹 (默认是
${HADOOP_HOME}/logs).

浏览NameNode和JobTracker的网络接口,它们的地址默觉得:

将输入文件复制到分布式文件系统:

$ bin/hadoop fs -put conf input

执行发行版提供的演示样例程序:

$ bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+'

查看输出文件:

将输出文件从分布式文件系统复制到本地文件系统查看:

$ bin/hadoop fs -get output output

$ cat output/*

或者

在分布式文件系统上查看输出文件:

$ bin/hadoop fs -cat output/*

完毕所有操作后,停止守护进程:

$ bin/stop-all.sh

全然分布式模式的操作方法

关于搭建全然分布式模式的。有实际意义的集群的资料能够在这里找到。

參考资料:http://hadoop.apache.org/docs/r1.0.4/cn/quickstart.html

Hadoop高速入门的更多相关文章

  1. Spark高速入门指南(Quick Start Spark)

    版权声明:本博客已经不再更新.请移步到Hadoop技术博客:https://www.iteblog.com https://blog.csdn.net/w397090770/article/detai ...

  2. sqoop 1.4.4-cdh5.1.2高速入门

    一.高速入门 (一)下载安装 1.下载并解压 wget http://archive.cloudera.com/cdh5/cdh/5/sqoop-1.4.4-cdh5.1.2.tar.gz tar - ...

  3. Hadoop快速入门

    目的 这篇文档的目的是帮助你快速完成单机上的Hadoop安装与使用以便你对Hadoop分布式文件系统(HDFS)和Map-Reduce框架有所体会,比如在HDFS上运行示例程序或简单作业等. 先决条件 ...

  4. Windows下FFmpeg高速入门

    本系列文章导航 Windows下FFmpeg高速入门 ffmpeg參数解释 mencoder和ffmpeg參数具体解释(Java处理视频) Java 生成视频缩略图(ffmpeg) 使用ffmpeg进 ...

  5. hadoop pig入门总结

    在这里贴一个pig源码的分析,做pig很长时间没做笔记,不包含任何细节,以后有机会再说吧 http://blackproof.iteye.com/blog/1769219 hadoop pig入门总结 ...

  6. Tensorflow高速入门2--实现手写数字识别

    Tensorflow高速入门2–实现手写数字识别 环境: 虚拟机ubuntun16.0.4 Tensorflow 版本号:0.12.0(仅使用cpu下) Tensorflow安装见: http://b ...

  7. C语言高速入门系列(二)

    C语言高速入门系列(二) -----转载请注明出处coder-pig 本节引言: 在前面一节中我们对C语言进行了初步的了解,学会了使用IDE进行代码的编写,编译执行! 在这一节中我们会对C语言的基本的 ...

  8. Swift高速入门之函数

    函数 看一个函数的样例: func addNumbers( let a:Int,let b:Int)->Int{ return a+b; } 实现两个数相加.函数必须以func开头,后面是函数名 ...

  9. C语言高速入门系列(八)

    C语言高速入门系列(八) C语言位运算与文件 本章引言: 在不知不觉中我们的C高速入门系列已经慢慢地接近尾声了,而在这一节中,我们会对 C语言中的位运算和文件进行解析,相信这两章对于一些人来说是陌生的 ...

随机推荐

  1. c21---结构体

    // // main.c // 结构体基本概念 // #include <stdio.h> int main(int argc, const char * argv[]) { /* 基本数 ...

  2. 国内物联网平台初探(七) ——Ablecloud物联网自助开发和大数据云平台

    平台定位 面向IoT硬件厂商,提供设备联网与管理.远程查看控制.定制化云端功能开发.海量硬件数据存储与分析等基础设施,加速硬件实现联网智能化. 架构 服务 云端服务一体化开发引擎 业内独创一体化开发引 ...

  3. 【POJ 2417】 Discrete Logging

    [题目链接] http://poj.org/problem?id=2417 [算法] Baby-Step,Giant-Step算法 [代码] #include <algorithm> #i ...

  4. x+=y与x=x+y相同吗?

    为了将赋值操作简便化,Java提供了很多扩展赋值运算符,例如+=.-=./=.*=等等,那么问题来了,x += 1与x = x +1两者相同吗? public class EqualsTest { @ ...

  5. Laravel-查询作用域

    Laravel-查询作用域 标签(空格分隔): php, laravel 全局作用域 ## 编写全局作用域 ## 编写全局作用域很简单.定义一个实现 Illuminate\Database\Eloqu ...

  6. ubuntu下安装 nginx + php + memcached + mariadb

    一,apt-get 安装 1,安装nginx sudo apt-get install nginx 所有的配置文件都在/etc/nginx下,虚拟主机配置在/etc/nginx/sites-avail ...

  7. Spring boot application.properties 配置

    原文链接: http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.ht ...

  8. 01-初学总结之《谭浩强C程序设计》

    注:个人针对于课本的易错点进行了相关的整理.整理的不专业,多多见谅. C语言中的易出错的点 这个笔记综合了 0. 常量&变量 常量 整型常量 -345,1000,0 实型常量 1)   十进制 ...

  9. 图表库 - Highchart / Echart

    当前主要使用HighChart和Echart图表库,都基于Jquery,需要先引用Jquery. 实际问题:引入Jquery需在图表库前,否则报错. HighChart官网:https://www.h ...

  10. Webstorm 破解2017.1 for Mac

    废话不多说,改了去年分享2016版本的文章,给同学们带来2017.1版本的Mac版本.(win版本网上很多,我这里就不贴出来了). 1.去官仿下载最新的版本  https://www.jetbrain ...