文档章节

HADOOP入门

d
 duan2
发布于 2017/09/03 11:30
字数 928
阅读 17
收藏 0

 

本教程参考传智播客教学

1.1 什么是HADOOP

1. HADOOP是apache旗下的一套开源软件平台

2. HADOOP提供的功能:利用服务器集群,根据用户的自定义业务逻辑,对海量数据进行分布式处理

3. HADOOP的核心组件有

A. HDFS(分布式文件系统)

B. YARN(运算资源调度系统)

C. MAPREDUCE(分布式运算编程框架)

4. 广义上来说,HADOOP通常是指一个更广泛的概念——HADOOP生态圈

1.2HADOOP生态圈

重点组件:

HDFS:分布式文件系统

MAPREDUCE:分布式运算程序开发框架

HIVE:基于大数据技术(文件系统+运算框架)的SQL数据仓库工具

HBASE:基于HADOOP的分布式海量数据库

ZOOKEEPER:分布式协调服务基础组件

Mahout:基于mapreduce/spark/flink等分布式运算框架的机器学习算法库

Oozie:工作流调度框架

Sqoop:数据导入导出工具

Flume:日志数据采集框架

分布式系统概述

  •     该软件系统会划分成多个子系统或模块,各自运行在不同的机器上,子系统或模块之间通过网络通信进行协作,实现最终的整体功能
  •     比如分布式操作系统、分布式程序设计语言及其编译(解释)系统、分布式文件系统和分布式数据库系统等。

集群搭建

集群简介

HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起

  • HDFS集群:

        负责海量数据的存储,集群中的角色主要有 NameNode / DataNode

  • YARN集群:

        负责海量数据运算时的资源调度,集群中的角色主要有 ResourceManager /NodeManager

    (那mapreduce是什么呢?它其实是一个应用程序开发包)

本集群搭建案例,以5节点为例进行搭建,角色分配如下:

角色分配

hdp-node-01     

 NameNode SecondaryNameNode

hdp-node-02    

ResourceManager  

hdp-node-03   

DataNode NodeManager
hdp-node-04

DataNode    

NodeManager
hdp-node-05

DataNode    

NodeManager

 

 

网络环境准备

 采用NAT方式联网

网关地址:192.168.64.2

3个服务器节点IP地址:192.168.64.101、192.168.64.102、192.168.64.103

子网掩码:255.255.255.0

服务器系统设置

添加HADOOP用户

为HADOOP用户分配sudoer权限

同步时间

设置主机名

 hdp-node-01

hdp-node-02

hdp-node-03

配置内网域名映射:

192.168.33.101          hdp-node-01

192.168.33.102          hdp-node-02

192.168.33.103          hdp-node-03

配置ssh免密登陆

配置防火墙

 

 HADOOP安装部署

上传HADOOP安装包

规划安装目录  /home/hadoop/apps/hadoop-2.6.1

解压安装包

修改配置文件  $HADOOP_HOME/etc/hadoop/

最简化配置如下:

vi  hadoop-env.sh

# The java implementation to use.

export JAVA_HOME=/home/hadoop/apps/jdk1.7.0_51

vi  core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hdp-node-01:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/HADOOP/apps/hadoop-2.6.1/tmp</value>
</property>
</configuration>

vi  hdfs-site.xml

<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/hadoop/data/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/hadoop/data/data</value>
</property>

<property>
<name>dfs.replication</name>
<value>3</value>
</property>

<property>
<name>dfs.secondary.http.address</name>
<value>hdp-node-01:50090</value>
</property>
</configuration>

vi  mapred-site.xml

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

vi  yarn-site.xml

<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop01</value>
</property>

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

vi  salves.

hdp-node-01
hdp-node-02
hdp-node-03

启动集群

初始化HDFS

bin/hadoop  namenode  -format

启动HDFS

sbin/start-dfs.sh

启动YARN

sbin/start-yarn.sh

运行一个mapreduce程序

 

cd $HADOOP_HOME/share/hadoop/mapreduce/

hadoop jar mapredcue-example-2.6.1.jar wordcount /wordcount/input  /wordcount/output

 

集群使用初步

 HDFS使用

 

1、查看集群状态

命令:   hdfs  dfsadmin  –report

也可打开web控制台查看HDFS集群信息,在浏览器打开http://hdp-node-01:50070/

2、上传文件到HDFS

 查看HDFS中的目录信息

命令:   hadoop  fs  –ls  /

上传文件

命令:   hadoop  fs  -put  ./ scala-2.10.6.tgz  to  /

从HDFS下载文件

命令:  hadoop  fs  -get  /yarn-site.xml

© 著作权归作者所有

共有 人打赏支持
上一篇: LINUX免密登陆
下一篇: HTTP之Web服务器
d
粉丝 0
博文 32
码字总数 31955
作品 0
郑州
私信 提问
(高清,无码)全国第一部hadoop教程全发布,陆续更新中......

雷锋来了,hadoop教程合集! Hadoop从入门到上手企业开发第1天 http://pan.baidu.com/s/1c0vU0dq Hadoop从入门到上手企业开发第2天 http://pan.baidu.com/s/1gd5XKXX Hadoop从入门到上手企业...

大象分享
2015/02/25
1K
17
大数据怎样才能踏入进去?年薪60万大数据架构师教你如何入门!

1.Linux基础和分布式集群技术 学完此阶段可掌握的核心能力: 熟练使用Linux,熟练安装Linux上的软件,了解熟悉负载均衡、高可靠等集群相关概念,搭建互联网高并发、高可靠的服务架构; 学完此...

董黎明
06/09
0
0
想当程序员?从这里入门吧!

想当程序员? 没找到合适的入门教程? 实验楼上有啊,各技术入门教程~ 【C 语言入门教程】 C语言,不用多介绍,大多数人的入门语言;除了入门教程,还有很多实战项目教程呢,学完基础直接动手...

实验楼
2017/11/21
0
0
hadoop hive hbase 入门学习 (三)

//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// hadoop 自学系列 hado......

curiousby
2015/03/12
0
0
hadoop最新稳定版本dkhadoop版本选择介绍

Hadoop对于从事互联网工作的朋友来说已经非常熟悉了,相信在我们身边有很多人正在转行从事hadoop开发的工作,理所当然也会有很多hadoop入门新手。Hadoop开发太过底层,技术难度远比我们想象的...

adnb34g
07/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Angularjs实现控制器之间通信方式示例

利用angularjs开发项目中,控制器之间的通信,比如参数的传递,数据的传递,都是比较常见的。控制器之间的通信,显得尤为重要。常见的方式有如下两种:一、angular服务的方式;二、基于事件广...

前端攻城老湿
16分钟前
0
0
xshell使用xftp传输文件

12月11日任务 15.4 xshell使用xftp传输文件 15.5 使用pure-ftpd搭建ftp服务 1.xshell使用xftp传输文件 示例一:xshell使用sftp传输文件 新建一个会话 定义为sftp 连接登入 可以get文件,下载...

hhpuppy
18分钟前
1
0
深入解析Vuex实战总结

这篇文章主要介绍了Vuex的初探与实战小结,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 1.背景 最近在做一个单页面的管理后台项...

前端攻城小牛
19分钟前
1
0
eslint rules 规则

'rules': { "comma-dangle": ["error", "never"], //是否允许对象中出现结尾逗号 "no-cond-assign": 2, //条件语句的条件中不允许出现赋值运算符 "no-console": 2, //不允许出现console语句 ...

agenyun
今天
2
0
类型判断时instanceof和equals的不同用法

接口设计时为了避免序列化的麻烦,将接口定义为参数为map<String,String>类型的接口,但是现在调用时需要转换当前的实体Bean为Map,接口接收方再把Map转换为另一个Bean实体。过程中的需要对类...

wangtx
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部