HADOOP入门
2017-09-03 00:00
176 查看
本教程参考传智播客教学
1.1 什么是HADOOP
1. HADOOP是apache旗下的一套开源软件平台2. HADOOP提供的功能:利用服务器集群,根据用户的自定义业务逻辑,对海量数据进行分布式处理
3. HADOOP的核心组件有
A. HDFS(分布式文件系统)
B. YARN(运算资源调度系统)
C. MAPREDUCE(分布式运算编程框架)
4. 广义上来说,HADOOP通常是指一个更广泛的概念——HADOOP生态圈
1.2HADOOP生态圈
![](https://static.oschina.net/uploads/space/2017/0903/104611_tx9O_2946018.png)
重点组件:
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 |
![](https://static.oschina.net/uploads/space/2017/0903/105508_78to_2946018.png)
网络环境准备
采用NAT方式联网网关地址:192.168.64.2
3个服务器节点IP地址:19
3ff0
2.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
启动集群
初始化HDFSbin/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/
![](https://static.oschina.net/uploads/space/2017/0903/112904_c331_2946018.png)
2、上传文件到HDFS
查看HDFS中的目录信息
命令: hadoop fs –ls /
上传文件
命令: hadoop fs -put ./ scala-2.10.6.tgz to /
从HDFS下载文件
命令: hadoop fs -get /yarn-site.xml
相关文章推荐
- Hadoop:pig 安装及入门示例
- [Hadoop入门] - 1 Ubuntu系统 Hadoop介绍 MapReduce编程思想
- Hadoop入门
- Hadoop系列-MapReduce编程入门案例(八)
- Hadoop基础教程-第4章 HDFS的Java API(4.4 Windows+Eclipse+HDFS快速入门)
- hadoop2.6.0入门及其集群搭建
- Hadoop入门扫盲:hadoop发行版介绍与选择
- hadoop 学习入门 一 云计算之旅
- Hadoop入门之HDFS
- 每天收获一点点------Hadoop之HDFS基础入门
- hadoop入门博客链接
- hadoop cygwin eclipse 从入门到配置hadoop的心路历程 伪分布式
- hadoop的数据仓库--Hive初识入门
- Hadoop入门介绍
- Hadoop快速入门
- hadoop入门第七步---hive部署安装(apache-hive-1.1.0)
- 企业级Hadoop 2.x入门系列之九Hadoop核心配置文件的默认配置解读
- Hadoop入门进阶课程2--Hadoop2.X 64位编译
- Hadoop入门进阶课程1--Hadoop1.X伪分布式安装
- Hadoop入门学习笔记---part4