【文章说明】:本篇将对Hadoop进行整体介绍,包含Hadoop是什么,有哪些发行版本,优势是什么?组成是什么等等。
【思维导图】:
【文字大纲内容】:
- 概述
- Hadoop是什么
- 1)Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
- 2)主要解决,海量数据的存储和海量数据的分析计算问题。
- 3)广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈
- Hadoop三大发行版本
- Apache Hadoop
- Cloudera Hadoop
- CDH
- Hortonworks Hadoop
- HDP
- Hadoop优势
- 高可靠性
- Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。
- 高扩展性
- 在集群间分配任务数据,可方便的扩展数以千计的节点
- 高效性
- 在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。
- 高容错
- 能够自动将失败的任务重新分配
- 高可靠性
- 组成
- 1.X、2.X、3.X的区别
- 1.X时代,Hadoop中的MR同时处理业务逻辑运算和资源的调度,耦合性较大
- 2.X时代,增加Yarn,Yarn只负责资源的调度,MR只负责运算。
- 3.X时代,组成没有变化,在2.X基础上做了一定优化
- HDFS架构概述
- NameNode
- 作用:存储文件的元数据,如文件名,文件目录结构,文件属性,以及每个文件的块列表和块所在的DataNode等
- SecondaryNode
- 作用:每隔一段时间对NameNode元数据备份
- DataNode
- 作用:在本地文件系统存储文件块数据,以及块数据的校验和
- NameNode
- Yarn架构概述
- ResourceManager(RM)
- 作用:整个集群资源(CPU、内存等)的老大
- NodeManager(NM)
- 作用:单个节点服务器的资源老大
- ApplicationMaster(AM)
- 作用:单个任务运行的老大
- Container
- 作用:容易,相当一台独立的服务器,里面封装了任务运行所需要的资源,如内存、CPU、磁盘、网络等
- ResourceManager(RM)
- MapReduce架构概述
- Map
- Map阶段并行处理输入数据
- Reduce
- Reduce阶段对Map结果进行汇总
- Map
- 1.X、2.X、3.X的区别
- Hadoop是什么
- Hadoop安装
- Hadoop目录组成
- bin 目录
- 存放对 Hadoop 相关服务(hdfs,yarn,mapred)进行操作的脚本
- etc 目录
- Hadoop 的配置文件目录,存放 Hadoop 的配置文件
- lib 目录
- Hadoop 的配置文件目录,存放 Hadoop 的配置文件
- sbin 目录
- 存放启动或停止 Hadoop 相关服务的脚本
- share 目录
- 存放 Hadoop 的依赖 jar 包、文档、和官方案例
- bin 目录
- 集群启停常用命令
- 整体启动/停止Hdfs
- start-dfs.sh/stop-dfs.sh
- 整体启动/停止Yarn
- start-yarn.sh/stop-yarn.sh
- 分别启动/停止 HDFS 组件
- hdfs --daemon start/stop namenode/datanode/secondarynamenode
- 启动/停止 YARN
- yarn --daemon start/stop resourcemanager/nodemanager
- 整体启动/停止Hdfs
- 常用端口号说明
- Hadoop2.X
- NameNode 内部通信端口
- 8020/9000/9020
- NameNode HTTP UI
- 9870
- MapReduce 查看执行任务端口
- 8088
- 历史服务器通信端口
- 19888
- NameNode 内部通信端口
- Hadoop3.X
- NameNode 内部通信端口
- 8020/9000
- NameNode HTTP UI
- 50070
- MapReduce 查看执行任务端口
- 8088
- 历史服务器通信端口
- 19888
- NameNode 内部通信端口
- Hadoop2.X
- 常见错误&注意事项
- 注意事项
- 事项1
- 在启动Yarn时,一定是在装有ResourceManager服务的节点上启动,否则,ResourceManager可能未启动
- 事项2
- 在非第一次进行hdfs格式化时,一定将data目录与log目录全部删除,再进行格式化
- 事项1
- 常见错误
- 错误1:防火墙没关闭、或者没有启动 YARN
- INFO client.RMProxy: Connecting to ResourceManager at hadoop108/192.168.10.108:8032
- 错误2:不识别主机:java.net.UnknownHostException: hadoop102: hadoop102 at java.net.InetAddress.getLocalHost(InetAddress.java:1475) at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:146) at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1290) at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1287) at java.security.AccessController.doPrivileged(Native Method)at javax.security.auth.Subject.doAs(Subject.java:415)
- (1)在/etc/hosts 文件中添加 192.168.10.102 hadoop102(2)主机名称不要起 hadoop hadoop000 等特殊名称
- 错误3:8088 端口连接不上
- cat /etc/hosts注释掉如下代码
- 错误1:防火墙没关闭、或者没有启动 YARN
- 注意事项
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
#::1 hadoop102