CN111581019B - 一种存储故障恢复的测试方法和装置 - Google Patents

一种存储故障恢复的测试方法和装置 Download PDF

Info

Publication number
CN111581019B
CN111581019B CN202010316043.6A CN202010316043A CN111581019B CN 111581019 B CN111581019 B CN 111581019B CN 202010316043 A CN202010316043 A CN 202010316043A CN 111581019 B CN111581019 B CN 111581019B
Authority
CN
China
Prior art keywords
list
check
fault
recovery
failure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010316043.6A
Other languages
English (en)
Other versions
CN111581019A (zh
Inventor
刘粉粉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202010316043.6A priority Critical patent/CN111581019B/zh
Publication of CN111581019A publication Critical patent/CN111581019A/zh
Application granted granted Critical
Publication of CN111581019B publication Critical patent/CN111581019B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明公开了一种存储故障恢复的测试方法和装置,该方法包括:获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件;处理待测存储故障的存储集群,以获得与执行命令项目对应的故障前检查信息以键值对的形式存储于故障前列表中;向存储集群注入特定故障,并使用存储故障恢复机制根据特定故障确定对应的故障恢复场景并进一步恢复存储集群的可用性;处理存储故障恢复的存储集群,以获得与执行命令项目对应的恢复后检查信息以键值对的形式存储于恢复后列表中;确定存储故障恢复的测试结果。本发明能够使故障恢复测试适配存储系统和测试场景的变化,缩短测试时间,节省人力,提高了结果精准度。

Description

一种存储故障恢复的测试方法和装置
技术领域
本发明涉及虚拟机领域,更具体地,特别是指一种存储故障恢复的测试方法和装置。
背景技术
对于存储软件,为了系统数据的保护,都具有故障恢复机制,应用不同级别的保护实现不同程度的故障恢复,包括应对单节点硬件或软件失效的故障恢复级别,集群级别应对集群软件失效的故障,从硬盘中恢复界别应对同时多个硬件失效故障,配置备份和恢复级别使用备份的配置数据,快速创建和配置一个新的集群。集群配置数据众多,如果故障恢复机制的测试,只靠单纯的人工对比故障前和故障恢复后的数据是否符合预期,不仅非常繁琐且准确性也不高;并且,对于不同的测试场景所校验的数据信息是不同的;注入的故障不同校验的数据也不同。目前的自动化工具只针对某种故障注入测试检查写死了所有的检查项,不能适配存储系统和测试场景的变化。
针对现有技术中故障恢复机制的测试不能适配存储系统和测试场景的变化的问题,目前尚无有效的解决方案。
发明内容
有鉴于此,本发明实施例的目的在于提出一种存储故障恢复的测试方法和装置,能够使故障恢复测试适配存储系统和测试场景的变化,缩短测试时间,节省人力,提高了结果精准度。
基于上述目的,本发明实施例的第一方面提供了一种存储故障恢复的测试方法,包括执行以下步骤:
获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件,其中每个检查项均包括一个或多个执行命令项目和与执行命令项目对应的一个或多个检查内容项目;
使用检查项配置文件中的每个检查项中的一个或多个执行命令项目处理待测存储故障的存储集群,以获得与执行命令项目对应的故障前检查信息,并将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表中;
向存储集群注入特定故障,并使用存储故障恢复机制根据特定故障确定对应的故障恢复场景并进一步恢复存储集群的可用性,并获得与执行命令项目对应的恢复后检查信息;
将执行命令项目和对应的恢复后检查信息以键值对的形式存储于恢复后列表中;
根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果。
在一些实施方式中,使用执行命令项目执行处理包括:发送命令以接收反馈的关于存储集群的存储资源信息和存储配置信息;
根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果包括:从检查内容项目中提取用于指示对比故障前列表和恢复后列表的方法的检查参数信息,并根据故障前列表、恢复后列表、和检查参数信息确定存储故障恢复的测试结果。
在一些实施方式中,检查参数信息包括全部检查参数、指定内容检查参数、不检查参数、和指定期望值对比参数;根据故障前列表、恢复后列表、和检查参数信息确定存储故障恢复的测试结果包括:
响应于全部检查参数指示执行全部检查,而检查恢复后列表中所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于指定内容检查参数指示执行指定内容检查,而检查在恢复后列表中与预先确定的对象属性相关的指定内容的所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于不检查参数指示不执行检查,而检查在恢复后列表中与预先确定的不执行检查的对象属性不相关的所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于指定期望值对比参数指示执行指定期望值对比,而检查在恢复后列表中与预先确定的指定期望值对比的对象属性相关的所有键值对的值是否等于预先确定的指定期望值,基于检查结果为是而形成测试结果并终止。
在一些实施方式中,将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表或恢复后列表中包括:
将相同类型的一个或多个执行命令项目和对应的故障前检查信息以键值对的形式存储在故障前列表或恢复后列表的同一行中;或
将从属于同一个检查项的一个或多个执行命令项目和对应的故障前检查信息以键值对的形式存储在故障前列表或恢复后列表的同一行中。
在一些实施方式中,存储集群包括脏数据、外部存储数据、和处于远程同步状态的数据;
获取或生成检查项配置文件包括:获取或生成的检查项配置文件针对脏数据、外部存储数据、和处于远程同步状态的数据启用不同的多个检查项的排列或组合,或针对脏数据、外部存储数据、和处于远程同步状态的数据获取或生成多个不同的检查项配置文件。
本发明实施例的第二方面提供了一种存储故障恢复的测试装置,包括:
处理器;和
存储器,存储有处理器可运行的程序代码,程序代码在被运行时执行以下步骤:
获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件,其中每个检查项均包括一个或多个执行命令项目和与执行命令项目对应的一个或多个检查内容项目;
使用检查项配置文件中的每个检查项中的一个或多个执行命令项目处理待测存储故障的存储集群,以获得与执行命令项目对应的故障前检查信息,并将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表中;
向存储集群注入特定故障,并使用存储故障恢复机制根据特定故障确定对应的故障恢复场景并进一步恢复存储集群的可用性,并获得与执行命令项目对应的恢复后检查信息;
将执行命令项目和对应的恢复后检查信息以键值对的形式存储于恢复后列表中;
根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果。
在一些实施方式中,使用执行命令项目执行处理包括:发送命令以接收反馈的关于存储集群的存储资源信息和存储配置信息;
根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果包括:从检查内容项目中提取用于指示对比故障前列表和恢复后列表的方法的检查参数信息,并根据故障前列表、恢复后列表、和检查参数信息确定存储故障恢复的测试结果。
在一些实施方式中,检查参数信息包括全部检查参数、指定内容检查参数、不检查参数、和指定期望值对比参数;根据故障前列表、恢复后列表、和检查参数信息确定存储故障恢复的测试结果包括:
响应于全部检查参数指示执行全部检查,而检查恢复后列表中所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于指定内容检查参数指示执行指定内容检查,而检查在恢复后列表中与预先确定的对象属性相关的指定内容的所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于不检查参数指示不执行检查,而检查在恢复后列表中与预先确定的不执行检查的对象属性不相关的所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于指定期望值对比参数指示执行指定期望值对比,而检查在恢复后列表中与预先确定的指定期望值对比的对象属性相关的所有键值对的值是否等于预先确定的指定期望值,基于检查结果为是而形成测试结果并终止。
在一些实施方式中,将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表或恢复后列表中包括:
将相同类型的一个或多个执行命令项目和对应的故障前检查信息以键值对的形式存储在故障前列表或恢复后列表的同一行中;或
将从属于同一个检查项的一个或多个执行命令项目和对应的故障前检查信息以键值对的形式存储在故障前列表或恢复后列表的同一行中。
在一些实施方式中,存储集群包括脏数据、外部存储数据、和处于远程同步状态的数据;
获取或生成检查项配置文件包括:获取或生成的检查项配置文件针对脏数据、外部存储数据、和处于远程同步状态的数据启用不同的多个检查项的排列或组合,或针对脏数据、外部存储数据、和处于远程同步状态的数据获取或生成多个不同的检查项配置文件。
本发明具有以下有益技术效果:本发明实施例提供的存储故障恢复的测试方法和装置,通过获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件,其中每个检查项均包括一个或多个执行命令项目和与执行命令项目对应的一个或多个检查内容项目;使用检查项配置文件中的每个检查项中的一个或多个执行命令项目处理待测存储故障的存储集群,以获得与执行命令项目对应的故障前检查信息,并将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表中;向存储集群注入特定故障,并使用存储故障恢复机制根据特定故障确定对应的故障恢复场景并进一步恢复存储集群的可用性,并获得与执行命令项目对应的恢复后检查信息;将执行命令项目和对应的恢复后检查信息以键值对的形式存储于恢复后列表中;根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果的技术方案,能够使故障恢复测试适配存储系统和测试场景的变化,缩短测试时间,节省人力,提高了结果精准度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的存储故障恢复的测试方法的流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
基于上述目的,本发明实施例的第一个方面,提出了一种能够使故障恢复测试适配存储系统和测试场景的变化的存储故障恢复的测试方法的一个实施例。图1示出的是本发明提供的功耗调整方法的流程示意图。
所述的存储故障恢复的测试方法,如图1所示,包括执行以下步骤:
步骤S101:获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件,其中每个检查项均包括一个或多个执行命令项目和与执行命令项目对应的一个或多个检查内容项目;
步骤S103:使用检查项配置文件中的每个检查项中的一个或多个执行命令项目处理待测存储故障的存储集群,以获得与执行命令项目对应的故障前检查信息,并将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表中;
步骤S105:向存储集群注入特定故障,并使用存储故障恢复机制根据特定故障确定对应的故障恢复场景并进一步恢复存储集群的可用性,并获得与执行命令项目对应的恢复后检查信息;
步骤S107:将执行命令项目和对应的恢复后检查信息以键值对的形式存储于恢复后列表中;
步骤S109:根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果。
本发明提供了一种通用且智能的检查方法,通过构造检查项集合,逐一对比和检查故障前和故障恢复之后的存储信息,不仅能自定义检查项适配各种故障注入场景,而且还能适配存储软件功能增加和修改引发的数据项检查的改变。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
在一些实施方式中,使用执行命令项目执行处理包括:发送命令以接收反馈的关于存储集群的存储资源信息和存储配置信息。根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果包括:从检查内容项目中提取用于指示对比故障前列表和恢复后列表的方法的检查参数信息,并根据故障前列表、恢复后列表、和检查参数信息确定存储故障恢复的测试结果。
在一些实施方式中,检查参数信息包括全部检查参数、指定内容检查参数、不检查参数、和指定期望值对比参数。根据故障前列表、恢复后列表、和检查参数信息确定存储故障恢复的测试结果包括:
响应于全部检查参数指示执行全部检查,而检查恢复后列表中所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于指定内容检查参数指示执行指定内容检查,而检查在恢复后列表中与预先确定的对象属性相关的指定内容的所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于不检查参数指示不执行检查,而检查在恢复后列表中与预先确定的不执行检查的对象属性不相关的所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于指定期望值对比参数指示执行指定期望值对比,而检查在恢复后列表中与预先确定的指定期望值对比的对象属性相关的所有键值对的值是否等于预先确定的指定期望值,基于检查结果为是而形成测试结果并终止。
在一些实施方式中,将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表或恢复后列表中包括:
将相同类型的一个或多个执行命令项目和对应的故障前检查信息以键值对的形式存储在故障前列表或恢复后列表的同一行中;或
将从属于同一个检查项的一个或多个执行命令项目和对应的故障前检查信息以键值对的形式存储在故障前列表或恢复后列表的同一行中。
在一些实施方式中,存储集群包括脏数据、外部存储数据、和处于远程同步状态的数据。获取或生成检查项配置文件包括:获取或生成的检查项配置文件针对脏数据、外部存储数据、和处于远程同步状态的数据启用不同的多个检查项的排列或组合,或针对脏数据、外部存储数据、和处于远程同步状态的数据获取或生成多个不同的检查项配置文件。
根据本发明实施例公开的方法还可以被实现为由GPU(图形处理器)执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被GPU执行时,执行本发明实施例公开的方法中限定的上述功能。上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
下面根据具体实施例进一步阐述本发明的具体实施方式。
首先构造一个检查项配置文件,根据不同的故障恢复场景,可自定义检查项,每个检查项包括信息获取执行命令、检查内容两大部分。执行命令可获取注入故障之前存储资源和配置信息,亦可获取故障恢复后的各项信息。检查内容为故障注入之前的信息数据与故障恢复之后的信息数据进行对比,检查是否与故障恢复之前一样或者是预期值。包括三种类型的检查信息,一类是对于某个对象全部信息检查,参数命名为is_check_all,取值为yes或者no,当为yes时则检查对象的所有属性值在故障之前和故障恢复之后取值都一样,并自动忽略其他设置的指定属性的检查,若为no则根据其他设置的指定属性进行检查对比;一类是对对象进行指定内容的检查,参数命名为contained_check_attributes,当is_check_all取值为no时启动该检查项参数,检查所指定的属性在故障前和故障恢复之后取值是否一样;一类是由于故障恢复之后对象的某些属性值发生了改变故不检查或者指定期望值进行对比检查,包括两个参数excluded_check_attributes和expected_check_values。excluded_check_attributes为对象不检查的属性,在检查对象时将这些属性进行排除,此参数与contained_check_attributes互斥,若设置contained_check_attributes不为空则此参数不生效,否则才生效;expected_check_value中包含了检查对象属性名称和属性期望值,在故障恢复之后这些属性必须是这些指定的期望值才算成功。
然后启动自动化脚本,输入参数包含存储集群远程登录信息。获取所有指定检查项的信息到执行机内存中,所有检查项获取的信息组合成一个列表存放,列表中每个元素为每个检查项获取的信息,每个检查项的保存形式为key-value键值对形式,key为检查项名称,value为该检查项素有的信息。结合检查配置文件中的内容,获取的所有信息其存放形式为一个多元素列表,比如如下为两个检查项信息的存放形式,最小存储单位就是一个对象的单个属性名称和属性值,[{lsvdisk:[{id:1,name:vdisk1},{id:2,name:vdisk2}]},{lsmdiskgrp:[{id:1,name:mdiskgrp1},{id:2,name:mdiskgrp2}]},],符号{}代码字典key-value键值对形式可同时存放对象属性名称和属性值,[]为列表形式可存放多个元素对象。此数据存放方式支持单个的检查对象存放,亦可支持多个相同类型的检查对象存放,在获取信息后,通过判断数据的原始形式获知数据类型,比如是字典形式还是列表形式,然后通过统一的数据格式化方法,格式化成统一的存放格式,利于与故障前和故障恢复后两个阶段数据的对比检查。
然后向存储中注入故障,根据测试需要注入特定的故障,并之后启动故障恢复机制,将当前存储系统进行恢复到可用状态,整个过程可通过自动化实现。之后,获取当前恢复后系统的所有检查项对应的信息,并与故障前信息存放的形式一样进行存放。
最后逐个对每个检查项进行三种信息类别的检查,若选择了全部检查,则无须进行指定内容的检查,要对检查对象的所有属性值进行检查,期望值为与故障前的数据相同;若未选择全部检查,则按照指定内容进行检查,并对特别指定期望值的内容进行单独检查,对指定的属性检查是否与故障前一样,对于不进行检查的属性则从检查对象所有的属性中排除,并检查除去他们之外其他所有的属性的值。统一的存储格式,可自定义的检查项,最终实现了批量对象以及一个检查对象的批量数据的数据检查。最后将两个大列表,按照每个检查项,逐个对每个检查项中的信息进行相对应的对比检查。
从上述实施例可以看出,本发明实施例提供的存储故障恢复的测试方法,通过获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件,其中每个检查项均包括一个或多个执行命令项目和与执行命令项目对应的一个或多个检查内容项目;使用检查项配置文件中的每个检查项中的一个或多个执行命令项目处理待测存储故障的存储集群,以获得与执行命令项目对应的故障前检查信息,并将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表中;向存储集群注入特定故障,并使用存储故障恢复机制根据特定故障确定对应的故障恢复场景并进一步恢复存储集群的可用性,并获得与执行命令项目对应的恢复后检查信息;将执行命令项目和对应的恢复后检查信息以键值对的形式存储于恢复后列表中;根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果的技术方案,能够使故障恢复测试适配存储系统和测试场景的变化,缩短测试时间,节省人力,提高了结果精准度。
需要特别指出的是,上述存储故障恢复的测试方法的各个实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于存储故障恢复的测试方法也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在所述实施例之上。
基于上述目的,本发明实施例的第二个方面,提出了一种能够使故障恢复测试适配存储系统和测试场景的变化的存储故障恢复的测试装置的一个实施例。功耗调整装置包括:
处理器;和
存储器,存储有处理器可运行的程序代码,程序代码在被运行时执行以下步骤:
获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件,其中每个检查项均包括一个或多个执行命令项目和与执行命令项目对应的一个或多个检查内容项目;
使用检查项配置文件中的每个检查项中的一个或多个执行命令项目处理待测存储故障的存储集群,以获得与执行命令项目对应的故障前检查信息,并将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表中;
向存储集群注入特定故障,并使用存储故障恢复机制根据特定故障确定对应的故障恢复场景并进一步恢复存储集群的可用性,并获得与执行命令项目对应的恢复后检查信息;
将执行命令项目和对应的恢复后检查信息以键值对的形式存储于恢复后列表中;
根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果。
在一些实施方式中,使用执行命令项目执行处理包括:发送命令以接收反馈的关于存储集群的存储资源信息和存储配置信息。根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果包括:从检查内容项目中提取用于指示对比故障前列表和恢复后列表的方法的检查参数信息,并根据故障前列表、恢复后列表、和检查参数信息确定存储故障恢复的测试结果。
在一些实施方式中,检查参数信息包括全部检查参数、指定内容检查参数、不检查参数、和指定期望值对比参数;根据故障前列表、恢复后列表、和检查参数信息确定存储故障恢复的测试结果包括:
响应于全部检查参数指示执行全部检查,而检查恢复后列表中所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于指定内容检查参数指示执行指定内容检查,而检查在恢复后列表中与预先确定的对象属性相关的指定内容的所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于不检查参数指示不执行检查,而检查在恢复后列表中与预先确定的不执行检查的对象属性不相关的所有键值对的值是否与故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于指定期望值对比参数指示执行指定期望值对比,而检查在恢复后列表中与预先确定的指定期望值对比的对象属性相关的所有键值对的值是否等于预先确定的指定期望值,基于检查结果为是而形成测试结果并终止。
在一些实施方式中,将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表或恢复后列表中包括:
将相同类型的一个或多个执行命令项目和对应的故障前检查信息以键值对的形式存储在故障前列表或恢复后列表的同一行中;或
将从属于同一个检查项的一个或多个执行命令项目和对应的故障前检查信息以键值对的形式存储在故障前列表或恢复后列表的同一行中。
在一些实施方式中,存储集群包括脏数据、外部存储数据、和处于远程同步状态的数据。获取或生成检查项配置文件包括:获取或生成的检查项配置文件针对脏数据、外部存储数据、和处于远程同步状态的数据启用不同的多个检查项的排列或组合,或针对脏数据、外部存储数据、和处于远程同步状态的数据获取或生成多个不同的检查项配置文件。
从上述实施例可以看出,本发明实施例提供的存储故障恢复的测试装置,通过获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件,其中每个检查项均包括一个或多个执行命令项目和与执行命令项目对应的一个或多个检查内容项目;使用检查项配置文件中的每个检查项中的一个或多个执行命令项目处理待测存储故障的存储集群,以获得与执行命令项目对应的故障前检查信息,并将执行命令项目和对应的故障前检查信息以键值对的形式存储于故障前列表中;向存储集群注入特定故障,并使用存储故障恢复机制根据特定故障确定对应的故障恢复场景并进一步恢复存储集群的可用性,并获得与执行命令项目对应的恢复后检查信息;将执行命令项目和对应的恢复后检查信息以键值对的形式存储于恢复后列表中;根据故障前列表、恢复后列表、和与特定故障对应的故障恢复场景的一个或多个检查内容项目确定存储故障恢复的测试结果的技术方案,能够使故障恢复测试适配存储系统和测试场景的变化,缩短测试时间,节省人力,提高了结果精准度。
需要特别指出的是,上述存储故障恢复的测试装置的实施例采用了所述存储故障恢复的测试方法的实施例来具体说明各模块的工作过程,本领域技术人员能够很容易想到,将这些模块应用到所述存储故障恢复的测试方法的其他实施例中。当然,由于所述存储故障恢复的测试方法实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于所述存储故障恢复的测试装置也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在所述实施例之上。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

Claims (8)

1.一种存储故障恢复的测试方法,其特征在于,包括执行以下步骤:
获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件,其中每个所述检查项均包括一个或多个执行命令项目和与所述执行命令项目对应的一个或多个检查内容项目;
使用检查项配置文件中的每个所述检查项中的一个或多个所述执行命令项目处理待测存储故障的存储集群,以获得与所述执行命令项目对应的故障前检查信息,并将所述执行命令项目和对应的所述故障前检查信息以键值对的形式存储于故障前列表中;
向所述存储集群注入特定故障,并使用存储故障恢复机制根据所述特定故障确定对应的故障恢复场景并进一步恢复所述存储集群的可用性,并获得与所述执行命令项目对应的恢复后检查信息;
将所述执行命令项目和对应的所述恢复后检查信息以键值对的形式存储于恢复后列表中;
从与所述特定故障对应的所述故障恢复场景的一个或多个所述检查内容项目中提取用于指示对比所述故障前列表和所述恢复后列表的方法的检查参数信息,其中,所述检查参数信息包括全部检查参数、指定内容检查参数、不检查参数、和指定期望值对比参数;
响应于所述全部检查参数指示执行全部检查,而检查所述恢复后列表中所有键值对的值是否与所述故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于所述指定内容检查参数指示执行指定内容检查,而检查在所述恢复后列表中与预先确定的对象属性相关的指定内容的所有键值对的值是否与所述故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于所述不检查参数指示不执行检查,而检查在所述恢复后列表中与预先确定的不执行检查的对象属性不相关的所有键值对的值是否与所述故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于所述指定期望值对比参数指示执行指定期望值对比,而检查在所述恢复后列表中与预先确定的指定期望值对比的对象属性相关的所有键值对的值是否等于预先确定的指定期望值,基于检查结果为是而形成测试结果并终止。
2.根据权利要求1所述的方法,其特征在于,使用所述执行命令项目执行处理包括:发送命令以接收反馈的关于所述存储集群的存储资源信息和存储配置信息。
3.根据权利要求1所述的方法,其特征在于,将所述执行命令项目和对应的所述故障前检查信息以键值对的形式存储于故障前列表中,或将所述执行命令项目和对应的所述恢复后检查信息以键值对的形式存储于恢复后列表中包括:
将相同类型的一个或多个所述执行命令项目和对应的所述故障前检查信息以键值对的形式存储在所述故障前列表或所述恢复后列表的同一行中;或
将从属于同一个所述检查项的一个或多个所述执行命令项目和对应的所述故障前检查信息以键值对的形式存储在所述故障前列表或所述恢复后列表的同一行中。
4.根据权利要求1所述的方法,其特征在于,所述存储集群包括脏数据、外部存储数据、和处于远程同步状态的数据;
获取或生成所述检查项配置文件包括:获取或生成的所述检查项配置文件针对脏数据、外部存储数据、和处于远程同步状态的数据启用不同的多个检查项的排列或组合,或针对脏数据、外部存储数据、和处于远程同步状态的数据获取或生成多个不同的所述检查项配置文件。
5.一种存储故障恢复的测试装置,其特征在于,包括:
处理器;和
存储器,存储有处理器可运行的程序代码,所述程序代码在被运行时执行以下步骤:
获取或生成记载有分别对应于不同故障恢复场景的多个检查项的检查项配置文件,其中每个所述检查项均包括一个或多个执行命令项目和与所述执行命令项目对应的一个或多个检查内容项目;
使用检查项配置文件中的每个所述检查项中的一个或多个所述执行命令项目处理待测存储故障的存储集群,以获得与所述执行命令项目对应的故障前检查信息,并将所述执行命令项目和对应的所述故障前检查信息以键值对的形式存储于故障前列表中;
向所述存储集群注入特定故障,并使用存储故障恢复机制根据所述特定故障确定对应的故障恢复场景并进一步恢复所述存储集群的可用性,并获得与所述执行命令项目对应的恢复后检查信息;
将所述执行命令项目和对应的所述恢复后检查信息以键值对的形式存储于恢复后列表中;
从与所述特定故障对应的所述故障恢复场景的一个或多个所述检查内容项目中提取用于指示对比所述故障前列表和所述恢复后列表的方法的检查参数信息,其中,所述检查参数信息包括全部检查参数、指定内容检查参数、不检查参数、和指定期望值对比参数;
响应于所述全部检查参数指示执行全部检查,而检查所述恢复后列表中所有键值对的值是否与所述故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于所述指定内容检查参数指示执行指定内容检查,而检查在所述恢复后列表中与预先确定的对象属性相关的指定内容的所有键值对的值是否与所述故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于所述不检查参数指示不执行检查,而检查在所述恢复后列表中与预先确定的不执行检查的对象属性不相关的所有键值对的值是否与所述故障前列表中对应键值对的值均保持一致,基于检查结果为是而形成测试结果并终止,否则执行下一步骤;
响应于所述指定期望值对比参数指示执行指定期望值对比,而检查在所述恢复后列表中与预先确定的指定期望值对比的对象属性相关的所有键值对的值是否等于预先确定的指定期望值,基于检查结果为是而形成测试结果并终止。
6.根据权利要求5所述的装置,其特征在于,使用所述执行命令项目执行处理包括:发送命令以接收反馈的关于所述存储集群的存储资源信息和存储配置信息。
7.根据权利要求5所述的装置,其特征在于,将所述执行命令项目和对应的所述故障前检查信息以键值对的形式存储于故障前列表中,或将所述执行命令项目和对应的所述恢复后检查信息以键值对的形式存储于恢复后列表中包括:
将相同类型的一个或多个所述执行命令项目和对应的所述故障前检查信息以键值对的形式存储在所述故障前列表或所述恢复后列表的同一行中;或
将从属于同一个所述检查项的一个或多个所述执行命令项目和对应的所述故障前检查信息以键值对的形式存储在所述故障前列表或所述恢复后列表的同一行中。
8.根据权利要求5所述的装置,其特征在于,所述存储集群包括脏数据、外部存储数据、和处于远程同步状态的数据;
获取或生成所述检查项配置文件包括:获取或生成的所述检查项配置文件针对脏数据、外部存储数据、和处于远程同步状态的数据启用不同的多个检查项的排列或组合,或针对脏数据、外部存储数据、和处于远程同步状态的数据获取或生成多个不同的所述检查项配置文件。
CN202010316043.6A 2020-04-21 2020-04-21 一种存储故障恢复的测试方法和装置 Active CN111581019B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010316043.6A CN111581019B (zh) 2020-04-21 2020-04-21 一种存储故障恢复的测试方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010316043.6A CN111581019B (zh) 2020-04-21 2020-04-21 一种存储故障恢复的测试方法和装置

Publications (2)

Publication Number Publication Date
CN111581019A CN111581019A (zh) 2020-08-25
CN111581019B true CN111581019B (zh) 2022-11-15

Family

ID=72126540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010316043.6A Active CN111581019B (zh) 2020-04-21 2020-04-21 一种存储故障恢复的测试方法和装置

Country Status (1)

Country Link
CN (1) CN111581019B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112882871B (zh) * 2021-04-29 2021-08-24 深圳市科力锐科技有限公司 主机冲突检测方法、装置、设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050160305A1 (en) * 2004-01-09 2005-07-21 Kenichi Soejima Information processing system, information processing apparatus, and control method for information processing system
CN104461865A (zh) * 2014-11-04 2015-03-25 哈尔滨工业大学 云环境下分布式文件系统可靠性测试套件

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050160305A1 (en) * 2004-01-09 2005-07-21 Kenichi Soejima Information processing system, information processing apparatus, and control method for information processing system
CN104461865A (zh) * 2014-11-04 2015-03-25 哈尔滨工业大学 云环境下分布式文件系统可靠性测试套件

Also Published As

Publication number Publication date
CN111581019A (zh) 2020-08-25

Similar Documents

Publication Publication Date Title
CN110908909B (zh) 自动化测试方法、装置、存储介质及设备
CN108459951B (zh) 测试方法和装置
CN105512562B (zh) 一种漏洞挖掘方法、装置及电子设备
CN111327490A (zh) 区块链的拜占庭容错检测方法及相关装置
CN114003451B (zh) 一种接口测试方法、装置、系统及介质
CN111581019B (zh) 一种存储故障恢复的测试方法和装置
CN111240967B (zh) 一种代码生成方法及装置
CN114138670B (zh) 基于接口自动化测试与功能、性能、安全测试融合的方法
CN112711542A (zh) 一种用于手机客户端进行测试环境切换的方法
CN110209588B (zh) 游戏服务端测试方法、装置、电子设备及介质
CN115599490B (zh) 一种bios设置方法、系统、存储介质及设备
CN115794525A (zh) 一种bmc压力测试方法、装置、设备及存储介质
CN112052184B (zh) 测试脚本的自动生成方法、自动生成装置及存储介质
CN112256500B (zh) 存储系统测试服务器配置方法、系统、终端及存储介质
CN115080387A (zh) 一种前端可视化调试方法、系统、设备及可读存储介质
CN114650211A (zh) 故障修复方法、装置、电子设备和计算机可读存储介质
CN113778895A (zh) 接口自动化测试方法及装置
CN113064640A (zh) 一种bios选项校验方法、系统及介质
CN111444091A (zh) 测试用例生成方法及装置
CN111309598A (zh) 一种测试用例执行环境恢复方法、系统、终端及存储介质
CN112905438A (zh) 一种自动化测试方法及装置
CN113326180A (zh) 一种测试任务向导的方法及设备
CN110795142A (zh) 一种配置文件的生成方法及装置
CN114328408B (zh) 一种日志筛选方法、系统、设备以及介质
CN114860549B (zh) 埋点数据校验方法、装置、设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant