Storage system testing method and device for storage equipment

By performing version updates and function type failure testing on the storage system, the problem that storage system is difficult to cope with complex failures is solved, and the adaptability of the test method and the reliability of the fault test results are improved.

CN119883770APending Publication Date: 2025-04-25INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202510116256.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-01-24
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

The failure recovery test of the storage system is relatively simple and it is difficult to deal with complex and changeable failures in actual scenarios.

Method used

By updating the current reference storage system and the storage system to be tested respectively based on the reference storage system information and the storage system to be tested, it is determined that the reference storage system and the storage system to be tested have different system versions, and based on the functional types of multiple clusters in the storage device, the reference storage system and the storage system to be tested are respectively tested to obtain the reference failure results and test failure results.

Benefits of technology

Simulate complex and variable fault tests that can occur based on the functional type in actual scenarios, improve the adaptability of the test methods, and highlight the fault test differences between the storage system to be tested compared with the reference storage system, increasing the reliability of the fault test results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119883770A_ABST
    Figure CN119883770A_ABST
Patent Text Reader

Abstract

The invention provides a storage system testing method and device for storage equipment, and can be applied to the technical field of storage system testing. The storage system testing method comprises the steps that according to reference storage system information and to-be-tested storage system information, a current reference storage system and a current to-be-tested storage system are updated respectively, the reference storage system and the to-be-tested storage system are determined, and the reference storage system and the to-be-tested storage system have different system versions; based on function types of multiple clusters in the storage device, fault testing is conducted on a reference storage system and a to-be-tested storage system, a reference fault result of the reference storage system and a testing fault result of the to-be-tested storage system are obtained, and the function types comprise storage with an arbitration disk and storage without the arbitration disk; the arbitration disk is used for controlling at least one node to synchronize and back up storage system data; and obtaining a system test result of the to-be-tested storage system based on the reference fault result and the test fault result.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of storage system testing, and more specifically to a storage system testing method and apparatus for storage devices. Background Art

[0002] With the development of the Internet, a large amount of data is stored in storage servers. However, a failure of a storage server will result in data loss. Therefore, it is very important for the storage system of the storage server to have an efficient fault recovery strategy.

[0003] The fault recovery test of the storage system is relatively simple, which makes it difficult for the storage system to cope with complex and changeable faults in actual scenarios. Summary of the invention

[0004] In view of the above problems, the present disclosure provides a storage system testing method and apparatus for a storage device.

[0005] According to a first aspect of the present disclosure, a storage system testing method for a storage device is provided, comprising: updating a current reference storage system and a current storage system to be tested respectively according to reference storage system information and storage system information to be tested, determining a reference storage system and a storage system to be tested, wherein the reference storage system and the storage system to be tested have different system versions; performing fault tests on the reference storage system and the storage system to be tested respectively based on the functional types of multiple clusters in the storage device, obtaining a reference fault result of the reference storage system and a test fault result of the storage system to be tested, wherein the cluster comprises at least one node, and the functional types comprise storage with an arbitration disk and storage without an arbitration disk, wherein the arbitration disk is used to control at least one node to synchronize and back up storage system data; obtaining a system test result of the storage system to be tested based on the reference fault result and the test fault result, wherein the system test result characterizes a fault test difference of the storage system to be tested relative to the reference storage system.

[0006] According to an embodiment of the present disclosure, the current reference storage system and the current storage system to be tested are updated respectively according to the reference storage system information and the storage system to be tested information, and the reference storage system and the storage system to be tested are determined, including: updating the current reference storage system according to the version identification of the current reference storage system to obtain the reference storage system, and the reference storage system information includes the version identification of the current reference storage system; updating the current storage system to be tested using the installation file of the test system to obtain the storage system to be tested, and the storage system information to be tested includes the installation file of the test system.

[0007] According to an embodiment of the present disclosure, the current reference storage system is updated according to the version identifier of the current reference storage system to obtain the reference storage system, including: when the version identifier of the current reference storage system is a preset identifier, installing the reference storage system in the hard disk storage space of the storage device; when the version identifier of the current reference storage system is not a preset identifier, restoring the current reference storage system to the reference storage system using a cluster configuration file.

[0008] According to an embodiment of the present disclosure, the method further includes: dividing the hard disk storage space of the storage device into a preset number of volume spaces; and storing the cluster configuration file in the volume space when the compression attribute of the volume space is turned off.

[0009] According to an embodiment of the present disclosure, in the case where the function type is storage without an arbitration disk, based on the function type of the cluster in the storage device, fault tests are performed on the reference storage system and the storage system to be tested respectively to obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested, including: performing a first fault test on the storage system to be tested to obtain a first recovery time, the first recovery time being the time for the storage system to be tested to recover the data stored in the single node when a single node fails in the cluster; performing a second fault test on the storage system to be tested to obtain a second recovery time, the second recovery time being the time for the storage system to be tested to recover the data stored in multiple nodes when multiple nodes fail in the cluster; performing a third fault test on the storage system to be tested to obtain a third recovery time, the third recovery time being the total time of the cluster reconstruction process and the cluster reconfiguration process, the cluster reconstruction process including reconstructing the cluster using the mapping relationship between the node and the volume space in the cluster configuration file, the cluster reconfiguration process including configuring the cluster configuration file in the reconstructed cluster using the storage system to be tested; obtaining the test fault result according to the first recovery time, the second recovery time and the third recovery time.

[0010] According to an embodiment of the present disclosure, the above method also includes: when the compression attribute of the volume space is turned on, using the cluster configuration file to configure the nodes of the reconstructed cluster to obtain a reconstructed volume space corresponding to the nodes in the reconstructed cluster; matching the volume space corresponding to the nodes in the cluster in the cluster configuration file with the reconstructed volume space to obtain a matching result; and determining that the compression function of the target test system is a normal system test result when the matching result indicates that the volume space corresponding to the nodes in the cluster is consistent with the reconstructed volume space.

[0011] According to an embodiment of the present disclosure, the above method also includes: in the absence of an arbitration disk in the cluster, rebuilding the cluster using the mapping relationship in the cluster configuration file to obtain a reconstructed cluster; using the reconstructed cluster to perform a first fault test and a second fault test on the target test system respectively to obtain a test fault result.

[0012] According to an embodiment of the present disclosure, in the case where the function type is storage with an arbitration disk, based on the function types of multiple clusters in the storage device, fault tests are performed on a reference storage system and a storage system to be tested, respectively, to obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested, including: replacing the faulty arbitration disk in the storage device with a normally operating target arbitration disk; restoring and backing up the data stored in the cluster according to the target arbitration disk to obtain a fourth recovery duration and a backup data volume, and determining the test failure result according to the fourth recovery duration and the backup data volume.

[0013] According to an embodiment of the present disclosure, a system test result of the storage system to be tested is obtained based on a reference fault result and a test fault result, including: calculating the time difference between the reference fault result and the test fault result; when the time difference satisfies a preset time difference condition, obtaining a system test result characterizing that the storage system to be tested is tested normally; when the time difference does not satisfy the preset time difference condition, obtaining a system test result characterizing that the storage system to be tested is tested abnormally.

[0014] A second aspect of the present disclosure provides a storage system testing apparatus for a storage device, comprising: an update module, used to update a current reference storage system and a current storage system to be tested respectively according to reference storage system information and storage system information to be tested, and determine a reference storage system and a storage system to be tested, wherein the reference storage system and the storage system to be tested have different system versions; a fault testing module, used to perform fault tests on a reference storage system and a storage system to be tested respectively based on functional types of multiple clusters in a storage device, and obtain reference fault results of the reference storage system and test fault results of the storage system to be tested, wherein the cluster comprises at least one node, and the functional types comprise storage with an arbitration disk and storage without an arbitration disk, and the arbitration disk is used to control at least one node to synchronize and back up storage system data; an acquisition module, used to obtain a system test result of the storage system to be tested based on the reference fault result and the test fault result, wherein the system test result characterizes the fault test difference of the storage system to be tested relative to the reference storage system.

[0015] A third aspect of the present disclosure provides an electronic device, comprising: one or more processors; and a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the above method.

[0016] The fourth aspect of the present disclosure further provides a computer-readable storage medium having a computer program or instructions stored thereon, which implements the steps of the above method when the above computer program or instructions are executed by a processor.

[0017] The fifth aspect of the present disclosure further provides a computer program product, including a computer program or instructions, which implement the steps of the above method when the above computer program or instructions are executed by a processor.

[0018] According to the embodiments of the present disclosure, the reference storage system and the storage system to be tested are respectively updated according to the reference storage system information and the storage system to be tested information, and the reference storage system and the storage system to be tested are determined; then, based on the functional types of multiple clusters in the storage device, the reference storage system and the storage system to be tested are respectively fault tested to obtain reference fault results and test fault results, which can simulate the complex and variable fault tests that can occur based on the functional types in actual scenarios to improve the adaptability of the test method. Then, based on the reference fault results and the test fault results, the system test results of the storage system to be tested are obtained to highlight the fault test differences of the storage system to be tested relative to the reference storage system, and increase the reliability of the fault test results. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The above contents and other objects, features and advantages of the present disclosure will become more apparent through the following description of the embodiments of the present disclosure with reference to the accompanying drawings, in which:

[0020] Figure 1 A schematic diagram showing an application scenario of a storage system testing method for a storage device according to an embodiment of the present disclosure;

[0021] Figure 2 A flowchart of a storage system testing method for a storage device according to an embodiment of the present disclosure is schematically shown;

[0022] Figure 3 A schematic diagram schematically shows a schematic diagram of synchronizing and backing up storage system data using a cluster according to an embodiment of the present disclosure;

[0023] Figure 4 A flowchart schematically shows how to update the current reference storage system and the current storage system to be tested respectively according to the reference storage system information and the storage system to be tested information, and determine the reference storage system and the storage system to be tested according to an embodiment of the present disclosure;

[0024] Figure 5 A flowchart schematically shows a method of performing a fault test on a storage system to be tested and obtaining a test fault result of the storage system to be tested when the function type is no arbitration disk according to an embodiment of the present disclosure;

[0025] Figure 6 A structural block diagram of a storage system testing device for a storage device according to an embodiment of the present disclosure is schematically shown;

[0026] Figure 7 A block diagram of an electronic device suitable for implementing a storage system testing method for a storage device according to an embodiment of the present disclosure is schematically shown. DETAILED DESCRIPTION

[0027] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present disclosure. In the following detailed description, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present disclosure. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessary confusion of the concepts of the present disclosure.

[0028] The terms used herein are only for describing specific embodiments and are not intended to limit the present disclosure. The terms "comprise", "include", etc. used herein indicate the existence of the features, steps, operations and / or components, but do not exclude the existence or addition of one or more other features, steps, operations or components.

[0029] All terms (including technical and scientific terms) used herein have the meanings commonly understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.

[0030] When using expressions such as "at least one of A, B, and C, etc.", they should generally be interpreted according to the meaning of the expression commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).

[0031] An embodiment of the present disclosure provides a storage system testing method for a storage device, comprising: updating a current reference storage system and a current storage system to be tested respectively according to reference storage system information and storage system information to be tested, determining a reference storage system and a storage system to be tested, wherein the reference storage system and the storage system to be tested have different system versions; performing fault tests on the reference storage system and the storage system to be tested respectively based on the functional types of multiple clusters in the storage device, obtaining a reference fault result of the reference storage system and a test fault result of the storage system to be tested, wherein the cluster comprises at least one node, and the functional types comprise storage with an arbitration disk and storage without an arbitration disk, wherein the arbitration disk is used to control at least one node to synchronize and back up storage system data; obtaining a system test result of the storage system to be tested based on the reference fault result and the test fault result, wherein the system test result represents a fault test difference of the storage system to be tested relative to the reference storage system.

[0032] Figure 1 An application scenario diagram of a storage system testing method for a storage device according to an embodiment of the present disclosure is schematically shown.

[0033] like Figure 1 As shown, the application scenario according to this embodiment may include a terminal device 101 and a storage device 102 .

[0034] The terminal device 101 is connected to the storage device 102 via the network 103. The user can remotely control the storage device 102 at the terminal device 101 to perform a fault test on the storage system to be tested. The system test result of the storage system to be tested is fed back to the terminal device 101. The network 103 can be a wired network or a wireless network, which is not limited in the embodiments of the present disclosure.

[0035] The user can also use the terminal device 101 to send a test instruction to the storage device 102. When the storage device receives the test instruction, it determines the reference storage system information and the storage system information to be tested according to the test instruction. Thus, the storage device 102 executes the storage system test method for the storage device to complete the fault test of the storage system to be tested.

[0036] It should be noted that the user may also directly operate the storage device 102 to perform a fault test on the storage system to be tested.

[0037] The storage system testing method for storage devices provided in the embodiments of the present disclosure may generally be executed by the storage device 102. Accordingly, the storage system testing apparatus for storage devices provided in the embodiments of the present disclosure may generally be disposed in the storage device 102.

[0038] It should be understood that Figure 1The number of terminal devices and storage devices in the embodiment is only for illustration. Any number of terminal devices and storage devices may be provided according to implementation requirements.

[0039] Figure 2 The flowchart of the storage system testing method for a storage device according to an embodiment of the present disclosure is schematically shown.

[0040] like Figure 2 As shown, the storage system testing method for a storage device of this embodiment includes operations S210 to S230.

[0041] In operation S210, according to the reference storage system information and the storage system to be tested information, the current reference storage system and the current storage system to be tested are updated respectively to determine the reference storage system and the storage system to be tested.

[0042] According to an embodiment of the present disclosure, the reference storage system and the storage system to be tested have different system versions. For example, the reference storage system may be a system configured by a storage device sold on the market; the storage system to be tested may be a system further developed based on the reference storage system.

[0043] According to an embodiment of the present disclosure, the reference storage system information may include reference version information, reference system configuration information, reference system installation information, etc. For example, the version information may be a version identifier, the reference system configuration information may be the hardware configured by the current reference storage system, and the reference system installation information may be the location of the current reference storage system installed on the storage device, etc.

[0044] According to an embodiment of the present disclosure, the storage system information to be tested may also include version information to be tested, configuration information of the system to be tested, installation information of the system to be tested, etc. For example, the version information to be tested may be the version update time, the number of version updates, etc.; the configuration information of the system to be tested may be the hardware and environment configured by the current storage system to be tested; the installation information of the system to be tested may be the location of the storage device where the current storage system to be tested is installed, etc.

[0045] In operation S220, based on the function types of the multiple clusters in the storage device, fault tests are performed on the reference storage system and the storage system to be tested respectively to obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested.

[0046] According to an embodiment of the present disclosure, a cluster includes at least one node, and functional types include storage with arbitration disk and storage without arbitration disk, and the arbitration disk is used to control at least one node to synchronize and back up storage system data.

[0047] According to an embodiment of the present disclosure, the storage system data may be data written through an input interface of a storage device. The nodes in the cluster synchronously back up the storage system data.

[0048] For example, if multiple nodes modify the storage system data at the same time, the modified data may be inconsistent. The arbitration disk can store shared status information in the cluster and determine the order in which multiple nodes modify the storage system data.

[0049] For example, after a cluster failure, the arbitration disk can determine the active node from multiple nodes to ensure data synchronization of the storage system. The arbitration disk can be used to restore user configurations using the backed-up cluster data.

[0050] According to the embodiments of the present disclosure, storage without a quorum disk is usually unable to automatically restore cluster data, but requires cluster data backup file restoration.

[0051] For example, storage with arbitration disk can be a test of the recovery capability of cluster failure and disaster recovery failure. The recovery capability of cluster failure can be the ability to use the arbitration disk to recover the storage system data when a failure occurs in the cluster structure. The recovery capability of disaster recovery failure can be the ability to recover the storage system data when the arbitration disk fails.

[0052] For example, storage without arbitration disk can also be used to test the recovery capability of cluster failure and disaster recovery failure. However, the recovery capability of cluster failure can be the ability to restore storage system data using control instructions when a failure occurs in the cluster structure. The recovery capability of disaster recovery failure can be the ability to restore the cluster using backup files when a cluster fails, and the performance of synchronous backup storage system data of the restored cluster.

[0053] In operation S230, a system test result of the storage system to be tested is obtained based on the reference failure result and the test failure result.

[0054] According to an embodiment of the present disclosure, the system test result represents the fault test difference of the storage system to be tested relative to the reference storage system.

[0055] According to an embodiment of the present disclosure, the reference storage system and the storage system to be tested are determined by updating the current reference storage system and the current storage system to be tested respectively according to the reference storage system information and the storage system to be tested information; then, based on the functional types of multiple clusters in the storage device, fault tests are performed on the reference storage system and the storage system to be tested respectively to obtain reference fault results and test fault results. This can simulate complex and changeable fault tests that can occur based on functional types in actual scenarios, so as to improve the adaptability of the testing method.

[0056] Based on the reference fault result and the test fault result, the system test result of the storage system to be tested is obtained to highlight the fault test difference of the storage system to be tested relative to the reference storage system and increase the reliability of the fault test result.

[0057] According to an embodiment of the present disclosure, the current reference storage system and the current storage system to be tested are updated respectively according to the reference storage system information and the storage system to be tested information, and the reference storage system and the storage system to be tested are determined, including: updating the current reference storage system according to the version identification of the current reference storage system to obtain the reference storage system, and the reference storage system information includes the version identification of the current reference storage system; updating the current storage system to be tested using the installation file of the test system to obtain the storage system to be tested, and the storage system information to be tested includes the installation file of the test system.

[0058] According to an embodiment of the present disclosure, the version identification of the current reference storage system can represent the number of upgrades relative to the initial reference storage system. For example, if the version identification of the initial reference storage system is 1.0, and the version identification of the current reference storage system is 3.0, then the current reference storage system has been upgraded 2 times relative to the initial reference storage system.

[0059] According to an embodiment of the present disclosure, the installation file of the test system may be an installation package of the storage system to be tested. The storage system to be tested may be the storage system of the last fault test.

[0060] According to an embodiment of the present disclosure, the reference storage system corresponds to the storage system to be tested. For example, the storage system to be tested is an improved version based on the reference storage system.

[0061] For example, the reference storage system is a storage device for two drives, and the storage system to be tested is also a storage device for two drives.

[0062] According to an embodiment of the present disclosure, based on the storage system information to be tested, a target version identifier of a reference storage system corresponding to the storage system to be tested is obtained. If the version identifier of the current reference storage system is different from the target version identifier, the current reference storage system is updated to obtain the reference storage system.

[0063] According to an embodiment of the present disclosure, when the current storage system to be tested is the same as the storage system to be tested, a fault test can be performed. When the current storage system to be tested is different from the storage system to be tested, the current storage system to be tested is updated using the installation file of the test system to obtain the storage system to be tested.

[0064] According to an embodiment of the present disclosure, during the fault testing process, the current reference storage system can be updated according to the version identifier of the current reference storage system to obtain the reference storage system; the current storage system to be tested can be updated using the installation file of the test system to obtain the storage system to be tested, thereby accurately obtaining the storage system to be tested corresponding to the information of the storage system to be tested, and the reference storage system corresponding to the storage system to be tested, and the fault test results of the reference storage system provide a reference comparison for the fault test results of the storage system to be tested.

[0065] According to an embodiment of the present disclosure, the current reference storage system is updated according to the version identifier of the current reference storage system to obtain the reference storage system, including: when the version identifier of the current reference storage system is a preset identifier, installing the reference storage system in the hard disk storage space of the storage device; when the version identifier of the current reference storage system is not a preset identifier, restoring the current reference storage system to the reference storage system using a cluster configuration file.

[0066] According to an embodiment of the present disclosure, the preset identifier may indicate that the current reference storage system is a hard disk storage space installed in the storage device for the first time.

[0067] According to an embodiment of the present disclosure, the cluster configuration file may be a configuration mirror package of multiple clusters in a storage device, wherein the configuration mirror package includes location information for storing storage system data in nodes in the cluster.

[0068] For example, in the case where the function type is storage with a quorum disk or storage without a quorum disk, the cluster configuration file can be backed up in the hard disk storage space of the storage device to prevent the quorum disk from failing and to promptly restore the cluster function.

[0069] According to an embodiment of the present disclosure, by determining whether the version identifier of the current reference storage system is a preset identifier, the current reference storage system is updated to the reference storage system, thereby shortening the preparation time of the reference storage system during the fault testing process and improving the efficiency of the fault testing.

[0070] According to an embodiment of the present disclosure, the method further includes: dividing the hard disk storage space of the storage device into a preset number of volume spaces; and storing the cluster configuration file in the volume space when the compression attribute of the volume space is turned off.

[0071] According to an embodiment of the present disclosure, the preset number may be 10000. The reference storage system may be configured as 75%, and the storage system to be tested may be configured as 100%.

[0072] If the version identifier of the current reference storage system represents the first installation, the number of upgrades relative to the initial reference storage system is 0. Trigger the version installation, copy the installation package to the directory of each node in a loop, and execute the version installation. Create a resource pool, cluster, and node. Add all hard disks to the node, and calculate the volume space space = available space * scale%, and generally require scale (configuration scale) to be 75. Calculate the average block size by dividing space by 10000, and then create a random block sequence of 10000 numbers. The random block size is between (0.95~1.05) * average block size. The value in the sequence is used as the parameter for specifying the volume space size. Loop through the sequence to create 10000 volume spaces, turn off the compression attribute of the volume space, and the resource configuration is now complete. Save the generated cluster configuration file for subsequent storage system restoration actions.

[0073] If it is the current storage system to be tested, the online version upgrade action is triggered, the remaining hard disk storage space space / 10000 outside scale is calculated, the original 10000 volume space is expanded, and the compression attribute of the volume space is turned off, so that the volume space and all storage space are occupied.

[0074] Figure 3 The diagram schematically shows a schematic diagram of synchronizing and backing up storage system data using a cluster according to an embodiment of the present disclosure.

[0075] like Figure 3 As shown, the storage system data can be input into the hard disk storage space through the I\O (input\output) interface of the storage device 310. The hard disk storage space of the storage device is divided into a preset number of volume spaces, such as volume space 1, volume space 2, volume space 3, and several other volume spaces. The preset number of volume spaces are respectively mapped to the nodes of the cluster 320 (such as node 1, node 2) and the nodes of the cluster 330 (such as node 3, node 4, etc.).

[0076] For example, the storage system data stored in volume space 1 can be synchronously backed up to node 1 of cluster 320 .

[0077] Figure 4 The flowchart of updating the current reference storage system and the current storage system to be tested respectively according to the reference storage system information and the storage system to be tested information to determine the reference storage system and the storage system to be tested according to an embodiment of the present disclosure is schematically shown.

[0078] like Figure 4 As shown, this embodiment updates the current reference storage system and the current storage system to be tested respectively according to the reference storage system information and the storage system to be tested information, and the method for determining the reference storage system and the storage system to be tested includes operations S401 to S413.

[0079] In operation S401, reference storage system information and to-be-tested storage system information are acquired.

[0080] In operation S402 , it is determined whether the storage system is the current storage system to be tested. If so, operation S403 is executed; if not, operation S407 is executed.

[0081] In operation S403, the current storage system to be tested is updated using the installation file of the test system to obtain the storage system to be tested.

[0082] In operation S404, the remaining hard disk storage space of the storage device is divided to obtain a preset amount of volume space.

[0083] In operation S405, a preset amount of volume space is expanded, and the compression attribute of the volume space is disabled.

[0084] In operation S406 , the I / O interface of the storage device is started.

[0085] According to an embodiment of the present disclosure, the I / O interface of the storage device can be started with an asynchronous bare volume, and the IO interface of the storage device is kept uninterrupted to simulate the data writing operation of a real storage system.

[0086] In operation S407 , the current storage system is determined to be a current reference storage system.

[0087] In operation S408, it is determined whether the version identifier of the current reference storage system is a preset identifier. If so, operation S410 is executed; if not, operation S409 is executed.

[0088] In operation S409 , the current reference storage system is restored to the reference storage system using the cluster configuration file.

[0089] According to an embodiment of the present disclosure, operation S406 is performed after operation S409, and the I / O interface of the storage device is started to wait for a fault test.

[0090] In operation S410, a reference storage system is installed in a hard disk storage space of a storage device.

[0091] In operation S411 , a resource pool, a cluster, and a node are created.

[0092] According to an embodiment of the present disclosure, a resource pool may include multiple clusters and cluster resources. The resource pool may manage all cluster resources. The cluster may provide actual services and computing capabilities through nodes.

[0093] In operation S412, the hard disk storage space of the storage device is divided to obtain a preset number of volume spaces; and the compression attribute of the volume space is turned off.

[0094] In operation S412, a cluster configuration file is generated.

[0095] According to an embodiment of the present disclosure, operation S406 is performed after operation S412, and the I / O interface is started to wait for a fault test.

[0096] According to an embodiment of the present disclosure, in the case where the function type is no arbitration disk, based on the function type of the cluster in the storage device, fault tests are performed on the reference storage system and the storage system to be tested respectively to obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested, including: performing a first fault test on the storage system to be tested to obtain a first recovery time, the first recovery time being the time for the storage system to be tested to recover the data stored in the single node when a single node fails in the cluster; performing a second fault test on the storage system to be tested to obtain a second recovery time, the second recovery time being the time for the storage system to be tested to recover the data stored in multiple nodes when multiple nodes fail in the cluster; performing a third fault test on the storage system to be tested to obtain a third recovery time, the third recovery time being the total time of the cluster reconstruction process and the cluster reconfiguration process, the cluster reconstruction process including reconstructing the cluster using the mapping relationship between the node and the volume space in the cluster configuration file, the cluster reconfiguration process including configuring the cluster configuration file in the reconstructed cluster using the storage system to be tested; obtaining the test fault result according to the first recovery time, the second recovery time and the third recovery time.

[0097] According to an embodiment of the present disclosure, the first fault test, the second fault test, and the third fault test may be triggered by a fault trigger instruction. The first fault test and the second fault test may be cluster faults, and the third fault test may be a disaster recovery fault. The storage system to be tested is tested for cluster faults and disaster recovery faults, so that the tested storage system can effectively cope with complex and changeable faults.

[0098] For example, a first failure test may remove a single node or place it into service.

[0099] For example, the first fault test is triggered multiple times in a cycle to obtain multiple first recovery durations. The second fault test is triggered multiple times in a cycle to obtain multiple second recovery durations. The third fault test is triggered multiple times in a cycle to obtain multiple third recovery durations.

[0100] According to an embodiment of the present disclosure, before triggering the second fault test, the compression attribute of a certain number of volume spaces can be randomly enabled. After the second fault is recovered, the data before the fault test can be compared with the data after the fault is recovered to obtain a system test result of the compression function.

[0101] According to an embodiment of the present disclosure, before the third fault test, the cluster configuration file is backed up. The third fault test is triggered, the cluster is rebuilt using the mapping relationship between the nodes and the volume space in the cluster configuration file, the cluster configuration file is configured in the rebuilt cluster using the storage system to be tested, and the execution status is detected until the configuration is completed.

[0102] According to an embodiment of the present disclosure, the fault testing process of the reference storage system is the same as the fault testing process of the storage system to be tested.

[0103] For example, multiple fault tests may be performed on the reference storage system and the storage system to be tested to obtain the first average recovery time, the second average recovery time, and the third average recovery time of the reference storage system and the storage system to be tested. The first average recovery time, the second average recovery time, and the third average recovery time of the test storage system are then used as the test fault result. The first average recovery time, the second average recovery time, and the third average recovery time of the reference storage system are then used as the reference fault result.

[0104] According to an embodiment of the present disclosure, in the case where the functional type is storage without an arbitration disk, a first fault test, a second fault test, and a third fault test are performed on a reference storage system and a storage system to be tested, respectively, to complete the testing of the storage system to be tested for cluster failures and disaster recovery failures, so that the tested storage system can effectively cope with complex and changeable failures.

[0105] Figure 5 The flowchart schematically shows a method of performing a fault test on a storage system to be tested and obtaining a test fault result of the storage system to be tested when the function type is no arbitration disk according to an embodiment of the present disclosure.

[0106] like Figure 5 As shown, in this embodiment, when the function type is no arbitration disk, a method for performing a fault test on a storage system to be tested and obtaining a test fault result of the storage system to be tested includes operations S501 to S510.

[0107] In operation S501, the current storage system to be tested is updated according to the information of the storage system to be tested, and the storage system to be tested is determined.

[0108] In operation S502, when the function type is no arbitration disk, a first fault test is performed on the storage system to be tested to obtain a first recovery time.

[0109] In operation S503, it is determined whether the first fault test number is greater than the first cycle number, and if so, operation S504 is executed; if not, operation S502 is executed.

[0110] In operation S504, compression attributes of 10 volume spaces are randomly enabled.

[0111] In operation S505 , a second fault test is performed on the storage system to be tested to obtain a second recovery time.

[0112] In operation S506, it is determined whether the second fault test number is greater than the second cycle number, and if so, operation S507 is executed; if not, operation S505 is executed.

[0113] In operation S507 , the cluster configuration file is backed up.

[0114] In operation S508, a third fault test is performed on the storage system to be tested to obtain a second recovery time.

[0115] In operation S509, it is determined whether the third fault test number is greater than the third cycle number. If so, operation S510 is performed; if not, operation S508 is performed.

[0116] In operation S510, it is determined whether the number of failure tests of the storage system to be tested is greater than a preset number threshold. If so, operation S511 is executed; if not, operation S501 is executed.

[0117] According to an embodiment of the present disclosure, the preset number threshold is the number of cycles of the fault test performed by the storage system to be tested or the reference storage system. The number of cycles of the fault test can simulate similar business scenarios.

[0118] In operation S511, the first average restoration time, the second average restoration time, and the third average restoration time are taken as test failure results.

[0119] According to an embodiment of the present disclosure, a system test result of the storage system to be tested is obtained based on a reference fault result and a test fault result, including: calculating the time difference between the reference fault result and the test fault result; when the time difference satisfies a preset time difference condition, obtaining a system test result characterizing that the storage system to be tested is tested normally; when the time difference does not satisfy the preset time difference condition, obtaining a system test result characterizing that the storage system to be tested is tested abnormally.

[0120] According to an embodiment of the present disclosure, the time difference may include a first difference between a first average recovery time of the storage system to be tested and a first average recovery time of the reference storage system, a second difference between a second average recovery time of the storage system to be tested and a second average recovery time of the reference storage system, and a third difference between a third average recovery time of the storage system to be tested and a third average recovery time of the reference storage system.

[0121] The first difference, the second difference, and the third difference have corresponding difference thresholds respectively. When the time difference is less than the difference threshold, the time difference satisfies the preset time difference condition.

[0122] If the first difference, the second difference, and the third difference are all greater than the difference threshold, an error log is returned.

[0123] In addition, fault recovery testing can easily lead to system problems, so system logs and data consistency checks must be added during each fault trigger or recovery process.

[0124] An application environment that is backed up by multiple sets of equipment connected through a network. Active-active is a data center backup and disaster recovery technology that allows two data centers to run simultaneously. When a data center fails, the business can automatically switch to another data center to ensure business continuity and data reliability. Remote replication is an important data protection and disaster recovery technology that protects data security by replicating data in real time or periodically between the production center and the remote disaster recovery center.

[0125] By sampling and cross-looping the storage system to be tested and the reference storage system in similar business scenarios, the performance of the new version in terms of fault recovery can be captured more accurately. This method takes into account multiple dimensions and multiple fault types, and compares the difference in fault recovery efficiency between the storage system to be tested and the reference storage system by calculating the average recovery time for each fault type. This can help discover defects in design and R&D strategies in advance, help improve the overall performance and user experience of the product, and enhance the market competitiveness of the enterprise. This test method focuses on reliability in active-active and remote replication scenarios.

[0126] According to an embodiment of the present disclosure, the above method also includes: when the compression attribute of the volume space is turned on, using the cluster configuration file to configure the nodes of the reconstructed cluster to obtain a reconstructed volume space corresponding to the nodes in the reconstructed cluster; matching the volume space corresponding to the nodes in the cluster in the cluster configuration file with the reconstructed volume space to obtain a matching result; and determining that the compression function of the target test system is a normal system test result when the matching result indicates that the volume space corresponding to the nodes in the cluster is consistent with the reconstructed volume space.

[0127] According to an embodiment of the present disclosure, when volume space compression is enabled, the nodes of the rebuilt cluster are configured using a cluster configuration file of the backup storage hard disk space. The rebuilt volume space corresponding to the nodes in the rebuilt cluster can be matched with the volume space corresponding to the nodes in the cluster in the cluster configuration file, and it can be determined whether the compression algorithm and strategy meet the test requirements.

[0128] According to an embodiment of the present disclosure, the above method also includes: in the absence of an arbitration disk in the cluster, rebuilding the cluster using the mapping relationship in the cluster configuration file to obtain a reconstructed cluster; using the reconstructed cluster to perform a first fault test and a second fault test on the target test system respectively to obtain a test fault result.

[0129] According to an embodiment of the present disclosure, after the third fault occurs, the cluster is rebuilt using the mapping relationship in the cluster configuration file to obtain a rebuilt cluster. The third fault is a high-level fault and has a great impact on data loss. In order to verify whether the rebuilt cluster can tolerate node failures and quickly recover data, the target test system is tested using the rebuilt cluster to perform the first fault test and the second fault test to obtain the test fault result.

[0130] According to an embodiment of the present disclosure, by using a reconstructed cluster to perform a first fault test and a second fault test on a target test system respectively, even if a third fault occurs in the storage system, the reconstructed cluster can still tolerate node failures and perform data recovery.

[0131] According to an embodiment of the present disclosure, in the case where the function type is storage with an arbitration disk, based on the function types of multiple clusters in the storage device, fault tests are performed on a reference storage system and a storage system to be tested, respectively, to obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested, including: replacing the faulty arbitration disk in the storage device with a normally operating target arbitration disk; restoring and backing up the data stored in the cluster according to the target arbitration disk to obtain a fourth recovery duration and a backup data volume; and determining the test failure result according to the fourth recovery duration and the backup data volume.

[0132] According to the embodiments of the present disclosure, when there is an arbitration disk in the cluster, if the arbitration disk fails, it is difficult to timely control node synchronization and backup storage system data. Therefore, a normally operating target arbitration disk is preset in the cluster to prevent the arbitration disk in the cluster from failing and quickly switch to the target arbitration disk.

[0133] According to the embodiments of the present disclosure, due to the failure of the arbitration disk, the data storage of the node may stop, and a cluster failure occurs. Therefore, in the failure handling of the arbitration disk, the first failure test and the second failure test may not be specifically involved. The fourth recovery time contains information about the node failure recovery.

[0134] According to an embodiment of the present disclosure, in order to verify the effectiveness of the fault recovery strategy and the performance of the control node of the target arbitration disk in synchronously backing up data, not only the fourth recovery duration is collected, but also the backup data volume needs to be counted.

[0135] According to an embodiment of the present disclosure, the fourth recovery duration of the reference storage system is compared with the fourth recovery duration of the storage system to be tested; the amount of backup data of the reference storage system is compared with the amount of backup data of the storage system to be tested to determine whether the storage system to be tested is improved relative to the reference storage system.

[0136] For example, if the fourth recovery time of the reference storage system is greater than the fourth recovery time of the storage system to be tested, and the amount of backup data of the reference storage system is less than the amount of backup data of the storage system to be tested, then the storage system to be tested is improved relative to the reference storage system, and the system test result of the storage system to be tested is normal.

[0137] According to the embodiments of the present disclosure, two situations, whether there is an arbitration disk in the cluster or not, are taken into consideration, and different fault testing schemes are adopted, so that the storage system testing method for storage devices is more applicable.

[0138] Figure 6 The structure block diagram of a storage system testing apparatus for a storage device according to an embodiment of the present disclosure is schematically shown.

[0139] like Figure 6 As shown, the storage system testing apparatus 600 for storage devices of this embodiment includes an updating module 610 , a fault testing module 620 and an obtaining module 630 .

[0140] The update module 610 is used to update the current reference storage system and the current storage system to be tested respectively according to the reference storage system information and the storage system to be tested information, and determine that the reference storage system and the storage system to be tested have different system versions. In one embodiment, the update module 610 can be used to perform the operation S210 described above, which will not be repeated here.

[0141] The fault testing module 620 is used to perform fault tests on the reference storage system and the storage system to be tested respectively based on the functional types of multiple clusters in the storage device, and obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested, wherein the cluster includes at least one node, and the functional type includes storage with an arbitration disk and storage without an arbitration disk, and the arbitration disk is used to control at least one node to synchronize and back up storage system data. In one embodiment, the fault testing module 620 can be used to perform the operation S220 described above, which will not be repeated here.

[0142] The acquisition module 630 is used to obtain a system test result of the storage system to be tested based on the reference fault result and the test fault result, and the system test result represents the fault test difference of the storage system to be tested relative to the reference storage system. In one embodiment, the acquisition module 630 can be used to perform the operation S230 described above, which will not be repeated here.

[0143] According to an embodiment of the present disclosure, the update module 610 includes a first update submodule and a second update submodule. The first update submodule is used to update the current reference storage system according to the version identification of the current reference storage system to obtain the reference storage system, and the reference storage system information includes the version identification of the current reference storage system; the second update submodule is used to update the current storage system to be tested using the installation file of the test system to obtain the storage system to be tested, and the storage system to be tested information includes the installation file of the test system.

[0144] According to an embodiment of the present disclosure, the first update submodule includes an installation unit and a restoration unit. The installation unit is used to install the reference storage system in the hard disk storage space of the storage device when the version identifier of the current reference storage system is a preset identifier; the restoration unit is used to restore the current reference storage system to the reference storage system using a cluster configuration file when the version identifier of the current reference storage system is not a preset identifier.

[0145] According to an embodiment of the present disclosure, the above-mentioned device further includes a partitioning module and a storage module. The partitioning module is used to partition the hard disk storage space of the storage device into a preset number of volume spaces; the storage module is used to store the cluster configuration file in the volume space when the compression attribute of the volume space is turned off.

[0146] According to an embodiment of the present disclosure, when the function type is no arbitration disk, the fault testing module 620 includes a first fault testing submodule, a second fault testing submodule, a third fault testing submodule and a first obtaining submodule. The first fault test submodule is used to perform a first fault test on the storage system to be tested to obtain a first recovery time, which is the time it takes for the storage system to be tested to recover the data stored in the single node when a single node fails in the cluster; the second fault test submodule is used to perform a second fault test on the storage system to be tested to obtain a second recovery time, which is the time it takes for the storage system to be tested to recover the data stored in multiple nodes when multiple nodes fail in the cluster; the third fault test submodule is used to perform a third fault test on the storage system to be tested to obtain a third recovery time, which is the total time of the cluster reconstruction process and the cluster reconfiguration process, the cluster reconstruction process includes rebuilding the cluster using the mapping relationship between the nodes and the volume space in the cluster configuration file, and the cluster reconfiguration process includes configuring the cluster configuration file in the reconstructed cluster using the storage system to be tested; the acquisition submodule is used to obtain the test fault result according to the first recovery time, the second recovery time and the third recovery time.

[0147] According to an embodiment of the present disclosure, the above-mentioned device also includes a configuration module, a matching module and a determination module. The configuration module is used to configure the nodes of the reconstructed cluster using the cluster configuration file when the compression attribute of the volume space is turned on, and obtain the reconstructed volume space corresponding to the nodes in the reconstructed cluster; the matching module is used to match the volume space corresponding to the nodes in the cluster in the cluster configuration file with the reconstructed volume space to obtain a matching result; the determination module is used to determine that the compression function of the target test system is a normal system test result when the volume space corresponding to the nodes in the cluster is consistent with the reconstructed volume space according to the matching result.

[0148] According to an embodiment of the present disclosure, the above-mentioned device also includes a reconstruction module and a multiple fault test module. The reconstruction module is used to rebuild the cluster using the mapping relationship in the cluster configuration file when there is no arbitration disk in the cluster to obtain a reconstructed cluster; the multiple fault test module is used to use the reconstructed cluster to perform a first fault test and a second fault test on the target test system respectively to obtain a test fault result.

[0149] According to an embodiment of the present disclosure, in the case where the function type is storage with an arbitration disk, the fault test module 620 includes a replacement submodule, a recovery and backup submodule, and a determination submodule. The replacement submodule is used to replace the arbitration disk that has a fault in the storage device with a target arbitration disk that is operating normally; the recovery and backup submodule is used to restore and back up the data stored in the cluster according to the target arbitration disk to obtain a fourth recovery time and a backup data volume; the determination submodule is used to determine the test fault result according to the fourth recovery time and the backup data volume.

[0150] According to an embodiment of the present disclosure, the acquisition module 630 includes a calculation submodule, a second acquisition submodule, and a third acquisition submodule. The calculation submodule is used to calculate the time difference between the reference fault result and the test fault result; the second acquisition submodule is used to obtain a system test result indicating that the storage system to be tested is tested normally when the time difference meets a preset time difference condition; the third acquisition submodule is used to obtain a system test result indicating that the storage system to be tested is tested abnormally when the time difference does not meet the preset time difference condition.

[0151] According to an embodiment of the present disclosure, any multiple modules of the update module 610, the fault test module module 620 and the acquisition module 630 can be combined into one module for implementation, or any one of the modules can be split into multiple modules. Alternatively, at least part of the functions of one or more of these modules can be combined with at least part of the functions of other modules and implemented in one module. According to an embodiment of the present disclosure, at least one of the update module 610, the fault test module module 620 and the acquisition module 630 can be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application-specific integrated circuit (ASIC), or can be implemented by hardware or firmware such as any other reasonable way of integrating or packaging the circuit, or implemented in any one of the three implementation methods of software, hardware and firmware or in any appropriate combination of any of them. Alternatively, at least one of the update module 610, the fault test module module 620 and the acquisition module 630 can be at least partially implemented as a computer program module, and when the computer program module is run, the corresponding function can be executed.

[0152] Figure 7 A block diagram of an electronic device suitable for implementing a storage system testing method for a storage device according to an embodiment of the present disclosure is schematically shown.

[0153] like Figure 7As shown, the electronic device 700 according to an embodiment of the present disclosure includes a processor 701, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage part 708 to a random access memory (RAM) 703. The processor 701 may include, for example, a general-purpose microprocessor (such as a CPU), an instruction set processor and / or a related chipset and / or a special-purpose microprocessor (for example, an application-specific integrated circuit (ASIC)), etc. The processor 701 may also include an onboard memory for caching purposes. The processor 701 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.

[0154] In RAM 703, various programs and data required for the operation of electronic device 700 are stored. Processor 701, ROM 702 and RAM 703 are connected to each other via bus 704. Processor 701 performs various operations of the method flow according to the embodiment of the present disclosure by executing the program in ROM 702 and / or RAM 703. It should be noted that the program can also be stored in one or more memories other than ROM 702 and RAM 703. Processor 701 can also perform various operations of the method flow according to the embodiment of the present disclosure by executing the program stored in the one or more memories.

[0155] According to an embodiment of the present disclosure, the electronic device 700 may further include an input / output (I / O) interface 705, which is also connected to the bus 704. The electronic device 700 may further include one or more of the following components connected to the input / output (I / O) interface 705: an input portion 706 including a keyboard, a mouse, etc.; an output portion 707 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage portion 708 including a hard disk, etc.; and a communication portion 709 including a network interface card such as a LAN card, a modem, etc. The communication portion 709 performs communication processing via a network such as the Internet. A drive 710 is also connected to the input / output (I / O) interface 705 as needed. A removable medium 711, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 710 as needed, so that a computer program read therefrom is installed into the storage portion 708 as needed.

[0156] The present disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or may exist independently without being assembled into the device / apparatus / system. The above computer-readable storage medium carries one or more programs, and when the above one or more programs are executed, the method according to the embodiment of the present disclosure is implemented.

[0157] According to an embodiment of the present disclosure, the computer-readable storage medium may be a non-volatile computer-readable storage medium, for example, it may include but is not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, an apparatus or a device. For example, according to an embodiment of the present disclosure, the computer-readable storage medium may include the ROM 702 and / or RAM 703 described above and / or one or more memories other than ROM 702 and RAM 703.

[0158] The embodiment of the present disclosure also includes a computer program product, which includes a computer program, and the computer program includes a program code for executing the method shown in the flowchart. When the computer program product is run in a computer system, the program code is used to enable the computer system to implement the storage system test method for a storage device provided by the embodiment of the present disclosure.

[0159] The above functions defined in the system / device of the embodiment of the present disclosure are performed when the computer program is executed by the processor 701. According to the embodiment of the present disclosure, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0160] In one embodiment, the computer program may rely on tangible storage media such as optical storage devices, magnetic storage devices, etc. In another embodiment, the computer program may also be transmitted and distributed in the form of signals on a network medium, and downloaded and installed through the communication part 709, and / or installed from the removable medium 711. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.

[0161] In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 709, and / or installed from the removable medium 711. When the computer program is executed by the processor 701, the above functions defined in the system of the embodiment of the present disclosure are performed. According to the embodiment of the present disclosure, the system, device, means, module, unit, etc. described above can be implemented by a computer program module.

[0162] According to an embodiment of the present disclosure, the program code for executing the computer program provided by the embodiment of the present disclosure can be written in any combination of one or more programming languages. Specifically, these computing programs can be implemented using high-level process and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, Java, C++, python, "C" language or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on the remote computing device, or entirely on the remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect through the Internet).

[0163] The flow charts and block diagrams in the accompanying drawings illustrate the possible architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each box in the flow chart or block diagram can represent a module, a program segment, or a part of a code, and the above-mentioned module, program segment, or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0164] It will be appreciated by those skilled in the art that the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways, even if such combinations or combinations are not explicitly described in the present disclosure. In particular, without departing from the spirit and teachings of the present disclosure, the features described in the various embodiments of the present disclosure may be combined and / or combined in a variety of ways. All of these combinations and / or combinations fall within the scope of the present disclosure.

[0165] The embodiments of the present disclosure are described above. However, these embodiments are only for illustrative purposes and are not intended to limit the scope of the present disclosure. Although the embodiments are described above, this does not mean that the measures in the various embodiments cannot be used in combination to advantage. Without departing from the scope of the present disclosure, those skilled in the art may make a variety of substitutions and modifications, which should all fall within the scope of the present disclosure.

Claims

1. A storage system testing method for a storage device, characterized in that: The method comprises: According to the reference storage system information and the storage system to be tested information, respectively update the current reference storage system and the current storage system to be tested, and determine the reference storage system and the storage system to be tested, wherein the reference storage system and the storage system to be tested have different system versions; Based on the function types of the multiple clusters in the storage device, respectively perform fault tests on the reference storage system and the storage system to be tested to obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested, wherein the cluster includes at least one node, the function types include storage with an arbitration disk and storage without an arbitration disk, and the arbitration disk is used to control the at least one node to synchronize and back up storage system data; Based on the reference fault result and the test fault result, a system test result of the storage system to be tested is obtained, wherein the system test result represents a fault test difference between the storage system to be tested and the reference storage system.

2. The method according to claim 1, characterized in that The updating of the current reference storage system and the current storage system to be tested respectively according to the reference storage system information and the storage system to be tested, and determining the reference storage system and the storage system to be tested, comprises: updating the current reference storage system according to a version identifier of the current reference storage system to obtain the reference storage system, wherein the reference storage system information includes the version identifier of the current reference storage system; The current storage system to be tested is updated by using the installation file of the test system to obtain the storage system to be tested, wherein the information of the storage system to be tested includes the installation file of the test system.

3. The method according to claim 2, characterized in that The updating of the current reference storage system according to the version identifier of the current reference storage system to obtain the reference storage system includes: In a case where the version identifier of the current reference storage system is a preset identifier, installing the reference storage system in the hard disk storage space of the storage device; When the version identifier of the current reference storage system is not the preset identifier, the current reference storage system is restored to the reference storage system using a cluster configuration file.

4. The method according to claim 3, characterized in that: The method further comprises: Dividing the hard disk storage space of the storage device into a preset number of volume spaces; When the compression attribute of the volume space is turned off, the cluster configuration file is stored in the volume space.

5. The method according to claim 1 or 3, characterized in that: In the case where the function type is the storage without arbitration disk, the reference storage system and the storage system to be tested are respectively subjected to fault tests based on the function type of the cluster in the storage device to obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested, including: Performing a first fault test on the storage system to be tested to obtain a first recovery time, wherein the first recovery time is the time it takes to use the storage system to be tested to recover data stored in a single node when a single node in the cluster fails; Performing a second fault test on the storage system to be tested to obtain a second recovery time, where the second recovery time is the time it takes to use the storage system to be tested to recover the data stored in the multiple nodes when the multiple nodes in the cluster fail; Performing a third fault test on the storage system to be tested to obtain a third recovery duration, wherein the third recovery duration is the total duration of a cluster reconstruction process and a cluster reconfiguration process, wherein the cluster reconstruction process includes reconstructing the cluster using a mapping relationship between the nodes and the volume space in a cluster configuration file, and the cluster reconfiguration process includes configuring the cluster configuration file in the reconstructed cluster using the storage system to be tested; The test failure result is obtained according to the first recovery time, the second recovery time and the third recovery time.

6. The method according to claim 5, characterized in that The method further comprises: configuring the nodes of the reconstructed cluster using the cluster configuration file when the compression attribute of the volume space is turned on, so as to obtain a reconstructed volume space corresponding to the nodes in the reconstructed cluster; Matching the volume space corresponding to the node in the cluster in the cluster configuration file with the reconstructed volume space to obtain a matching result; When the matching result indicates that the volume space corresponding to the node in the cluster is consistent with the reconstructed volume space, it is determined that the compression function of the target test system is a normal system test result.

7. The method according to claim 5, characterized in that The method further comprises: In the case where the arbitration disk is not present in the cluster, the cluster is rebuilt using the mapping relationship in the cluster configuration file to obtain the rebuilt cluster; The reconstructed cluster is used to perform a first fault test and a second fault test on the target test system respectively to obtain the test fault result.

8. The method according to claim 1, characterized in that In the case where the function type is the storage with arbitration disk, the method of performing fault tests on the reference storage system and the storage system to be tested respectively based on the function types of the multiple clusters in the storage device to obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested includes: Replacing the failed arbitration disk in the storage device with a normally operating target arbitration disk; Recover and back up the data stored in the cluster according to the target arbitration disk to obtain a fourth recovery duration and a backup data volume; The test failure result is determined according to the fourth recovery time and the backup data volume.

9. The method according to claim 1, characterized in that: The obtaining, based on the reference fault result and the test fault result, a system test result of the storage system to be tested, comprises: Calculating a time difference between the reference fault result and the test fault result; When the time difference satisfies a preset time difference condition, a system test result indicating that the storage system to be tested is tested normally is obtained; When the time difference does not satisfy the preset time difference condition, a system test result indicating that the storage system to be tested is abnormal is obtained.

10. A storage system testing device for a storage device, characterized in that: The device comprises: An update module, used to update the current reference storage system and the current storage system to be tested respectively according to the reference storage system information and the storage system to be tested information, and determine the reference storage system and the storage system to be tested, wherein the reference storage system and the storage system to be tested have different system versions; a fault testing module, configured to perform fault tests on the reference storage system and the storage system to be tested respectively based on the function types of the multiple clusters in the storage device, and obtain a reference fault result of the reference storage system and a test fault result of the storage system to be tested, wherein the cluster includes at least one node, the function types include storage with an arbitration disk and storage without an arbitration disk, and the arbitration disk is used to control the at least one node to synchronize and back up storage system data; The obtaining module is used to obtain a system test result of the storage system to be tested based on the reference fault result and the test fault result, wherein the system test result represents a fault test difference between the storage system to be tested and the reference storage system.

Citation Information

Patent Citations

  • Automatic regression testing method, system and equipment and medium

    CN109818778A

  • Storage fault recovery test method and device

    CN111581019A

  • Test method and device of freight rate publishing system, storage medium and electronic equipment

    CN119127717A

  • Method to revive and reconstitute majority node set clusters

    US7120821B1