【服务器数据恢复】H3C华三Ceph分布式存储文件丢失数据恢复案例

一:客户信息

海南某三甲医院

二:案例背景

什么是分布式文件系统

分布式文件系统(DistributedFile System,DFS)是一种能够在多台计算机之间共享文件存储资源的系统。它将文件存储在多个节点上,这些节点通常是位于不同地理位置的服务器或计算机集群。分布式文件系统的核心目标是提高文件存储的可靠性、可扩展性和性能,同时为用户提供透明的文件访问体验,仿佛文件是存储在单一的本地文件系统中一样。

Ceph的三种存储结构

对象存储:Ceph 提供 S3 和 Swift 兼容的RESTful API,用于存储和检索对象数据。

块存储:Ceph 提供块设备接口,支持虚拟机的块存储,如 KVM、OpenStack 等虚拟化平台。

文件系统:Ceph 提供一个 POSIX 兼容的文件系统(CephFS),支持传统的文件存储需求。

三:案例描述

近期我司遇到一个华三的分布式云平台,有三台物理机,每台物理机使用24块12TB的物理盘+3块1TB的闪存+2块480G的SSD系统盘,总容量为七百多TB,客户误操作删除了100TB的数据文件,云平台才用的是文件存储模式,通过NFS协议挂载传入数据。。

四:解决方案

**1.**应急响应

客户联系我们以后,我方技术团队面对这一紧急情况,立即让客户的运维团队启动应急预案,采取了以下措施:

1.紧急停机:首先,为避免进一步的数据损坏,立即停止了所有可能影响到Ceph集群的操作,包括数据写入和读取。

2.环境评估:对当前的Ceph分布式集群状态进行全面评估,确认受影响的范围及程度,包括哪些配置文件丢失,是否已造成数据损坏等。

**2.**恢复挑战

在服务器没有备份容灾的情况下进行数据恢复是**挑战性的,主要挑战包括:

无备份可用:传统的恢复方式依赖于已有的备份,而在没有备份的情况下,需要通过日志文件、元数据和其他剩余数据来重建丢失的配置。

系统复杂性:云平台与Ceph分布式存储的配置复杂,恢复过程中稍有不慎就可能造成数据的**性丢失。

时间紧迫:在实际业务环境中,服务的中断会带来巨大的损失,因此需要快速而准确地进行恢复。

**3.**案例评估

客户已经找过多家数据恢复公司进行恢复操作,虽未能成功恢复数据文件,但已经把三台物理机的87块硬盘全部镜像为虚拟磁盘的镜像文件。因为华三大多数都是使用的ceph来管理,我司对各个版本的ceph都有过底层解析,经过沟通客户选择相信我们,跳过现勘阶段,直接将装有镜像文件的硬盘送至我司进行数据提取。

**4.**恢复方案

1、初步解析

在工作站上使用winhex查看物理盘和闪存盘,发现底层为ceph分布式存储,其下层是基于bluestore的分布式结构,"上层"使用leveldb算法,"中间层"使用rocksdb运作。全局采用持久化的模式,算是一种标准化的新版ceph分布式存储系统。

Bluestore:

Leveldb:

告知客户2天内可让客户看见我司随机提取的数据文件。

2.恢复前的准备工作

1、从闪存盘获取leveldb数据库文件。

Leveldb-sst:

2、解析rocksdb的运作模式,可以理解为"16进制结构的表信息"。

Rocksdb:

3、获取所有物理盘的osd位图信息。

Osdmap:

3、获取必要信息

1、解析leveldb的表结构,依照特定的算法全盘获取持久化之前的meta_data(元数据)。

2、解析当前rocksdb的运作模式,通过meta_data中记录的信息与之关联。

3、将所有物理盘上的osd信息按照特定的结构全部获取,获取每段osd信息上的"ID"信息。

4、获取闪存盘上记录的文件head信息。

5、获取bluestore给每个对象分配的ID信息(包含文件名信息)。

4、分布式空间碎片组合

将获取的各种元数据信息导入到SQL数据库内

1、将rocksdb与meta_data进行关联,获取每块的空间信息

2、将head信息与空间信息进行关联,使得可以通过head去访问文件的在空间内的存储地址。

3、将从bluestore获取的对象ID信息与head关联。

4、将自建的SQL数据库与每块硬盘(osd)关联

5、通过ID→head→空间信息→获取分配的地址信息

5、开始数据文件的恢复提取

五:案例总结

经过紧张而有序的工作,我方技术团队终于成功恢复了Ceph分布式存储服务器集群的配置文件,并确保了整个系统环境的稳定运行。此次事件虽然惊心动魄,但也带来了宝贵的经验教训:

  1. 加强备份管理:务必建立健全的备份机制,定期备份Ceph集群关键配置文件和数据,确保备份的完整性和可用性,以防不测。

  2. 提高安全意识:合理设置管理员权限,加强运维人员的安全教育和培训,提升自身的运维能力和数据保护水平,降低人为错误的发生概率。

  3. 完善应急预案:制定规范的操作流程,不断完善和优化应急预案,确保在紧急情况下能够迅速、有效地响应。

  4. 加强监控与日志分析:开启日志审计功能,记录管理员的所有操作,便于追溯和排查问题,充分利用监控系统和日志分析工具,及时发现并处理潜在问题。

Ceph是当前非常流行的开源分布式存储系统,具有高扩展性、高性能、高可靠性等优点,同时提供块存储服务(rbd)、对象存储服务(rgw)以及文件系统存储服务(cephfs)。目前也是OpenStack的主流后端存储,和OpenStack亲如兄弟,为OpenStack提供统一共享存储服务。使用Ceph作为OpenStack后端存储,具有如下优点:

所有的计算节点共享存储,迁移时不需要拷贝根磁盘,即使计算节点挂了,也能立即在另一个计算节点启动虚拟机(evacuate)。

利用COW(Copy On Write)特性,创建虚拟机时,只需要基于镜像clone即可,不需要下载整个镜像,而clone操作基本是0开销,从而实现了秒级创建虚拟机。

Ceph RBD支持thin provisioning,即按需分配空间,有点类似Linux文件系统的sparse稀疏文件。创建一个20GB的虚拟硬盘时,最开始并不占用物理存储空间,只有当写入数据时,才按需分配存储空间。

当数据发生丢失时,金海境科技研发团队深入研究各种服务器和系统设计思路,认真对比故障类别,攻克疑难恢复案例,总结成功恢复经验,拥有成功修复服务器数据库,虚拟化平台,分布式存储等数据中心相关的上万个疑难案例,并掌握了勒索病毒恢复核心技术,所有恢复的数据不丢记录,结构完整,直接使用,不报错。

相关推荐
赫尔·普莱蒂科萨·帕塔2 小时前
Kurator 分布式云原生环境技术深度分析与实践指南
分布式·云原生
永亮同学2 小时前
【探索实战】从“工具堆叠”到“平台治理”:基于 Kurator 构建统一分布式云原生管理底座的实践与思考
分布式·云原生
一起养小猫2 小时前
【探索实战】Kurator云边协同实践:基于KubeEdge的分布式物联网平台构建
分布式·物联网·struts
南知意-2 小时前
从零搭建 Live2D 看板娘教程(自建API避墙版)
服务器·前端·vue.js·开源·博客·美化·看板娘
Wang's Blog2 小时前
RabbitMQ: 基于Docker技术实施集群部署实战指南
分布式·docker·rabbitmq
联蔚盘云2 小时前
数据推送方案-Azure Storage
经验分享
tuokuac2 小时前
Linux的目录结构
linux·运维·服务器
menggb072 小时前
通过 S3 接口删除 Ceph RGW 对象后,ceph df 使用率不立即减少的原因详解
ceph
qq762118222 小时前
Linux mq_open打开失败
linux·运维·服务器