对于Hadoop中的所有服务器节点,从HDFS的角度来看,分为NameNode节点和DataNode节点,其中在整个集群中只有一个NameNode节点,其他都是DataNode节点;从MapReduce的角度看,分为JobTracker节点和TaskTracker节点,其中只有一个JobTracker节点,其他所有节点都是TaskTracker节点。
NameNode节点和JobTracker节点在集群中都由单一节点故障的问题,即这样的节点停机或失效后整个集群这都会出问题。
NameNode节点中不会保存数据块,数据全都在DateNode节点上保存。
本节我们主要学些NameNode节点及其相关的信息。
NameNode节点维护着HDFS文件系统中两个最重要的两个关系:
1)、HDFS的文件目录树,以及文件的数据块索引,即每个文件对应的数据块列表;
2)、数据块和DataNode数据节点的对应关系,即某一数据块保存在哪些数据节点上的信息。
其中,HDFS文件系统的文件目录树、元信息和数据块索引等信息会持久化到磁盘上,具体的就是保存在命名空间镜像FSImage文件和Edit Log编辑日志文件;数据块和数据节点的对应关系则在NameNode节点启动后,由DataNode节点通过“心跳”上报给NameNode节点,动态建立。
NameNode节点的主要作用:管理DataNode节点,接受DataNode节点的注册、心跳、数据块提交等信息的上报,发送数据块复制、删除恢复等名字节点的指令,同时名字节点还为客户端为文件目录上的操作和对文件数据读写、对HDFS系统进行管理提供支持。
NameNode节点和DataNode节点之间主要是通过数据节点向NameNode发送的“心跳”来交互信息,然后在对心跳的回复中将操作命令返回给DateNode节点,然后DataNode节点执行操作命令。
在第一次启动NameNode节点时,必须先格式化名字节点,命令行操作如下:
hadoop namenode -format
NameNode的安全模式
在NameNode节点,内存中一片空白,第一要紧的是就是将命名空间镜像文件加载到内存,并应用镜像编辑日志,站在这个过程结束后,会创建一个新的检查点,包括新的命名空间镜像和一个空的编辑日志。完成上述工作后,名字节点已经可以对Client提供服务,但是只是只读模式,接着名字节点开始处理DataNode节点,在内存中保存DataNode节点“汇报”给NameNode节点的数据块信息,以高效的运行整个分布式文件系统,然后名字节点就会离开安全模式,进入工作状态。
HDFS安全模式的特点总结:
1)、在安全模式下,HDFS只提供系统的只读模式,不能进行修改;
2)、NameNode名字节点启动时,根据配置,检查第二关系中数据块的副本信息,满足条件后才离开安全模式;
3)、可以通过命令行支持安全膜的状态查询及设置。
//查看NameNode节点是否处于安全模式
hadoop dfsadmin -safemode get
//等待名字节点离开安全模式
hadoop dfsadmin -safemode wait
//命令HDSF进入安全模式
hadoop dfsadmin -safemode enter
//让名字节点离开安全模式
hadoop dfsadmin -safemode leave
注:在安全模式下,名字节点也会对数据节点进行心跳检查。
分享到:
相关推荐
《Hadoop技术内幕:深入解析Hadoop Common和HDFS架构设计与实现原理》是一本深入探讨Hadoop核心组件的书籍,其源代码提供了对Hadoop内部工作原理的直观理解。这本书主要关注两个关键部分:Hadoop Common和HDFS...
本文旨在通过对Hadoop运行痕迹的深入分析,帮助用户更有效地诊断和解决问题。 #### 二、Hadoop运行环境搭建 为了能够跟踪Hadoop的运行痕迹,首先需要搭建一个实验环境。本例中构建了一个包含一个NameNode和三个...
总之,《Hadoop集群程序设计与开发教材最终代码》是深入学习Hadoop及其应用的宝贵资源,涵盖了从基础概念到实际编程的各个方面。通过研究这些代码,学习者可以提升自己在大数据处理领域的技能,掌握分布式计算的关键...
2. **Hadoop源码**:在Hadoop的源码中,开发者可以深入理解其内部工作原理,学习如何定制和优化Hadoop。源码包含各个模块,如HDFS的NameNode、DataNode,以及MapReduce的JobTracker、TaskTracker等。 3. **开发环境...
2. **HA(High Availability)**:Hadoop 2.5.1支持NameNode和ResourceManager的高可用性,这意味着即使主节点故障,系统也能自动切换到备份节点,保证服务不间断。 3. **性能优化**:包括更快的文件读写速度,更...
Hadoop 2.7是Apache Hadoop项目的一个重要版本,它在Hadoop生态系统中扮演着核心角色,提供了分布式存储和计算的能力。Hadoop是大数据处理的...通过深入学习和实践,你将能够驾驭这个强大的工具,解决复杂的数据问题。
本篇文章将基于"深入云计算:Hadoop应用开发实战详解 源代码"这一主题,深入探讨Hadoop在云计算环境中的应用与开发实践。 Hadoop是Apache基金会开发的一个分布式计算系统,主要由Hadoop Distributed File System ...
【云计算分布式大数据Hadoop深入浅出案例驱动实战】是一门以实战为导向的课程,由资深IT专家王家林老师主讲。课程的核心是通过案例教学,帮助学员掌握Hadoop这一强大的分布式大数据处理框架,适用于互联网企业、金融...
本笔记将从环境搭建、HDFS配置、YARN配置、分布式配置到MapReduce编程,全方位介绍Hadoop的学习过程,并结合JavaWeb项目实践,帮助读者深入理解Hadoop的工作原理和应用。 ### 一、环境搭建 在开始Hadoop的学习之前...
《Hadoop权威指南》中文版是全面了解和深入学习Hadoop技术的重要参考资料,它涵盖了Hadoop生态系统中的核心组件以及相关的分布式计算概念。这本书详细解析了Hadoop的设计原理、架构、安装配置、操作维护以及实际应用...
本教程将深入探讨Hadoop命令,帮助你更好地理解和运用这个强大的工具。 首先,我们要了解Hadoop的核心组件:HDFS(Hadoop Distributed File System)和MapReduce。HDFS是分布式文件系统,用于存储大量数据;...
《Hadoop权威指南(第4版)(修订版)》是一本深入探讨大数据存储与分析的重量级书籍,针对Hadoop生态系统提供了全面而详尽的指导。这本书不仅包含了中英文双语版本,还附带了源代码,使得读者可以更加直观地理解和实践...
总之,《Hadoop权威指南》中文版第四版不仅覆盖了Hadoop的基础知识,还深入探讨了其在大数据分析领域的应用,是一本全面而实用的Hadoop学习手册。无论你是初学者还是经验丰富的开发者,都能从中受益匪浅,提升自己在...
5. **格式化NameNode**:首次启动Hadoop前,需要对NameNode进行格式化,这会创建必要的元数据。 6. **启动Hadoop**:通过执行`start-dfs.sh`和`start-yarn.sh`脚本启动Hadoop的所有服务。 7. **测试Hadoop**:使用...
让我们深入探讨一下Hadoop的安装和配置过程中的关键知识点。 首先,我们要理解Hadoop的基本架构。Hadoop由两个主要部分组成:Hadoop Distributed File System (HDFS) 和 MapReduce。HDFS是分布式文件系统,负责数据...
在大数据领域,Hadoop是一个不可或缺的关键技术,它为企业和研究机构提供了海量数据处理的能力。"Hadoop大数据常见面试题库"通常涵盖了Hadoop生态...通过深入学习和实践,可以更好地理解和运用Hadoop来处理大数据挑战。
- Secondary NameNode:辅助NameNode,定期合并fsimage和editlog,防止NameNode元数据过多导致重启时间过长。 3. MapReduce框架详解: - JobTracker:在Hadoop 2.x之前的角色,负责任务调度和资源管理。 - YARN...
- NameNode:HDFS的主节点,负责管理文件系统的命名空间和数据块映射信息。 - DataNode:存储数据的实际节点,负责数据块的存储和检索。 - JobTracker:旧版Hadoop中的资源调度器,负责任务的分配和监控。 - ...
- NameNode:HDFS的主节点,负责管理文件系统的命名空间和文件块信息。 - DataNode:HDFS的数据节点,负责存储数据块,并向NameNode和客户端报告存储状态。 - JobTracker:旧版MapReduce中的资源调度器,负责任务...
本文将深入探讨Hadoop 2.4.1在大数据处理中的应用,以及如何搭建一个单机模拟分布式Hadoop环境。 一、Hadoop概述 Hadoop是由Apache基金会开发的一个开源项目,其设计灵感来源于Google的MapReduce和GFS(Google ...