【VSAN数据恢复】VSAN数据重构迁移失败的数据恢复案例

2024-01-26 09:36

本文主要是介绍【VSAN数据恢复】VSAN数据重构迁移失败的数据恢复案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

VSAN简介:
VSAN存储是一个对象存储,以文件系统呈现给在vSphere主机上。这个对象存储服务会从VSAN集群中的每台主机上加载卷,将卷展现为单一的、在所有节点上都可见的分布式共享数据存储。
对于虚拟机来说,只有一个数据存储,这个分布式数据存储来自VSAN集群中每一台vSphere主机上的存储空间,通过磁盘组进行配置,在单独的存储中存放所有的虚拟机文件。这种数据存储方式比较安全,当闪存盘或者容量盘出现故障的时候,数据会向其他节点转移,在转移过程中有可能出现故障。

VSAN数据恢复环境&故障:
4台服务器节点组建的VSAN集群,每台服务器节点上有两个磁盘组,每个磁盘组由一个SSD硬盘(闪存盘)带数块SAS硬盘(容量盘)。
VSAN集群中一个服务器节点上的一个磁盘组中的容量盘出现故障离线,VSAN进行数据重构迁移,在数据转移过程中机房突然停电,数据迁移中断没有完成。恢复通电后,该节点上另外一个磁盘组中又有2块容量盘离线,整个存储出现故障。虽然VSAN管理控制台可以登录,但是所有虚拟机都无法访问。

VSAN数据恢复过程:
1、将四个服务器节点上所有硬盘编号后取出,由硬件工程师对所有磁盘进行硬件故障检测,经过检测没有发现有磁盘存在硬件故障。将所有磁盘以只读模式进行全盘镜像,镜像完成后将所有磁盘按照编号还原到原服务器中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析底层数据,分析VSAN存储结构,获取虚拟机所在硬盘的分布信息。北亚企安数据恢复工程师通过分析出来的数据存储结构开发程序测试数据分布信息的准确性。
3、单独分析每个服务器节点上的两个磁盘组,弄清楚磁盘组内闪存盘和容量盘之间的对应关系。每块硬盘都有一个唯一标识进行磁盘间的对应,根据硬盘的ID信息来判读磁盘组中硬盘ID信息。
4、在每块硬盘上获取磁盘的UUID和磁盘组的UUID。
5、根据每个磁盘组中的容量盘组件信息获取此容量盘组件信息。
6、根据容量盘组件信息中记录的组件的MAP位置提取组件位图。
7、根据组件位图提取组件数据和缓存数据。
8、根据组件的描述信息获取组件所属对象及组件顺序,并把组件合并成对象。
9、根据对象提取数据。
10、数据提取完成后对恢复出来的数据进行检测。经过检测,所有恢复出来的虚拟机都可以正常启动。用户方认可本次数据恢复结果。本次VSAN数据恢复工作结束。

VSAN数据恢复总结:
VSAN对象可以看成一个卷,也可以理解成是一个逻辑卷,每个存在于数据存储上的VSAN对象都是由多个组件构成,这些组件分布于集群主机上的磁盘组中。在恢复vsan数据的过程中,获取组件信息是最关键的,因为组件是每个对象的重要组成部分。

这篇关于【VSAN数据恢复】VSAN数据重构迁移失败的数据恢复案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/646378

相关文章

pip install jupyterlab失败的原因问题及探索

《pipinstalljupyterlab失败的原因问题及探索》在学习Yolo模型时,尝试安装JupyterLab但遇到错误,错误提示缺少Rust和Cargo编译环境,因为pywinpty包需要它... 目录背景问题解决方案总结背景最近在学习Yolo模型,然后其中要下载jupyter(有点LSVmu像一个

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

使用Navicat工具比对两个数据库所有表结构的差异案例详解

《使用Navicat工具比对两个数据库所有表结构的差异案例详解》:本文主要介绍如何使用Navicat工具对比两个数据库test_old和test_new,并生成相应的DDLSQL语句,以便将te... 目录概要案例一、如图两个数据库test_old和test_new进行比较:二、开始比较总结概要公司存在多

Redis的数据过期策略和数据淘汰策略

《Redis的数据过期策略和数据淘汰策略》本文主要介绍了Redis的数据过期策略和数据淘汰策略,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录一、数据过期策略1、惰性删除2、定期删除二、数据淘汰策略1、数据淘汰策略概念2、8种数据淘汰策略

轻松上手MYSQL之JSON函数实现高效数据查询与操作

《轻松上手MYSQL之JSON函数实现高效数据查询与操作》:本文主要介绍轻松上手MYSQL之JSON函数实现高效数据查询与操作的相关资料,MySQL提供了多个JSON函数,用于处理和查询JSON数... 目录一、jsON_EXTRACT 提取指定数据二、JSON_UNQUOTE 取消双引号三、JSON_KE

Python给Excel写入数据的四种方法小结

《Python给Excel写入数据的四种方法小结》本文主要介绍了Python给Excel写入数据的四种方法小结,包含openpyxl库、xlsxwriter库、pandas库和win32com库,具有... 目录1. 使用 openpyxl 库2. 使用 xlsxwriter 库3. 使用 pandas 库

SpringBoot定制JSON响应数据的实现

《SpringBoot定制JSON响应数据的实现》本文主要介绍了SpringBoot定制JSON响应数据的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录前言一、如何使用@jsonView这个注解?二、应用场景三、实战案例注解方式编程方式总结 前言

使用Python在Excel中创建和取消数据分组

《使用Python在Excel中创建和取消数据分组》Excel中的分组是一种通过添加层级结构将相邻行或列组织在一起的功能,当分组完成后,用户可以通过折叠或展开数据组来简化数据视图,这篇博客将介绍如何使... 目录引言使用工具python在Excel中创建行和列分组Python在Excel中创建嵌套分组Pyt

SQL Server数据库迁移到MySQL的完整指南

《SQLServer数据库迁移到MySQL的完整指南》在企业应用开发中,数据库迁移是一个常见的需求,随着业务的发展,企业可能会从SQLServer转向MySQL,原因可能是成本、性能、跨平台兼容性等... 目录一、迁移前的准备工作1.1 确定迁移范围1.2 评估兼容性1.3 备份数据二、迁移工具的选择2.1

在Rust中要用Struct和Enum组织数据的原因解析

《在Rust中要用Struct和Enum组织数据的原因解析》在Rust中,Struct和Enum是组织数据的核心工具,Struct用于将相关字段封装为单一实体,便于管理和扩展,Enum用于明确定义所有... 目录为什么在Rust中要用Struct和Enum组织数据?一、使用struct组织数据:将相关字段绑