【VSAN数据恢复】VSAN磁盘组故障,数据恢复案例大曝光

简介: VSAN 是基于 vSphere 内核开发的可扩展分布式存储架构,在 vSphere 集群主机中安装硬盘与闪存构建存储层,经管理控制形成共享存储层。其数据存储为对象存储,以文件系统形式呈现给 vSphere 主机,从启用 VSAN 集群的主机加载卷,形成单一、各节点可见的分布式共享数据存储。它简化了存储配置,虚拟机只有一个来自集群各主机存储空间、通过磁盘组配置的分布式数据存储,可存储所有虚拟机文件。

VSAN 是基于 vSphere 内核开发的可扩展分布式存储架构,在 vSphere 集群主机中安装硬盘与闪存构建存储层,经管理控制形成共享存储层。
其数据存储为对象存储,以文件系统形式呈现给 vSphere 主机,从启用 VSAN 集群的主机加载卷,形成单一、各节点可见的分布式共享数据存储。它简化了存储配置,虚拟机只有一个来自集群各主机存储空间、通过磁盘组配置的分布式数据存储,可存储所有虚拟机文件。
虽数据存储较安全,但闪存盘或容量盘故障时,数据转移过程可能出现其他故障。下面介绍北亚数据恢复中心近期成功恢复的 VSAN 存储数据案例。

VSAN数据恢复环境:
数台某品牌服务器组建VSAN集群。每台服务器节点上有两个磁盘组,每个磁盘组有1块SSD硬盘+5块SAS硬盘,SSD做闪存,SAS做容量盘。

VSAN故障:
其中一个服务器节点上的一个磁盘组中的容量盘出现故障离线。容量盘出现故障的时候VSAN正在重构迁移数据,这个时候机房停电导致数据迁移没有完成。来电的时候,另外一个磁盘组中也有两块硬盘出现故障离线,VSAN存储出现故障。VSAN的管理控制台可以登录,但是所有的虚拟机都无法访问了。

VSAN数据恢复过程:
将四个服务器节点上的所有硬盘以只读方式做全盘镜像(包括那几块因故障离线的硬盘。镜像完成后,将所有硬盘按照原样还原到节点服务器上。
基于基于镜像文件分析底层数据存储结构,确认虚拟机所在硬盘的分布信息。北亚企安数据恢复工程师在分析底层数据存储结构的时候,开发相应的程序测试数据分布信息的准确性。
单独分析每个节点上的两个磁盘组,搞清楚磁盘组内的闪存硬盘和容量盘之间的对应关系。每块硬盘都有一个唯一标识进行磁盘间的对应,根据硬盘的ID信息,判读磁盘组里的硬盘ID信息。
1、获取每块硬盘的磁盘UUID及磁盘组UUID。
2、依据磁盘组中容量盘组件信息获取其详情。
3、从组件信息的MAP位置提取组件位图。
4、由组件位图提取组件数据与缓存数据。
5、按组件描述信息确定所属对象及顺序,合并组件成对象。
6、从对象中提取数据。
可以将VSAN对象看成一个卷,也可以理解成是一个逻辑卷。每个存在于数据存储上的VSAN对象都是由多个组件构成,这些组件分布于集群主机上配置的磁盘组中。在恢复数据的过程中,组件的信息提取是关键。因为组件是每个对象的重要组成部分,本次故障组件损坏的很少,恢复出来的虚拟机都能正常启动。

相关文章
|
Ubuntu Linux 网络安全
云计算|OpenStack|社区版OpenStack(实务操作---cloud-init的使用)
云计算|OpenStack|社区版OpenStack(实务操作---cloud-init的使用)
1100 0
|
缓存 Linux 调度
Linux服务器如何查看CPU占用率、内存占用、带宽占用
Linux服务器如何查看CPU占用率、内存占用、带宽占用
8237 0
|
SQL 监控 关系型数据库
pgsql: zabbix 历史表history_uint变更为分区表
pgsql: zabbix 历史表history_uint变更为分区表
|
监控 Ubuntu Linux
在Linux中,如何使用Pacemaker和Corosync?
在Linux中,如何使用Pacemaker和Corosync?
|
存储 Prometheus 监控
公司要上监控,Zabbix 和 Prometheus 怎么选?这么选准没错!
公司要上监控,Zabbix 和 Prometheus 怎么选?这么选准没错!
3380 0
公司要上监控,Zabbix 和 Prometheus 怎么选?这么选准没错!
|
机器学习/深度学习 存储 人工智能
大语言模型的预训练[5]:语境学习、上下文学习In-Context Learning:精调LLM、Prompt设计和打分函数(Scoring Function)设计以及ICL底层机制等原理详解
大语言模型的预训练[5]:语境学习、上下文学习In-Context Learning:精调LLM、Prompt设计和打分函数(Scoring Function)设计以及ICL底层机制等原理详解
大语言模型的预训练[5]:语境学习、上下文学习In-Context Learning:精调LLM、Prompt设计和打分函数(Scoring Function)设计以及ICL底层机制等原理详解
|
存储 负载均衡 监控
【数据库架构】使用pgpool II的PostgreSQL高可用性
在本文中,我们讨论了使用pgpool II(PostgreSQL开源扩展之一)的高可用性系统设置。它是我们的解决方案之一,可以满足这两个要求:高可用性和可扩展性。
|
Python
Python|yield的解析及用法
Python|yield的解析及用法
703 0
|
消息中间件 Ubuntu Java
Kafka安装并配置SASL_PLAINTEXT认证
Kafka安装并配置SASL_PLAINTEXT认证
2026 0
|
弹性计算 运维 Ubuntu
PVE Cloud-INIT 模板配置
Cloud-init是开源的云初始化程序,能够对新创建弹性云服务器中指定的自定义信息(主机名、密钥和用户数据等)进行初始化配置。通过Cloud-init进行弹性云服务器的初始化配置,将对您使用弹性云服务器、镜像服务和弹性伸缩产生影响。简单地讲,cloud-init是一个Linux虚拟机的初始化工具,被广泛应用在AWS和OpenStack等云平台中,用于在新建的虚拟机中进行时间设置、密码设置、扩展分区、安装软件包等初始化设置。
732 0

热门文章

最新文章