hadoop之fsimage和edits工作机制和元数据namenode宕机恢复

hdfs数据误删后恢复方式 背景 我们知道hdfs是hadoop体系上的文件系统,负责具体的数据文件存储,且如果一旦hdfs文件被误删除后,尤其是重要数据,对公司来说影响非常大。所以需要提前做一些安全预防措施,例如使用Hdfs Trash机制,或者重要目录应用Hdfs SnapShot功能,然后针对于删除的文件或者目录可以通过trash或者SnapShot机制来进行恢复,如果数据确实已经删除了(例如直接通过hadoopapi进行delete,未配置SnapShot),如果想恢复数据,就需要快速采取一定的措施了。下面我们来分别介绍下. 阅读详情

今天发现我们的集群namenode启动不了了,报错如下图


关键在于在secondarynamenode报错停止之后,namenode开始创建edits.new文件记录新的操作元数据,然后不知道是由于什么问题导致的这个元数据加载报错。

按照网上的一下资料恢复了集群,但是丢失了n多数据

4.恢复 
制造namenode宕机的情况 
1) kill 掉namenode的进程 



Java代码  
1. [root @master  name]# jps    
2. 11749  NameNode    
3. 12339  Jps    
4. 11905  JobTracker    
5. [root@master  name]# kill  11749     



 2)删除dfs.name.dir所指向的文件夹,这里是/data/work/hdfs/name 



Java代码  
1. [root @master  name]# rm -rf *    


   删除name目录下的所有内容,但是必须保证name这个目录是存在的 

3)从secondarynamenode远程拷贝namesecondary文件到namenode的namesecondary 



Java代码  
1. [root @master  hdfs]# scp -r slave- 001 :/data/work/hdfs/namesecondary/ ./    



 4)启动namenode 



Java代码  
1. [root @master  /data]# hadoop namenode –importCheckpoint    


正常启动以后,屏幕上会显示很多log,这个时候namenode就可以正常访问了 

5)检查 
使用hadoop fsck /user命令检查文件Block的完整性 

6)停止namenode,使用crrl+C或者会话结束 

7)删除namesecondary目录下的文件(保存干净) 



Java代码  
1. [root @master  namesecondary]# rm -rf *    



 8)正式启动namenode 



Java代码  
1. [root @master  bin]# ./hadoop-daemon.sh  start namenode    



恢复工作完成,检查hdfs的数据 
 还有一个将edits的工作原理的,这里也记录一下


        
namenode宕机导致数据丢失,hdfs启动namenode失败,secondarynamenode冷备份 namenode宕机导致数据丢失,hdfs启动namenode失败,secondarynamenode冷备份查看namenode(镜像和日志丢失) 查看namenode(镜像和日志丢失) 日志丢失 镜像丢失 启动hadoop(发现namenode没有启动) 查看namenode启动日志 镜像和日志数据丢失 从secondarynamenode中找备份数据,恢复数据 secondarynamenode存放备份日志的路径 /export/servers/hadoop-2.6.0-cdh5.14.0/ 阅读详情

相关推荐

Hadoop之HDFS03【NameNode工作原理】

日志文件是滚动的,一个正在写,几个已写好的,checkpoint的时候,把正在写的滚动一下,然后把fsimage文件和日志文件下载到secondaryNameNode机器上,完成同步,只有第一次才会下载fsimage文件,这时不会很大,下一次的时候secondaryNameNode上就有fsimage文件了就只需要下载日志文件即可,单个日志文件不会很大。文件中记录的是edits滚动的序号,每次重启namenode时,namenode就知道要将哪些edits进行加载edits。如果能恢复如何恢复?

2401_89790580的博客 723

NameNode的元数据管理及HA

1、NameNode的作用   NameNode是HDFS主从架构的主节点的守护进程,其主要作用为: 负责相应客户端的读写请求 管理HDFS的元数据 配置和应用副本存放策略 管理集群数据块负载均衡问题  其中元数据管理是NameNode最重要的功能之一,WAL(预写式日志)是管理NameNode元数据的主要手段。在使用WAL的系统中,所有的修改在提交前都要写入日志文件。 ...

qq_22042675的博客 1381

【Hadoop】(一)分布式文件系统 HDFS_namenode -format format the dfs filesystem

namenode是整个文件系统的管理节点。他维护着整个文件系统的文件目录树,文件/目录的元信息和每个文件对应的数据块列表。接收用户的操作请求。fsimage:元数据镜像文件。存储某一时段NameNode内存元数据信息。edits:操作日志文件。fstime:保存最近一次checkpoint的时间。在 PNN(Primary NameNode) 合并之前,会将 edits 和 fsimage 文件发送给 SNN,然后 PNN 创建一个新的 edits.new 文件继续记录 PNN 的操作。

2401_84615524的博客 787

HDFS NameNode故障处理:元数据高可用与HA切换实战指南

NameNode是HDFS集群的元数据中枢,其故障直接影响整个分布式文件系统的可用性与数据一致性。理解NameNode的启动原理(fsimage加载与edits回放)、内存状态强依赖特性及客户端缓存机制,是构建高可用架构的基础。Quorum Journal Manager(QJM)保障edits日志的多副本强一致写入,ZooKeeper Failover Controller(ZKFC)实现主备自动仲裁,二者协同支撑秒级故障切换。在超大规模集群中,手动恢复面临元数据丢失、恢复时间非线性增长与客户端重连风暴等

weixin_29057065的博客 210

Hadoop高可用架构原理与实战:NameNode故障恢复与集群切换

分布式系统的高可用设计,核心在于对状态的一致同步与故障时的快速转移。以Hadoop为例,NameNode作为集群元数据的唯一持有者,一旦宕机,整个文件系统将失去对外服务能力。借助QJM仲裁日志机制,多个JournalNode协同保证edits日志的多数派写入,使Standby NameNode能够持续同步状态;Zookeeper与ZKFC则完成自动选主与隔离,防止脑裂。YARN ResourceManager同样依赖类似思路实现调度层的高可用。理解这些基础原理,是构建生产级大数据平台的前提,也能帮助运维人员

weixin_29057237的博客 270

大数据入门(二)Hadoop分布式文件系统——HDFS简介

1. HDFS是什么

qq_37771475的博客 2758

Hadoop高可用架构实战:NameNode与ResourceManager双活方案全解析

高可用(HA)是分布式系统设计的核心话题,核心目标是消除单点故障对集群稳定性的影响。在Hadoop生态中,NameNode和ResourceManager分别承担HDFS元数据管理与YARN资源调度职责,一旦发生故障,整个数据链路和计算服务都会面临中断风险。通过引入QJM(Quorum Journal Manager)实现元数据日志的多数派持久化,结合ZooKeeper协调自动故障转移,可以构建无单点的双活架构。该方案能有效缩短RTO,保障实时采集、离线调度、即席查询等生产场景的持续可用。本文从工程实践角度

weixin_34038293的博客 491

【分布式】第三章 HDFS

HDFS是一种用于存储大规模数据的分布式文件管理系统,具有高容错性、高吞吐量等特点。其核心架构包括NameNode、DataNode和Secondary NameNode。HDFS适合一次写入、多次读取的场景,但不适合低延迟访问或频繁修改。文件以块(默认128MB)形式存储,通过多副本机制确保数据可靠性。HDFS提供了丰富的Shell操作命令和Java API客户端,支持文件上传、下载、删除等操作。数据读写流程涉及客户端、NameNode和DataNode的协同工作,采用机架感知策略优化数据分布。

2502_91990594的博客 297

校招Hadoop工程师面试复盘:HDFS、MapReduce、YARN高频考点全解析

分布式存储与计算是当前大数据技术体系的根基,Hadoop作为其中最经典的开源框架,承担着海量数据的可靠存储与并行处理任务。理解Hadoop生态,需要从HDFS的架构设计、MapReduce的计算模型以及YARN的资源调度原理入手,再延伸到Hive、ZooKeeper等组件的协同工作方式。掌握这些核心机制,不仅能帮助开发者搭建高可用的大数据平台,还能在实际业务中快速定位数据倾斜、小文件过多等典型问题。无论是进行Hadoop伪分布式搭建的环境实操,还是应对校招中的Hadoop面试题,扎实的原理认知都远比死记硬背

weixin_30321709的博客 525

从零搭建完全分布式HDFS集群:企业级大数据存储实战指南

分布式文件系统是处理海量数据的核心技术,它通过将数据分散存储在多台服务器上,实现了存储容量的线性扩展和高可用性。其核心原理在于元数据与数据存储的分离,由NameNode统一管理文件系统命名空间和数据块映射,而DataNode负责实际的数据块存储与读写。这种架构设计带来了显著的技术价值:一方面通过数据冗余副本机制保障了数据的容错性,即使部分节点故障数据也不会丢失;另一方面支持横向扩展,能够应对PB级甚至EB级的数据存储需求。在应用场景上,分布式文件系统是构建大数据分析平台、数据湖和机器学习训练环境的存储基石。

weixin_34068198的博客 607

字节跳动大数据校招面试复盘:从HDFS到Spark的考点与经验

在分布式系统与海量数据处理成为企业核心竞争力的今天,大数据开发岗位的面试考察早已超越简单的API调用,转而聚焦对底层原理与工程实践的深刻理解。从HDFS的读写流程与副本策略,到MapReduce的Shuffle机制,再到Spark的RDD依赖与调优思路,这些基础组件共同构成了大数据技术栈的基石。与此同时,Kafka在实时链路中的高吞吐设计、数据倾斜的排查方法以及系统设计思维,也成为了衡量候选人能否应对真实业务场景的关键标尺。无论是准备校招还是跳槽,掌握这些核心概念并理解其背后的设计思想,都是通往字节跳动等一

weixin_34294649的博客 869

HDFS Namenode故障恢复:从元数据损坏到集群重启全指南

HDFS的Namenode是整个分布式文件系统的“大脑”——它存储着所有文件的元数据(文件名、路径、权限、块位置等),协调Datanode的读写操作。一旦Namenode故障(比如元数据损坏、服务器宕机),整个HDFS集群会完全不可用:既无法读取 existing 文件,也无法写入新文件。新手可能会慌不择路,误操作导致元数据彻底丢失;有经验的工程师也可能因为对“元数据恢复逻辑”理解不深,踩中隐藏的坑(比如恢复后文件块丢失)。本文的目标是把Namenode故障恢复变成可复制的“流程化操作”你将学会。

小白菜的博客 516

【HDFS】集群高可用

集群高可用 HDFS单节点架构存在的问题 HDFS单点架构存在一些问题,首先是NameNode内存受限,因为数据的元数据信息全部保存在NameNode内存中。如果数据量足够庞大,可能会将NameNode内存占满,这种情况下会导致HDFS的扩展性上限。 其次就是单点故障问题,主从架构的HDFS是依靠主节点NameNode来运转的,一旦主节点挂掉就会导致整个集群不可用。 Federation(联邦)机制 联邦机制是Hadoop 2.x中提出的解决NameNode内存瓶颈问题的水平横向扩展方案。 它将多台Nam

pengpengsays 320

一文读懂,WMS仓库管理系统模块功能

对于仓库管理人员来说,仓储管理是一件需要十分负责、又精细化的工作。

深蓝易网的博客 5219

大众奥迪诊断不求人:手把手解析SAE J2819(CAN TP2.0)协议报文与连接流程

本文深入解析大众奥迪车型诊断核心标准SAE J2819(CAN TP2.0)协议,详细拆解连接建立流程与报文控制字段。通过实战案例展示通道设置、参数协商等关键步骤,提供诊断设备配置建议和常见故障排查技巧,帮助工程师掌握汽车诊断通信协议的精髓。

weixin_30421809的博客 397

手把手教你用DLP4500和海康相机搭建双目结构光系统(附完整代码获取路径)

本文详细介绍了如何利用DLP4500投影仪和海康工业相机搭建低成本双目结构光三维测量系统。从硬件选型、软件配置到结构光编码解码实现,再到三维重建全流程,提供了完整的实战指南和优化技巧,帮助用户以不到2万元的预算实现0.05mm精度的三维扫描。

weixin_32447969的博客 317

数字后端零基础入门系列 | Innovus零基础LAB学习Day7

数字后端零基础入门系列 | Innovus零基础LAB学习Day7

weixin_37584728的博客 2273

华为OD面试手撕真题 - 最大数

华为OD面试手撕真题 最大的数 提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解

qq_45776114的博客 341

搭建你的第一个MCP服务器(Python版)

在上两篇博客中,我们已经对MCP(Model Context Protocol)有了初步的了解。MCP是一种强大的协议,能够简化LLM(大型语言模型)与外部工具的交互。今天,我们将通过一个具体的例子,展示如何使用Python搭建一个简单的MCP服务器。通过这个过程,你将能够更好地理解MCP的工作原理,并为后续的应用开发打下基础。在MCP中,工具(Tool)是服务器提供给LLM的接口。我们将定义一个简单的工具,用于接收输入文本并返回处理后的结果。首先,我们需要定义一个工具类。这个工具类将继承自,并实现run。

加入“Super Entity”,与全能开发团队共探AI智能体与数字人项目,开启前沿技术之旅。 8096

【WRF理论】配置诊断变量 &diags

【WRF理论】配置诊断变量 &diags

WW、forever的博客 137

手把手教你学Simulink--基于电能质量与无功补偿的场景实例:统一电能质量调节器(UPQC)的联合控制仿真

在现代电力系统中,电能质量问题有源电力滤波器(APF)→ 治理谐波与无功动态电压恢复器(DVR)→ 补偿电压暂降/暂升静止无功发生器(SVG)→ 无功补偿与电压支撑而统一电能质量调节器(Unified Power Quality Conditioner, UPQC)是一种集串联补偿与并联补偿于一体的全能型电能质量治理装置✅ 电压类问题:暂降、暂升、不平衡、闪变✅ 电流类问题:谐波、无功、三相不平衡✅ 实现双向有功交换(储能型)串联单元(DVR功能):串联于线路,控制电源侧电压质量并联单元。

MHD0815的博客 239

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

上一篇: 使用mapreduce读取hfile
下一篇: VSFTP 添加用户
willwill1101
博客等级 码龄11年 5粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值