搭建好Hadoop集群后,需要通过一些措施和方法,来保障集群的平衡运行。下面介绍Hadoop管理中会用到的相关概念或方法。
1 HDFS
1.1 永久性数据结构
1.1.1 Namenode的目录结构
hadoop@hhx247:/data/hadoop/hdfs/name$ ll current/
total 31812
-rw-rw-r--. 1 hadoop hadoop 15008 Jul 16 10:07 edits
-rw-rw-r--. 1 hadoop hadoop 32505856 Aug 7 16:39 edits.new
-rw-rw-r--. 1 hadoop hadoop 39367 Jul 16 10:02 fsimage
-rw-rw-r--. 1 hadoop hadoop 8 Jul 16 10:02 fstime
-rw-rw-r--. 1 hadoop hadoop 101 Jul 16 10:02 VERSION
1.1.2 文件系统映像和编辑日志
Fsimage文件:是HDFS元数据的一个永久性检查点。
Edits文件:编辑日志,在每次执行写操作之后,且在向客户端发送成功代码之前,编辑日志都需要更新和同步,以确保任何操作都不会因为机器故障而丢失。
1.1.3 SecondNamenode的目录结构
为namenode创建检查点数据,还拥有一份检查点数据,可用于namenode异常时恢复。
1.1.4 Datanode的目录结构
1.2 安全模式
Hadoop在启动时,首先将映像文件(fsimage)载入内存,并执行编辑日志(edits)中的各项操作,此时,namenode运行在安全模式下,对于客户端来说,只能是只读的。
在进行集群维护和升级时,必须进入安全模式,确保数据在指定时间段内是只读的。
1.2.1 进入和离开安全模式
./hadoop dfsadmin –safemode get
./hadoop dfsadmin –safemode wait
./hadoop dfsadmin –safemode enter
./hadoop dfsadmin –safemode leave
1.3 日志审计
HDFS的日志能够记录所有文件系统的访问请求,但默认情况下是没有启动的。如果有需要,可以启动该特性。
2 工具
2.1 dfsadmin工具
dfsadmin工具是多用途的,既可查找HDFS状态信息,又可在HDFS上执行管理操作。调用形式是hadoop dfsadmin。
2.2 fsck工具
hadoop提供fsck工具来检查HDFS中文件的健康状况。该工具会查找那些所有datanode中均缺失的块以及过少或过多复本的块。
运行格式:./hadoop fsck /
2.3 datanode块扫描器
各个datanode运行一个块扫描器,定期检测本节点上的所有块,从而在客户端读到坏块之前及时地检测和修复坏块。
默认情况下,块扫描器每隔三周就会检测块,这个周期可以通过dfs.datanode.scan.period.hours属性设置。
2.4 均衡器
随着时间推移,各个节点上的块会分布得越来越不均衡。不均衡的集群会降低mapreduce的本地性,导致部分节点相对更为繁忙。应该避免出现这种情况。
另外,新增节点或删除节点时,也需要运行均衡器来均衡各节点的数据块。
3 监控
主要监控集群的守护进程,包括namenode、secondnamenode、jobtracker、datanode、tasktracker。其中,在大型集群中,datanode、tasktracker经常容易出现故障。
3.1 日志
所有的守护进程都会产生日志文件,这些文件非常有助于查明系统中发生的事件。
3.2 Ganglia
Ganglia是一个针对超大规模集群的开源的分布式监控系统,运行之后仅消耗各个节点上很少的资源。Ganglia通过GangliaContext收集度量,例如CPU和内存的使用情况,用户也可以将Hadoop度量添加到Ganglia。
4 维护
4.1 日常管理过程
4.1.1 元数据备份
如果namenode的永久性元数据丢失或损坏,则整个文件系统无法使用。因此,元数据备份非常关键。
可以在系统中分别保存若干份不同时间的备份(例如:1小时前、1天前、1周前),以保护元数据。
4.1.2 数据备份
尽管HDFS充分考虑了如何可靠地存储数据,但仍然需要考虑对数据的备份。Hadoop中存储着海量数据,判断哪些数据需要备份,以及在哪里备份就极具有挑战性。关键点在于为数据划分不同优先级。
那些无法重新产生的数据,这些数据对业务非常关键,属于最高优先级。另外,能够重新产生的数据和
4.1.3 Fsck工具
建议定期地在整个文件系统上运行HDFS的fsck(文件系统检查)工具(例如:每天执行),主动查找丢失的或损坏的块。
4.1.4 文件系统均衡器
定期运行均衡器工具,保持文件系统的各个datanode比较均衡。
4.2 委任和解除节点
4.2.1 委任新节点
4.2.2 解除旧节点
4.3 升级
相关推荐
通过这个“细细品味Hadoop_Hadoop集群(第9期)_MapReduce初级案例”,读者不仅可以深入了解MapReduce的工作原理,还能掌握如何在实际项目中运用这些知识。同时,案例研究将帮助理解Hadoop集群的管理和监控,以及...
在Linux环境下搭建Hadoop集群是一项复杂但至关重要的工作,它涉及到多个步骤,包括理解Hadoop的基本概念、配置网络环境、安装必要的软件以及调整系统参数。本文将深入探讨这些知识点。 首先,我们需要了解Hadoop的...
Hadoop集群的搭建和管理是一项复杂的工作,它需要考虑硬件资源、网络配置、数据安全和监控等多个方面。通过理解Hadoop集群的基本原理,可以更好地部署和优化Hadoop环境,实现对大数据的高效处理和分析。
通过深入学习这份《Hadoop集群程序设计与开发》的PPT,开发者不仅能了解Hadoop的基本概念,还能掌握实际项目中的应用技巧,从而在大数据时代中发挥出更大的价值。对于希望从事大数据处理和分析的IT专业人士来说,这...
基于 Hadoop 集群平台的计算架构 本文介绍了基于 Hadoop 集群平台的计算架构,讨论了 Hadoop 的...通过本文,读者可以了解 Hadoop 集群平台的基本原理和搭建步骤,从而更好地应用 Hadoop 集群平台进行数据处理和分析。
本文将深入探讨如何搭建Hadoop集群,并在此基础上配置YARN资源管理器,以及如何部署Spark集群,同时也会涉及到Spark的Python编程指南。 首先,让我们了解Hadoop。Hadoop是一个开源框架,主要用于分布式存储和计算,...
这篇文档很显然是关于Hadoop集群服务的搭建教程,可能涵盖了从基础概念到实际操作的详细步骤。Hadoop是Apache基金会的一个开源分布式计算框架,广泛应用于大数据处理领域。它通过分布式文件系统(HDFS)和MapReduce...
在安装Hadoop集群时,首先你需要了解基本的硬件和软件需求。这通常包括多台服务器(作为节点)和Linux操作系统,例如Ubuntu或CentOS。节点分为NameNode、DataNode、Secondary NameNode和ResourceManager等角色,每个...
在IT行业中,大数据处理是一个至关重要的领域,而Hadoop作为其中的明星框架,为企业提供了高效、可扩展的数据...通过这个系列的学习,你将具备搭建和管理Hadoop集群的基本技能,为进一步探索大数据世界打下坚实基础。
【基于CentOS 7的Hadoop集群配置的研究与实现】 ...通过这篇论文,读者不仅可以了解到Hadoop的基本概念和原理,还能通过实例操作掌握Hadoop集群的配置和优化,为实际的大数据项目提供理论支持和实践经验。
在搭建Hadoop2完全分布式集群之前,需要了解Hadoop2的基本概念和架构。Hadoop2由HDFS(分布式文件系统)、MapReduce(分布式计算框架)和YARN(资源管理器)三部分组成。 2. 搭建环境 搭建Hadoop2完全分布式集群...
在本课程中,我们将深入探讨大数据...通过这个41页的课程,你将全面了解Hadoop集群的搭建、运维以及在大数据分析中的应用。无论是初学者还是有经验的开发者,都能从中受益,提升自己在大数据云计算领域的专业技能。
首先,需要了解Hadoop的基本概念和架构组成。Hadoop是一个由Apache基金会开发的开源框架,它允许分布在不同物理机器上的计算和存储资源协同工作来处理大规模数据集。Hadoop的核心组件包括Hadoop Distributed File ...
《Hadoop集群MapReduce实战详解》 MapReduce是Apache Hadoop框架的核心组件之一,它为大规模数据处理提供了分布式计算模型。本资料“hadoop集群mapreduce例子共52页.pdf”详细介绍了MapReduce的工作原理、架构及其...
此外,了解并掌握Hadoop的各种配置文件,如`hadoop-env.sh`、`core-site.xml`、`hdfs-site.xml`和`mapred-site.xml`,以及配置文件的同步管理工具如rsync,对于有效管理Hadoop集群也非常重要。 这些课程内容丰富,...
然后,他们可以利用Hadoop提供的API创建MapReduce作业,定义Mapper和Reducer类,设置输入输出格式,最后提交作业到Hadoop集群执行。对于HDFS,开发者可以使用DFSClient类进行文件的读写操作,例如创建文件、上传下载...
Windows 下 Hadoop 配置是一个复杂的过程,需要了解 Hadoop 的基本概念、配置文件和集群配置等知识。本文详细介绍了 Windows 下 Hadoop 配置的过程和常见问题,旨在帮助读者更好地理解和配置 Hadoop。