一种存储元数据损坏模拟方法、装置、终端及存储介质制造方法及图纸

技术编号:20160185 阅读:26 留言:0更新日期:2019-01-19 00:12
本申请实施例提供一种存储元数据损坏模拟方法、装置、终端及存储介质,包括:获取所述元数据在磁盘阵列上的地址;根据所述地址设置测试文件的写入大小和写入长度;将所述测试文件写入元数据在磁盘阵列上的地址;查看存储事件日志是否有元数据损坏的错误信息:是,则判定元数据损坏模拟成功;否,则判定元数据损坏模拟失败。本发明专利技术能够自动精确模拟元数据损坏,进而使测试服务器元数据恢复功能成为可能。

【技术实现步骤摘要】
一种存储元数据损坏模拟方法、装置、终端及存储介质
本专利技术涉及服务器测试
,具体涉及一种存储元数据损坏模拟方法、装置、终端及存储介质。
技术介绍
在存储MCS系统上,每个卷上都分为数据和元数据,数据是指外部IO写入数据块中的实际数据,而元数据指用来描述每个数据块特征的系统数据,诸如数据块大小、数据块的分布信息、数据结构信息等等,元数据为访问数据块提供了索引在存储MCS系统上,提供了卷元数据损坏时可根据数据块恢复元数据的功能,最大限度的保证了数据可靠性,但对该功能没有有效的测试方法,因为无法模拟出元数据损坏的场景。对卷的任何操作只能作用在卷的数据部分,无法操作元数据内容。
技术实现思路
针对现有技术的不足,本专利技术提供一种存储元数据损坏模拟方法、装置、终端及存储介质,以解决上述技术问题。第一方面,本申请实施例提供一种存储元数据损坏模拟方法,所述方法包括:获取所述元数据在磁盘阵列上的地址;根据所述地址设置测试文件的写入大小和写入长度;将所述测试文件写入元数据在磁盘阵列上的地址;查看存储事件日志是否有元数据损坏的错误信息:是,则判定元数据损坏模拟成功;否,则判定元数据损坏模拟失败。结合第一方面,在第一方面的第一种实施方式中,所述获取元数据在磁盘阵列上的地址包括:利用lsmdisklba命令查询所述元数据所在卷在相应磁盘阵列上的开始逻辑块地址;获取元数据所在卷的类型;根据所述开始逻辑块地址和所述类型获取元数据的逻辑块地址。结合第一方面,在第一方面的第二种实施方式中,所述根据地址设置测试文件的写入大小和写入长度包括:判断测试文件是否能够覆盖元数据地址:是,则判定所述测试文件可用;否,则调节所述测试文件的写入大小和写入长度。第二方面,本申请实施例提供一种存储元数据损坏模拟装置,所述装置包括:地址获取单元,配置用于获取所述元数据在磁盘阵列上的地址;文件设置单元,配置用于根据所述地址设置测试文件的写入大小和写入长度;文件写入单元,配置用于将所述测试文件写入元数据在磁盘阵列上的地址;信息查看单元,配置用于查看存储事件日志是否有元数据损坏的错误信息;第一判定单元,配置用于判定元数据损坏模拟成功;第二判定单元,配置用于判定元数据损坏模拟失败。结合第二方面,在第二方面的第一种实施方式中,所述地址获取单元包括:地址查询模块,配置用于利用lsmdisklba命令查询所述元数据所在卷在相应磁盘阵列上的开始逻辑块地址;类型获取模块,配置用于获取元数据所在卷的类型;地址获取模块,配置用于根据所述开始逻辑块地址和所述类型获取元数据的逻辑块地址。结合第二方面,在第二方面的第二种实施方式中,所述文件设置单元包括:判断模块,配置用于判断测试文件是否能够覆盖元数据地址;判定模块,配置用于判定所述测试文件可用;调节模块,配置用于调节所述测试文件的写入大小和写入长度。第三方面,提供一种终端,包括:处理器、存储器,其中,该存储器用于存储计算机程序,该处理器用于从存储器中调用并运行该计算机程序,使得终端终端执行上述的终端终端的方法。第四方面,提供了一种计算机存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。第五方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面所述的方法。本专利技术的有益效果在于,本专利技术提供的存储元数据损坏模拟方法、装置、终端及存储介质,通过获取元数据的地址,根据地址设置测试文件的写入大小和写入长度,进而将测试文件写入元数据地址覆盖元数据,再通过查看存储事件日志判断元数据损坏模拟是否成功。本专利技术能够自动精确模拟元数据损坏,进而使测试服务器元数据恢复功能成为可能。此外,本专利技术设计原理可靠,结构简单,具有非常广泛的应用前景。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请一个实施例的方法的示意性流程图。图2是本申请一个实施例的装置的示意性框图。图3为本专利技术实施例提供的一种终端的结构示意图。具体实施方式为了使本
的人员更好地理解本专利技术中的技术方案,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本专利技术保护的范围。下面对本申请中出现的关键术语进行解释。图1是本申请一个实施例的方法的示意性流程图。其中,图1执行主体可以为一种存储元数据损坏模拟装置。如图1所示,该方法100包括:步骤110,获取所述元数据在磁盘阵列上的地址;步骤120,根据所述地址设置测试文件的写入大小和写入长度;步骤130,将所述测试文件写入元数据在磁盘阵列上的地址;步骤140,查看存储事件日志是否有元数据损坏的错误信息:是,则判定元数据损坏模拟成功;否,则判定元数据损坏模拟失败。为了便于对本专利技术的理解,下面以本专利技术,模拟存储元数据方法的原理,结合实施例中对存储元数据进行模拟的过程,对本专利技术提供的存储元数据损坏模拟方法做进一步的描述。可选地,作为本申请一个实施例,所述获取元数据在磁盘阵列上的地址包括:利用lsmdisklba命令查询所述元数据所在卷在相应磁盘阵列上的开始逻辑块地址;获取元数据所在卷的类型;根据所述开始逻辑块地址和所述类型获取元数据的逻辑块地址。可选地,作为本申请一个实施例,所述根据地址设置测试文件的写入大小和写入长度包括:判断测试文件是否能够覆盖元数据地址:是,则判定所述测试文件可用;否,则调节所述测试文件的写入大小和写入长度。具体的,所述存储元数据损坏模拟方法包括:S1、获取所述元数据在磁盘阵列上的地址。对于RAID,LBA地址为0x0000000-0xFFFFFFF。RAID上创建的卷地址范围在RAIDLBA地址范围内,普通卷的元数据开始LBA地址为普通卷的开始LBA地址,普通卷的元数据结束LBA地址为普通卷开始LBA地址+0x800;压缩卷的元数据开始LBA地址为压缩卷开始LBA地址+0x380,压缩卷的元数据结束LBA地址为压缩卷开始LBA地址+0x800。在存储MCS系统CLI页面,首先使用lsmdisklba命令查询卷在对应RAID上的LBA地址。其中-vdisk为卷id,-vdisklba为要查询的LBA在RAID上的位置。返回结果中mdisk_lba为卷在RAID上的开始LBA[10:45:11]ins2:~#lsmdisklba–vdisk0–vdisklba0x0copy_idmdisk_idtypemdisk_lbamdisk_sartmisk_end00allocated0x0008E2380x0008E2380x00090237根据上述返回的结果,得到元数据的地址:如果该卷为普通卷,则元数据开始地址为0x0008E238,元数据结束地址为0x0008EA38;如果该卷为压缩卷,则元数据开始地址为0x0008E5B8,元数据结束地址为0x0008EDB8。S2本文档来自技高网
...

【技术保护点】
1.一种存储元数据损坏模拟方法,其特征在于,所述方法包括:获取所述元数据在磁盘阵列上的地址;根据所述地址设置测试文件的写入大小和写入长度;将所述测试文件写入元数据在磁盘阵列上的地址;查看存储事件日志是否有元数据损坏的错误信息:是,则判定元数据损坏模拟成功;否,则判定元数据损坏模拟失败。

【技术特征摘要】
1.一种存储元数据损坏模拟方法,其特征在于,所述方法包括:获取所述元数据在磁盘阵列上的地址;根据所述地址设置测试文件的写入大小和写入长度;将所述测试文件写入元数据在磁盘阵列上的地址;查看存储事件日志是否有元数据损坏的错误信息:是,则判定元数据损坏模拟成功;否,则判定元数据损坏模拟失败。2.根据权利要求1所述的方法,其特征在于,所述获取元数据在磁盘阵列上的地址包括:利用lsmdisklba命令查询所述元数据所在卷在相应磁盘阵列上的开始逻辑块地址;获取元数据所在卷的类型;根据所述开始逻辑块地址和所述类型获取元数据的逻辑块地址。3.根据权利要求1所述的方法,其特征在于,所述根据地址设置测试文件的写入大小和写入长度包括:判断测试文件是否能够覆盖元数据地址:是,则判定所述测试文件可用;否,则调节所述测试文件的写入大小和写入长度。4.一种存储元数据损坏模拟方法,其特征在于,所述装置包括:地址获取单元,配置用于获取所述元数据在磁盘阵列上的地址;文件设置单元,配置用于根据所述地址设置测试文件的写入大小和写入长度;文件写入单元,配置用于将所述测试文件...

【专利技术属性】
技术研发人员:高月峰
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:河南,41

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1