Disaster recovery virtual machine high availability method, apparatus and device, and readable storage medium

By obtaining and traversing the host list of disaster recovery virtual machines, determining the failed host and migrating the disaster recovery virtual machine, the problem of insufficient high availability of disaster recovery virtual machines in the existing technology is solved, and the normal operation of disaster recovery functions and the improvement of cluster performance is achieved.

CN119718551APending Publication Date: 2025-03-28INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202412000363.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-31
Publication Date
2025-03-28

AI Technical Summary

Technical Problem

The existing technology cannot effectively realize the high availability of disaster recovery virtual machines, resulting in the inability to migrate the virtual machines in a timely manner in the event of a failure, affecting the normal operation of disaster recovery functions.

Method used

By obtaining the corresponding host list of disaster recovery virtual machines in the cluster, iterate through the cache storage pool status of each host, determine the faulty host, and migrate the disaster recovery virtual machines running on the faulty host to the normal available host.

Benefits of technology

Timely fault detection and migration of disaster recovery virtual machines is realized, ensuring the normal operation of disaster recovery functions, and improving cluster performance and high availability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119718551A_ABST
    Figure CN119718551A_ABST
Patent Text Reader

Abstract

The invention discloses a disaster recovery virtual machine high availability method, device and equipment and a readable storage medium, which are applied to the field of high availability technology, and the method comprises the following steps: obtaining a host list corresponding to a disaster recovery virtual machine in a cluster; traversing each host in the host list, and determining the state of a cache storage pool corresponding to each host; when the state of the cache storage pool corresponding to the host is a fault state, determining that the host in the host list is a fault host; the fault state comprises at least one of a state of being not associated with the host and a state of being not mounted; the method comprises the following steps of: acquiring a downtime disaster recovery virtual machine list running on a fault host, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selecting a normal available host for the downtime disaster recovery virtual machine, and migrating each downtime disaster recovery virtual machine to the corresponding normal available host. According to the method, the fault host is determined based on the fault of the cache storage pool, so that the disaster recovery virtual machine on the fault host is migrated to the normal available host in time, and the normal operation of the disaster recovery function is ensured.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of high availability technology, and in particular to a method, apparatus, device and readable storage medium for high availability of a disaster recovery virtual machine. Background Art

[0002] A dual-site disaster recovery virtualization platform establishes disaster recovery protection groups. Each protection group corresponds to a production site and a disaster recovery site. The virtual machines at the production site are disaster recovery virtual machines, while the corresponding virtual machines at the disaster recovery site are placeholder virtual machines. Site disaster recovery is a disaster recovery technology used in virtualization. To achieve dual-site disaster recovery, resources such as storage, network, host, and virtual machines must be supported. However, because existing high-availability methods for virtual machines handle different faults than those for disaster recovery virtual machines, existing high-availability solutions for virtual machines are no longer applicable. Therefore, a high-availability method specifically for disaster recovery virtual machines is needed.

[0003] It can be seen that how to provide a high availability method applicable to disaster recovery virtual machines is a technical problem that those skilled in the art urgently need to solve. Summary of the Invention

[0004] In view of this, the purpose of the present invention is to provide a method, device, equipment and readable storage medium for high availability of disaster recovery virtual machines, which solves the technical problem that high availability of disaster recovery virtual machines cannot be achieved in the prior art.

[0005] To solve the above technical problems, the present invention provides a method for high availability of a disaster recovery virtual machine, comprising:

[0006] Get the host list corresponding to the disaster recovery virtual machines in the cluster;

[0007] Traversing each host in the host list to determine the status of the cache storage pool corresponding to each host;

[0008] When the state of the cache storage pool corresponding to the host is a fault state, determining that the host in the host list is a faulty host; wherein the fault state includes at least one of a state of not being associated with the host and a state of not being mounted;

[0009] The disaster recovery virtual machine running on the faulty host is used as a downtime disaster recovery virtual machine, a downtime disaster recovery virtual machine list is obtained, each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list is traversed, a normal available host is selected for each downtime disaster recovery virtual machine, and each downtime disaster recovery virtual machine is migrated to the corresponding normal available host.

[0010] On the one hand, when the state of the cache storage pool corresponding to the host is a faulty state, determining that the host in the host list is a faulty host includes:

[0011] determining whether each host in the host list is associated with a cache storage pool;

[0012] If the current host is not associated with the cache storage pool, it is determined that the current host has a cache storage pool failure;

[0013] If the current host is associated with a cache storage pool, determine whether the cache storage pool is in a mounted state;

[0014] If the cache storage pool is not mounted, it is determined that the cache storage pool on the current host is faulty.

[0015] On the one hand, the method of using the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtaining a downtime disaster recovery virtual machine list, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selecting a normal available host for each downtime disaster recovery virtual machine, and migrating each downtime disaster recovery virtual machine to the corresponding normal available host includes:

[0016] Obtain normal and available hosts and determine the priority of each normal and available host based on its business network status, disaster recovery network status, and cache storage pool status;

[0017] Traverse each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, and select the corresponding normal available host for each downtime disaster recovery virtual machine based on the priority of the normally available host and the fault type of each downtime disaster recovery virtual machine; wherein the fault type of the downtime disaster recovery virtual machine includes a fault type determined based on the fault of the faulty host.

[0018] On the one hand, the obtaining of normal available hosts and determining the priority of each normal available host according to the service network status, disaster recovery network status and cache storage pool status of each normal available host includes:

[0019] Traverse the list of normal available hosts in the cluster;

[0020] Select hosts whose service network, cache storage pool, and disaster recovery network are all normal from the list of normal available hosts to form a first priority host list;

[0021] If the fault type of the downtime disaster recovery VM is a cache storage pool failure, determine whether the service network of the failed host is normal.

[0022] When the service network of the faulty host is abnormal, the hosts in the normal available host list with a normal service network, a normal disaster recovery network and an abnormal cache storage pool, or the hosts in the normal service network, a normal cache storage pool and an abnormal disaster recovery network, are used to form a second priority host list; the hosts in the normal available host list with an abnormal service network, a normal cache storage pool and a normal disaster recovery network are used as a third priority host list;

[0023] Accordingly, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, and selecting a corresponding normal available host for each downtime disaster recovery virtual machine based on the priority of the normal available host and the failure type of each downtime disaster recovery virtual machine, including:

[0024] If, when selecting a normally available host for the currently down disaster recovery virtual machine, it is determined that the first priority host list is not empty, a host in the first priority host list is selected as the normally available host corresponding to the currently down disaster recovery virtual machine;

[0025] If, when selecting a normally available host for the currently downtime disaster recovery virtual machine, it is determined that the first priority host list is empty, then determining whether the second priority host list is empty;

[0026] When it is determined that the second priority host list is not empty, selecting a host in the second priority host list as the normally available host corresponding to the currently down disaster recovery virtual machine;

[0027] When it is determined that the second priority host list is empty, a host in the third priority host list is selected as the normally available host corresponding to the currently down disaster recovery virtual machine.

[0028] On the one hand, when the third priority host list is empty, it includes:

[0029] Determine to use the hosts in the normally available hosts except the first priority host list, the second priority host list, and the third priority host list as a fourth priority host list; wherein the hosts in the fourth priority host list do not belong to the hosts corresponding to the downtime disaster recovery virtual machine;

[0030] A host in the fourth priority host list is selected as the normally available host corresponding to the currently down disaster recovery virtual machine.

[0031] On the one hand, the disaster recovery virtual machine running on the faulty host is used as a downtime disaster recovery virtual machine, a downtime disaster recovery virtual machine list is obtained, each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list is traversed, a normal available host is selected for each downtime disaster recovery virtual machine, and each downtime disaster recovery virtual machine is migrated to the corresponding normal available host, including:

[0032] Determine the normally available host corresponding to the currently down disaster recovery virtual machine;

[0033] Determine a processing strategy corresponding to the normally available host;

[0034] When the processing strategy is business continuity, each downtime disaster recovery virtual machine is determined to be migrated to the normally available host in an online migration manner;

[0035] When the processing strategy is service interruption, a method of first shutting down the virtual machine and then starting up the virtual machine is determined to migrate each downtime disaster recovery virtual machine to the corresponding normally available host.

[0036] On the one hand, after taking the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtaining a downtime disaster recovery virtual machine list, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selecting a normal available host for each downtime disaster recovery virtual machine, and migrating each downtime disaster recovery virtual machine to the corresponding normal available host, the method further includes:

[0037] When the migration is successful, the high availability task of the current cycle is confirmed to have been successfully executed, and the fault information of the disaster recovery virtual machine is deleted from the list of downtime disaster recovery virtual machines;

[0038] When the migration fails, it is determined that the failed disaster recovery virtual machine will be migrated again in the next high availability cycle.

[0039] An embodiment of the present invention further provides a high-availability device for a disaster recovery virtual machine, comprising:

[0040] The host list acquisition module is used to obtain the host list corresponding to the disaster recovery virtual machine in the cluster;

[0041] A status determination module, configured to traverse each host in the host list and determine the status of the cache storage pool corresponding to each host;

[0042] a faulty host determining module, configured to determine a host in the host list as a faulty host when the state of the cache storage pool corresponding to the host is a faulty state; wherein the faulty state includes at least one of a state of not being associated with the host and a state of not being mounted;

[0043] The high availability module is used to use the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtain a downtime disaster recovery virtual machine list, traverse each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, select a normal available host for each downtime disaster recovery virtual machine, and migrate each downtime disaster recovery virtual machine to the corresponding normal available host.

[0044] An embodiment of the present invention further provides a high-availability device for a disaster recovery virtual machine, comprising:

[0045] memory for storing computer programs;

[0046] The processor is used to execute the computer program to implement the steps of the above-mentioned disaster recovery virtual machine high availability method.

[0047] An embodiment of the present invention further provides a readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the steps of the above-mentioned method for high availability of a disaster recovery virtual machine are implemented.

[0048] The present invention also provides a computer program product, comprising a computer program / instruction, which implements the steps of the above-mentioned disaster recovery virtual machine high availability method when executed by a processor.

[0049] To solve the above technical problems, an embodiment of the present invention provides a flowchart of a method for high availability of disaster-tolerant virtual machines, including: obtaining a list of hosts corresponding to disaster-tolerant virtual machines in a cluster; traversing each host in the host list to determine the status of a cache storage pool corresponding to each host; when the status of the cache storage pool corresponding to the host is a faulty state, determining that the host in the host list is a faulty host; wherein the faulty state includes at least one of the states of not associated with the host and not mounted; obtaining a list of downtime disaster-tolerant virtual machines running on the faulty host, taking the disaster-tolerant virtual machines running on the faulty host as downtime disaster-tolerant virtual machines, obtaining a list of downtime disaster-tolerant virtual machines, traversing each downtime disaster-tolerant virtual machine in the list of downtime disaster-tolerant virtual machines, selecting a normally available host for each downtime disaster-tolerant virtual machine, and migrating each downtime disaster-tolerant virtual machine to the corresponding normally available host.

[0050] It can be seen from the above technical solution that the beneficial effect of the present invention is: compared with the current inability to achieve high availability of disaster recovery virtual machines, the present invention can promptly detect cache storage pool failures, determine the faulty host, and thus promptly migrate the disaster recovery virtual machines on the faulty host to normal available hosts, thereby ensuring the normal operation of the disaster recovery function and improving the performance of the cluster. BRIEF DESCRIPTION OF THE DRAWINGS

[0051] In order to more clearly illustrate the embodiments of the present invention, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0052] Figure 1 A flowchart of a high-availability disaster recovery virtual machine provided by an embodiment of the present invention;

[0053] Figure 2 An example diagram of a process for determining a host failure provided by an embodiment of the present invention;

[0054] Figure 3 An example diagram of a high-availability process for a disaster recovery virtual machine provided by an embodiment of the present invention;

[0055] Figure 4A schematic diagram of the collaboration between various modules of a high-availability method and device for a disaster recovery virtual machine provided by an embodiment of the present invention;

[0056] Figure 5 A schematic diagram of the structure of a high-availability device for disaster recovery virtual machines provided by an embodiment of the present invention;

[0057] Figure 6 A schematic diagram of the structure of a high-availability disaster recovery virtual machine device provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0058] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of them. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making any creative efforts shall fall within the scope of protection of the present invention.

[0059] The terms "including" and "having," as used in the present description and accompanying drawings, and any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or apparatus comprising a series of steps or elements is not limited to the listed steps or elements and may include steps or elements that are not listed.

[0060] Some of the terms that appear in the description of the embodiments of the present invention are subject to the following interpretations:

[0061] Disaster recovery virtual machine: The dual-site disaster recovery virtualization platform establishes disaster recovery protection groups. Each protection group corresponds to a production site and a disaster recovery site. The virtual machine in the production site is the disaster recovery virtual machine, and the virtual machine at the corresponding disaster recovery site is called a placeholder virtual machine.

[0062] High availability: A high availability technology that automatically powers on a virtual machine on a target host when a virtual machine fails.

[0063] In order to enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific implementation methods.

[0064] Next, a method for high availability of a disaster recovery virtual machine provided by an embodiment of the present invention is described in detail. Figure 1 A flowchart of a method for high availability of a disaster recovery virtual machine provided by an embodiment of the present invention may include:

[0065] S101, obtaining a host list corresponding to the disaster recovery virtual machines in the cluster.

[0066] This embodiment does not limit the specific execution subject. For example, this embodiment can be a computer, or this embodiment can also be any node in a cluster. The cluster in this embodiment refers to a cluster that includes disaster recovery virtual machines. This embodiment does not limit the specific number of hosts in the host list. For example, in this embodiment, the host list in the host list can be a single host; or in this embodiment, the host list in the host list can be multiple hosts. A disaster recovery virtual machine can be configured to be associated with multiple hosts, or it can be configured to be associated with a single host.

[0067] S102: Traverse each host in the host list to determine the status of the cache storage pool corresponding to each host.

[0068] The cache storage pool in this embodiment is a memory area used to temporarily store frequently accessed data to improve the efficiency of data reading and writing. This embodiment does not limit the order in which each host in the host list is traversed. For example, this embodiment can traverse according to the host number in the host list; or this embodiment can also traverse from front to back according to the order of the host list; or this embodiment can also traverse from back to front according to the order of the host list. This embodiment does not limit the specific cache storage pool state. For example, the cache storage pool in this embodiment can be in a normal state; or the state of the cache storage pool in this embodiment can also be not associated with the host, which generally means that the necessary connection or binding relationship is not established between the cache storage pool and the host; or the cache storage state in this embodiment can also be associated with the host but not mounted, which means that the storage device is not correctly connected and identified, resulting in an inability to access the data stored in the storage device.

[0069] S103: When the cache storage pool corresponding to the host is in a faulty state, determine that the host in the host list is a faulty host; wherein the faulty state includes at least one of not associated with the host and not mounted.

[0070] This embodiment does not limit the specific fault state. For example, the fault state in this embodiment may be not associated with the host; or the fault state in this embodiment may be unmounted; or the fault state in this embodiment may be both unassociated with the host and unmounted. It is understood that if the cache storage pool of the host where the disaster recovery virtual machine resides is unmounted or unassociated with the cache pool, it is considered a cache storage pool failure, affecting the disaster recovery function of the disaster recovery virtual machine.

[0071] It should be further explained that, in order to improve the accuracy of determining the faulty host, when the state of the cache storage pool corresponding to the host is in a faulty state, determining that a host in the host list is a faulty host can include: determining whether each host in the host list is associated with the cache storage pool; if the current host is not associated with the cache storage pool, determining that the current host has a cache storage pool fault; if the current host is associated with the cache storage pool, determining whether the cache storage pool is in a mounted state; if the cache storage pool is not in a mounted state, determining that the current host has a cache storage pool fault. This embodiment can obtain a host list corresponding to all disaster recovery virtual machines in the cluster, and for each host in the list, determine whether the host is associated with a cache storage pool. If not, it is considered that the cache storage pool of the host is abnormal; if so, further determine whether the cache storage pool is mounted on the host. If not, it is also considered that the cache storage pool is abnormal; if the host has a cache storage pool abnormality, it is determined that the host has a fault, and obtain the disaster recovery virtual machine running on the faulty host, add the disaster recovery virtual machine to the list of downtime disaster recovery virtual machines, and mark the fault type of the host as a cache storage pool fault. This embodiment provides two specific situations for determining a cache storage pool failure, so that the host corresponding to the cache storage pool failure can be accurately identified as the failed host.

[0072] S104, taking the disaster recovery virtual machine running on the faulty host as the downtime disaster recovery virtual machine, obtaining a downtime disaster recovery virtual machine list, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selecting a normal available host for each downtime disaster recovery virtual machine, and migrating each downtime disaster recovery virtual machine to the corresponding normal available host.

[0073] This embodiment does not limit the specific normal and available hosts. For example, the normal and available hosts in this embodiment can be hosts whose business network, disaster recovery network, and cache storage pool are all normal. The business network refers to a network that provides one or more services to access users, and the disaster recovery network (Disaster Recovery Network) is a network system established to quickly restore services in the event of a disaster. The normal and available hosts in this embodiment can also be hosts whose business network is abnormal but whose disaster recovery network and cache storage pool are normal; or the normal and available hosts in this embodiment can also be hosts whose business network is normal but whose disaster recovery network and cache storage pool are abnormal; or the normal and available hosts in this embodiment can also be hosts whose business network and cache storage pool are normal but whose disaster recovery network is abnormal. This embodiment does not limit the specific method of migrating the downtime disaster recovery virtual machine to the corresponding normally available host. For example, the migration process of this embodiment is to trigger a high-availability task. For example, if the processing strategy is business continuity, the online migration of the downtime disaster recovery virtual machine is triggered; if the processing strategy is business interruption, the downtime disaster recovery virtual machine is first safely shut down, and then the power of the downtime disaster recovery virtual machine is turned on; after the high-availability task is successfully executed, the fault information of the downtime disaster recovery virtual machine is deleted from the downtime disaster recovery virtual machine list. If the high-availability task fails to execute, the downtime disaster recovery virtual machine will continue to be processed in the next processing cycle.

[0074] It should be further explained that, in order to improve the migration effect, the above-mentioned disaster recovery virtual machine running on the faulty host is used as the downtime disaster recovery virtual machine, a downtime disaster recovery virtual machine list is obtained, each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list is traversed, a normal available host is selected for each downtime disaster recovery virtual machine, and each downtime disaster recovery virtual machine is migrated to the corresponding normal available host, which may include:

[0075] S1041, obtaining normal available hosts, and determining the priority of each normal available host based on the service network status, disaster recovery network status, and cache storage pool status of each normal available host;

[0076] S1042, traverse each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, and select a corresponding normal available host for each downtime disaster recovery virtual machine based on the priority of the normal available host and the fault type of each downtime disaster recovery virtual machine; wherein the fault type of the downtime disaster recovery virtual machine includes a fault type determined based on the fault of the faulty host.

[0077] In this embodiment, the priority of each normally available host is determined based on the business network status, disaster recovery network status, and cache storage pool status of each normally available host. The role of the business network status may be greater than that of the disaster recovery network status and greater than that of the cache storage pool status, that is, in this embodiment, the host with a normal business network is given the highest priority; or this embodiment may also make multiple combinations of the business network status, disaster recovery network status, and cache storage pool status to determine the priority according to the needs. The downtime disaster recovery virtual machine in this embodiment refers to the downtime of the disaster recovery virtual machine caused by the faulty host. The fault type of the downtime disaster recovery virtual machine in this embodiment may be the business network fault of the corresponding host; or the fault type of the downtime disaster recovery virtual machine in this embodiment may be the cache storage pool fault of the corresponding host; or the fault type of the downtime disaster recovery virtual machine in this embodiment may be the disaster recovery network fault of the corresponding host. This embodiment can select a normally available host for each downtime disaster recovery virtual machine based on the priority, thereby improving the accuracy of the selection of the normally available host and improving the effect of high availability.

[0078] It should be further explained that, in order to improve the migration effect, the above-mentioned traversal of each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list and selecting a corresponding normal available host for each downtime disaster recovery virtual machine based on the priority of the normal available host and the failure type of each downtime disaster recovery virtual machine can include: determining the host in each priority host list based on the priority of the normal available host; predicting the load value of each host, sorting the hosts in each priority host list based on the load value to obtain a sorted priority host list; and selecting a corresponding normal available host for each downtime disaster recovery virtual machine based on the sorted priority host list and the failure type of each downtime disaster recovery virtual machine. This embodiment does not limit the specific method of prediction, as long as the predicted load change corresponding to each host can be determined, for example, deploying monitoring tools to track host performance indicators such as CPU usage, memory usage, disk I / O, and network traffic in real time. These tools can provide historical data and trend analysis to help predict future load conditions. The collected performance data can be analyzed using machine learning or statistical analysis methods to predict future load patterns. For example, time series analysis can be used to identify periodic changes, or regression models can be used to predict load changes under specific conditions. By determining the change in load value, each downtime disaster recovery virtual machine can be preferentially migrated to a normal available host with light load and good performance, thereby improving the high availability of the downtime virtual machine.

[0079] It should be further explained that, in order to improve the accuracy of priority determination, the above-mentioned acquisition of normal available hosts and determination of the priority of each normal available host based on the business network status, disaster recovery network status, and cache storage pool status of each normal available host may include:

[0080] S1, traverse the list of normal available hosts in the cluster;

[0081] S2: Select hosts from the list of available hosts whose service network, cache storage pool, and disaster recovery network are all functioning normally, forming the first-priority host list.

[0082] S3: When the fault type of the downtime disaster recovery virtual machine is a cache storage pool failure, determine whether the service network of the faulty host is normal;

[0083] In this embodiment, when the fault type of the downtime disaster recovery virtual machine is a cache storage pool fault, it is determined whether the service network of the faulty host corresponding to the current downtime disaster recovery virtual machine is normal.

[0084] S4, when the service network of the faulty host is abnormal, the hosts in the normal available host list with a normal service network, a normal disaster recovery network, and an abnormal cache storage pool, or hosts with a normal service network, a normal cache storage pool, and an abnormal disaster recovery network, are combined into a second priority host list;

[0085] S5: The hosts in the list of normally available hosts, whose service network is abnormal but whose cache storage pool and disaster recovery network are normal, are added to the third-priority host list.

[0086] Accordingly, each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list is traversed, and based on the priority of the normally available hosts and the failure type of each downtime disaster recovery virtual machine, a corresponding normally available host is selected for each downtime disaster recovery virtual machine, including:

[0087] S6, if it is determined that the first-priority host list is not empty when selecting a normally available host for the currently down disaster recovery virtual machine, then select a host in the first-priority host list as the normally available host corresponding to the currently down disaster recovery virtual machine;

[0088] S7, if it is determined that the first priority host list is empty when selecting a normally available host for the currently downtime disaster recovery virtual machine, then determine whether the second priority host list is empty;

[0089] S8, when it is determined that the second priority host list is not empty, selecting a host in the second priority host list as a normal available host corresponding to the currently down disaster recovery virtual machine;

[0090] S9: When it is determined that the second priority host list is empty, a host in the third priority host list is selected as a normal available host corresponding to the currently down disaster recovery virtual machine.

[0091] This embodiment traverses the downtime disaster recovery virtual machines in the host list, schedules each virtual machine, and selects an appropriate target host. The selection strategy includes: if the target host's resources meet the virtual machine's operating conditions, and if the disaster recovery virtual machine fails, a host with a normal business network, disaster recovery network, and cache storage pool is prioritized. If no such host exists, the system further determines whether the business network where the virtual machine resides is normal. If the business network is abnormal, the system prioritizes scheduling to a host with a normal business network and an abnormal disaster recovery network or cache storage pool. Next, a host with an abnormal business network and both a normal disaster recovery network and cache storage pool is prioritized. For other failure types (host failure, other storage pool failure), the system prioritizes scheduling to a host with a normal business network and an abnormal disaster recovery network or cache storage pool. Next, a host with an abnormal business network and both a normal disaster recovery network and cache storage pool is prioritized. Finally, the system prioritizes the remaining available hosts. After scheduling each virtual machine, a pairing set of downtime disaster recovery virtual machines and target hosts is generated. This embodiment provides a specific method for selecting normal and available hosts, improving the accuracy of selecting normal and available hosts.

[0092] It should be further explained that when the third-priority host list is empty, the following steps may be performed: determining that the hosts in the normal available hosts except those in the first-priority host list, the second-priority host list, and the third-priority host list are included in the fourth-priority host list; wherein the hosts in the fourth-priority host list are not hosts corresponding to the downtime disaster recovery virtual machine; and selecting the hosts in the fourth-priority host list as the normal available hosts corresponding to the current downtime disaster recovery virtual machine. This embodiment enables high availability of downtime disaster recovery virtual machines corresponding to different types of hosts.

[0093] It should be further explained that the above-mentioned method of using the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtaining a downtime disaster recovery virtual machine list, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selecting a normal available host for each downtime disaster recovery virtual machine, and migrating each downtime disaster recovery virtual machine to the corresponding normal available host can include: determining the normal available host corresponding to the current downtime disaster recovery virtual machine; determining the processing strategy corresponding to the normal available host; when the processing strategy is business continuity, determining to migrate each downtime disaster recovery virtual machine to the normal available host in an online migration manner; when the processing strategy is business interruption, determining to first shut down the virtual machine and then open the virtual machine to migrate each downtime disaster recovery virtual machine to the corresponding normal available host. This embodiment provides two migration methods, which increases the high availability of the system.

[0094] It should be further explained that after the disaster recovery virtual machine running on the faulty host is used as a downtime disaster recovery virtual machine, a downtime disaster recovery virtual machine list is obtained, each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list is traversed, a normal available host is selected for each downtime disaster recovery virtual machine, and each downtime disaster recovery virtual machine is migrated to the corresponding normal available host, the following may also be included: when the migration is successful, confirming the successful execution of the high availability task in the current cycle, and deleting the fault information of the disaster recovery virtual machine from the downtime disaster recovery virtual machine list; when the migration fails, determining to continue migrating the failed disaster recovery virtual machine in the next high availability cycle. This embodiment will delete the fault information in a timely manner to prevent affecting the accuracy of high availability.

[0095] A method for high availability of disaster recovery virtual machines provided by an embodiment of the present invention may include: S101, obtaining a host list corresponding to disaster recovery virtual machines in a cluster; S102, traversing each host in the host list to determine the status of the cache storage pool corresponding to each host; S103, when the status of the cache storage pool corresponding to the host is a faulty state, determining that the host in the host list is a faulty host; wherein the faulty state includes at least one of not associated with the host and not mounted; S104, using the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtaining a downtime disaster recovery virtual machine list, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selecting a normal available host for each downtime disaster recovery virtual machine, and migrating each downtime disaster recovery virtual machine to a corresponding normal available host. Compared with the current method that cannot achieve high availability of disaster recovery virtual machines, the present invention promptly detects cache storage pool failures, determines the faulty host, and thus promptly migrates the disaster recovery virtual machines on the faulty host to a normal available host, ensuring the normal operation of the disaster recovery function and improving the core competitiveness of the product.

[0096] The implementation of dual-site disaster recovery technology relies on a cache storage pool, that is, the host must mount a cache storage pool to support the dual-site disaster recovery function. The dual-site disaster recovery system will intercept the data of the working virtual machine and write it into the cache storage pool. After a failure occurs at the working site (the running virtualization system), the virtual machine data in the cache storage pool can be used to restore the virtual machine business at the backup site (the site used for disaster recovery) through failover. If the cache storage pool fails, it will inevitably affect the disaster recovery function of the virtual machine. When the virtual machine failure cannot be restored, user data will be lost, causing serious losses. The present invention aims to solve this problem, timely detect cache storage pool failures, and migrate virtual machines to other hosts with normal cache storage pools through migration or shutdown and restart operations, thereby ensuring the normal operation of the disaster recovery function.

[0097] In order to make the present invention easier to understand, please refer to Figure 2 , Figure 2An example flow chart of a host fault determination process provided by an embodiment of the present invention may specifically include:

[0098] 1. Configure the disaster recovery virtual machine information based on the cluster. The disaster recovery virtual machine information includes the disaster recovery virtual machine high availability switch information, the disaster recovery virtual machine high availability processing cycle, and the disaster recovery virtual machine high availability processing strategy.

[0099] The high-availability processing cycle of the disaster recovery virtual machine in this embodiment is used to cyclically execute the entire process from obtaining the disaster recovery host list to migrating the downtime disaster recovery virtual machine to a normal available host.

[0100] 2. Traverse the cluster list to determine whether high availability of the disaster recovery virtual machine is enabled, and obtain the disaster recovery host list corresponding to all the disaster recovery virtual machines in the cluster list.

[0101] When traversing the cluster list, this embodiment will promptly determine whether the clusters in the cluster list have been traversed. If the traversal is not complete, it will determine whether the cluster has enabled high availability of disaster recovery virtual machines. When the traversal is complete, it will end. The disaster recovery host list in this embodiment corresponds to the host list above.

[0102] 3. Traverse each host in the disaster recovery host list to determine whether the cache storage pool in the cache storage pool list on the host is normal.

[0103] In this embodiment, it is determined whether the cache storage pool is associated with the host. If not, it is determined that there is a cache storage pool failure. If so, it is further determined whether the cache storage pool is mounted on the host. If not, it is determined that there is a cache storage pool abnormality. If so, it is determined that there is no cache storage pool abnormality.

[0104] 4. If the host has a cache storage pool exception, obtain the list of disaster recovery virtual machines running on the host, add the virtual machines in the list to the downtime disaster recovery virtual machine list, mark the fault type of the host as a cache storage pool failure, and store the fault information in the database.

[0105] Accordingly, in order to make the present invention easier to understand, please refer to Figure 3 , Figure 3 An example diagram of a process for high availability of a disaster recovery virtual machine provided by an embodiment of the present invention may specifically include:

[0106] 1. Traverse the downtime disaster recovery virtual machines in the downtime disaster recovery virtual machine list.

[0107] 2. Determine whether high availability is enabled for the downtime disaster recovery virtual machine.

[0108] 3. If high availability is enabled, select a host for the downtime disaster recovery virtual machine.

[0109] The host in this embodiment is the normal available host described above.

[0110] 4. If high availability is not enabled, continue traversing the next downtime disaster recovery virtual machine until all downtime disaster recovery virtual machines in the downtime disaster recovery virtual machine list are traversed.

[0111] 5. Filter out available target hosts, traverse the target host list, and determine whether the business network, cache storage pool, and disaster recovery network are all normal.

[0112] 6. When the business network, cache storage pool and disaster recovery network are all normal, the host is listed as the first priority host.

[0113] 7. Otherwise, determine whether the failure type of the downtime disaster recovery virtual machine is a cache storage pool failure.

[0114] 8. When the cache storage pool fails, determine whether the service network of the original host corresponding to the downtime disaster recovery virtual machine is normal.

[0115] 9. When the situation is abnormal, the hosts whose business network is normal but whose cache storage pool or disaster recovery network is abnormal will be placed in the second priority host list.

[0116] 10. Add hosts whose business network is abnormal but whose cache storage pool or disaster recovery network is normal to the third-priority host list.

[0117] 11. Add hosts whose business network is abnormal but whose cache storage pool and disaster recovery network are normal to the third-priority host list.

[0118] 12. Migrate each downtime disaster recovery virtual machine. When the first-priority host list is not empty, give priority to the hosts in the first-priority host list.

[0119] 13. When the first priority host list is empty, select the host in the second priority host list.

[0120] 14. When the second priority host list is empty, select the host in the third priority host list.

[0121] 15. When the third priority host list is empty, the host in the third priority host list is selected; the fourth priority host list is the host except the first priority host list, the second priority host list and the third priority host list.

[0122] 16. Generate a mapping relationship between the downtime disaster recovery virtual machine and the target host based on the selected target host.

[0123] 17. Based on the mapping relationship, the high availability processing strategy of the disaster recovery virtual machine configured in the cluster where the target host is located is obtained to trigger the corresponding high availability task; among them, if the high availability processing strategy of the disaster recovery virtual machine is business continuity, the online migration of the virtual machine is triggered; if the high availability processing strategy of the disaster recovery virtual machine is business interruption, the virtual machine is first safely shut down and then the power of the virtual machine is turned on; after the high availability task is successfully executed.

[0124] 18. The fault information of the disaster recovery virtual machine is deleted from the list of downtime disaster recovery virtual machines. If the high availability task fails to execute, the virtual machine will continue to be processed in the next processing cycle.

[0125] For easier understanding, please refer to Figure 4 , Figure 4 A schematic diagram of the collaboration between various modules of a high-availability method and device for a disaster-tolerant virtual machine provided by an embodiment of the present invention.

[0126] from Figure 4 It can be seen that the virtual machine cluster mainly includes a policy configuration module, a monitoring module, a scheduling module and an event processing module; this embodiment uses the high availability policy configuration module to configure the enablement, disablement, scheduling cycle and high availability processing strategy of the disaster recovery virtual machine HA (high availability) on a cluster basis.

[0127] The cache storage pool fault monitoring module periodically polls each host in the cluster to determine whether the disaster recovery function is enabled on the host. If so, it determines whether the host is associated with the cache storage pool and whether the cache storage pool is in a normal mounting state. If not, it is considered that a cache storage pool failure has occurred on the disaster recovery virtual machine running on the host, and these virtual machines are recorded in the downtime disaster recovery virtual machine list.

[0128] The virtual machine scheduling module schedules the virtual machines in the downtime disaster recovery virtual machine list and schedules the virtual machines to the appropriate hosts according to the disaster recovery virtual machine processing strategy to generate a set to be triggered for high availability.

[0129] The fault handling module triggers the corresponding high availability task for the virtual machines in the set to be triggered for high availability according to the disaster recovery virtual machine processing rules set in the cluster, and migrates the downtime disaster recovery virtual machines to the corresponding host. After the task is successfully executed, the virtual machine downtime information is deleted from the virtual machine downtime list.

[0130] The embodiment of the present invention supports users to configure the high availability switch, cycle and processing strategy of the disaster recovery virtual machine according to their needs, and can automatically identify cache storage pool failures according to the configured parameters, and intelligently dispatch the disaster recovery virtual machine to a more suitable host to run, ensuring the normal operation of the virtual machine business and disaster recovery function, greatly improving the high availability, maintainability and competitiveness of the product.

[0131] The following introduces a high-availability device for a disaster-tolerant virtual machine provided by an embodiment of the present invention. The high-availability device for a disaster-tolerant virtual machine described below and the high-availability method for a disaster-tolerant virtual machine described above can be referenced to each other.

[0132] Figure 5 A schematic structural diagram of a high-availability device for a disaster recovery virtual machine provided in an embodiment of the present invention may include:

[0133] The host list acquisition module 100 is used to obtain the host list corresponding to the disaster recovery virtual machine in the cluster;

[0134] A status determination module 200 is configured to traverse each host in the host list and determine the status of the cache storage pool corresponding to each host;

[0135] A faulty host determining module 300 is configured to determine a host in the host list as a faulty host when the cache storage pool corresponding to the host is in a faulty state; wherein the faulty state includes at least one of a state of not being associated with the host and a state of not being mounted;

[0136] The high availability module 400 is used to use the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtain a downtime disaster recovery virtual machine list, traverse each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, select a normal available host for each downtime disaster recovery virtual machine, and migrate each downtime disaster recovery virtual machine to the corresponding normal available host.

[0137] Furthermore, based on the above embodiment, the faulty host determination module 300 may include:

[0138] an association determining unit, configured to determine whether each host in the host list is associated with a cache storage pool;

[0139] a first faulty host determining unit, configured to determine that a cache storage pool fault exists on the current host if the current host is not associated with the cache storage pool;

[0140] a mount determination unit, configured to determine whether the cache storage pool is in a mounted state if the current host is associated with the cache storage pool;

[0141] The second faulty host determining unit is configured to determine that a cache storage pool fault exists on the current host if the cache storage pool is in an unmounted state.

[0142] Furthermore, based on any of the above embodiments, the high availability module 400 may include:

[0143] A priority determination unit is used to obtain normal available hosts and determine the priority of each normal available host according to the business network status, disaster recovery network status and cache storage pool status of each normal available host;

[0144] A high availability unit is used to traverse each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, and select the corresponding normal available host for each downtime disaster recovery virtual machine based on the priority of the normally available host and the fault type of each downtime disaster recovery virtual machine; wherein the fault type of the downtime disaster recovery virtual machine includes a fault type determined based on the fault of the faulty host.

[0145] Furthermore, based on the above embodiment, the priority determination unit may include:

[0146] The host list traversal subunit is used to traverse the list of normal available hosts in the cluster;

[0147] A first priority host list determination subunit is configured to select hosts whose service network, cache storage pool, and disaster recovery network are all normal from the normal available host list to form a first priority host list;

[0148] The service network judgment subunit is used to determine whether the service network of the faulty host is normal when the fault type of the downtime disaster recovery virtual machine is a cache storage pool failure;

[0149] The second priority host list subunit is used to form a second priority host list with hosts in the normal available host list whose business network is normal, whose disaster recovery network is normal, and whose cache storage pool is abnormal, or hosts in the normal business network, whose cache storage pool is normal, and whose disaster recovery network is abnormal, when the business network of the failed host is abnormal;

[0150] A third priority host list determination subunit is configured to select hosts in the normal available host list whose service network is abnormal, whose cache storage pool is normal, and whose disaster recovery network is normal as the third priority host list;

[0151] Accordingly, the high availability unit may include:

[0152] A first high-availability subunit is configured to, if, when selecting a normally available host for the currently down disaster recovery virtual machine, determine that the first priority host list is not empty, select a host in the first priority host list as the normally available host corresponding to the currently down disaster recovery virtual machine;

[0153] a host list judgment subunit, configured to, if it is determined that the first priority host list is empty when selecting a normally available host for the currently downtime disaster recovery virtual machine, determine whether the second priority host list is empty;

[0154] A second high-availability subunit is configured to select a host in the second-priority host list as the normally available host corresponding to the currently down disaster recovery virtual machine when it is determined that the second-priority host list is not empty;

[0155] The third high-availability sub-unit is configured to select a host in the third-priority host list as the normally available host corresponding to the currently down disaster recovery virtual machine when it is determined that the second-priority host list is empty.

[0156] Further, based on the above embodiment, when the third priority host list is empty, it may include:

[0157] a fourth-priority host list determination subunit, configured to determine the hosts in the normally available hosts other than the first-priority host list, the second-priority host list, and the third-priority host list as a fourth-priority host list; wherein the hosts in the fourth-priority host list do not belong to the hosts corresponding to the downtime disaster recovery virtual machines;

[0158] The fourth high-availability sub-unit is configured to select a host in the fourth-priority host list as the normally available host corresponding to the currently down disaster recovery virtual machine.

[0159] Furthermore, based on any of the above embodiments, the high availability module 400 may include:

[0160] A normally available host determining unit, configured to determine the normally available host corresponding to the currently down disaster recovery virtual machine;

[0161] a processing strategy determining unit, configured to determine a processing strategy corresponding to the normally available host;

[0162] A high-availability unit based on business continuity, configured to determine, when the processing strategy is business continuity, to migrate each downtime disaster recovery virtual machine to the normally available host in an online migration manner;

[0163] The high availability unit based on business interruption is used to determine a method of first shutting down the virtual machine and then opening the virtual machine when the processing strategy is business interruption, and migrate each downtime disaster recovery virtual machine to the corresponding normally available host.

[0164] Furthermore, based on any of the above embodiments, the disaster recovery virtual machine high availability device may further include:

[0165] A fault information deletion unit is used to confirm the successful execution of the high availability task of the current cycle after the migration is successful, and delete the fault information of the disaster recovery virtual machine from the list of downtime disaster recovery virtual machines;

[0166] The next cycle migration determination unit is used to determine whether to continue migrating the failed disaster recovery virtual machine in the next high availability cycle after the migration fails.

[0167] It should be noted that the order of the modules and units in the above-mentioned disaster recovery virtual machine high availability device can be changed without affecting the logic.

[0168] Figure 5 The description of the features in the corresponding embodiment can be found in Figure 5 The relevant descriptions of the corresponding embodiments will not be repeated here one by one.

[0169] An embodiment of the present invention provides a high-availability device for disaster recovery virtual machines, which may include: a host list acquisition module 100 for acquiring a host list corresponding to disaster recovery virtual machines in a cluster; a state determination module 200 for traversing each host in the host list and determining the state of a cache storage pool corresponding to each host; a faulty host determination module 300 for determining a host in the host list as a faulty host when the state of the cache storage pool corresponding to the host is a faulty state, wherein the faulty state includes at least one of not associated with the host and not mounted; and a high-availability module 400 for treating the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtaining a downtime disaster recovery virtual machine list, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selecting a normal available host for each downtime disaster recovery virtual machine, and migrating each downtime disaster recovery virtual machine to the corresponding normal available host. Compared with current methods that cannot achieve high availability of disaster recovery virtual machines, the present invention promptly detects cache storage pool failures, determines the faulty host, and thus promptly migrates the disaster recovery virtual machines on the faulty host to normal available hosts, ensuring the normal operation of the disaster recovery function and improving the core competitiveness of the product.

[0170] A high-availability device for disaster-tolerant virtual machines provided by an embodiment of the present invention is introduced below. The high-availability device for disaster-tolerant virtual machines described below and the high-availability method for disaster-tolerant virtual machines described above can be referenced to each other.

[0171] Figure 6 A schematic diagram of a high-availability disaster recovery virtual machine device provided by an embodiment of the present invention is shown in FIG. Figure 6 As shown, the disaster recovery virtual machine high availability device includes: a memory 60 for storing computer programs;

[0172] The processor 61 is configured to implement the steps of the method for high availability of a disaster recovery virtual machine as described in the above embodiment when executing a computer program.

[0173] The high-availability disaster recovery virtual machine device provided in this embodiment may include, but is not limited to, a smart phone, a tablet computer, a laptop computer, or a desktop computer.

[0174] The processor 61 may include one or more processing cores, such as a quad-core processor or an octa-core processor. The processor 61 may be implemented using at least one of the following hardware forms: a digital signal processing (DSP), a field-programmable gate array (FPGA), or a programmable logic array (PLA). The processor 61 may also include a main processor and a coprocessor. The main processor is a processor for processing data in the awake state, also known as a central processing unit (CPU); the coprocessor is a low-power processor for processing data in the standby state. In some embodiments, the processor 61 may be integrated with a graphics processing unit (GPU), which is responsible for rendering and drawing content required to be displayed on the display screen. In some embodiments, the processor 61 may also include an artificial intelligence (AI) processor for handling computational operations related to machine learning.

[0175] The memory 60 may include one or more computer-readable storage media, which may be non-transitory. The memory 60 may also include high-speed random access memory, and non-volatile memory, such as one or more disk storage devices, flash memory storage devices. In this embodiment, the memory 60 is at least used to store the following computer program 601, wherein, after the computer program is loaded and executed by the processor 61, it can implement the relevant steps of the disaster recovery virtual machine high availability method disclosed in any of the aforementioned embodiments. In addition, the resources stored in the memory 60 may also include an operating system 602 and data 603, etc., and the storage method may be temporary storage or permanent storage. Among them, the operating system 602 may include Windows, Unix, Linux, etc. The data 603 may include but is not limited to the data required for the high availability of the disaster recovery virtual machine, etc.

[0176] In some embodiments, the disaster recovery virtual machine high availability device may further include a display screen 62 , an input and output interface 63 , a communication interface 64 , a power supply 65 , and a communication bus 66 .

[0177] Those skilled in the art will understand that Figure 6The structure shown in the figure does not constitute a limitation on the high-availability device of the disaster recovery virtual machine, and may include more or fewer components than those shown in the figure.

[0178] It is understood that if the high-availability method for disaster-tolerant virtual machines in the above-mentioned embodiments is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the portion that contributes to the current technology, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and performs all or part of the steps of the various embodiments of the present invention. The aforementioned storage medium includes various media that can store program code, such as a USB flash drive, a mobile hard drive, a read-only memory (ROM), a random access memory (RAM), an electrically erasable programmable ROM, a register, a hard drive, a removable disk, a CD-ROM, a magnetic disk, or an optical disk.

[0179] Based on this, an embodiment of the present invention further provides a readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the above-mentioned disaster recovery virtual machine high availability method are implemented.

[0180] Based on this, an embodiment of the present invention further provides a computer program product, including a computer program / instruction, which implements the steps of the above-mentioned disaster recovery virtual machine high availability method when executed by a processor.

[0181] The above describes in detail a method for high availability of disaster-tolerant virtual machines provided by an embodiment of the present invention. The various embodiments are described in a progressive manner throughout this specification, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between the various embodiments can be referenced for reference. The device disclosed in the embodiments corresponds to the method disclosed in the embodiments, so the description is relatively brief. For relevant details, refer to the method description.

[0182] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.

[0183] The above describes in detail the method, apparatus, device, and readable storage medium for high availability of disaster-tolerant virtual machines provided by the present invention. This article uses specific examples to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only intended to help understand the method and core concept of the present invention. It should be noted that for those skilled in the art, without departing from the principles of the present invention, several improvements and modifications can be made to the present invention, and these improvements and modifications also fall within the scope of protection of the claims of the present invention.

Claims

1. A method for high availability of a disaster recovery virtual machine, characterized in that: include: Get the host list corresponding to the disaster recovery virtual machines in the cluster; Traversing each host in the host list to determine the state of the cache storage pool corresponding to each host; When the state of the cache storage pool corresponding to the host is a fault state, determining that the host in the host list is a faulty host; wherein the fault state includes at least one of a state of not being associated with the host and a state of not being mounted; The disaster recovery virtual machine running on the faulty host is used as a downtime disaster recovery virtual machine, a downtime disaster recovery virtual machine list is obtained, each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list is traversed, a normal available host is selected for each downtime disaster recovery virtual machine, and each downtime disaster recovery virtual machine is migrated to the corresponding normal available host.

2. The method for high availability of a disaster recovery virtual machine according to claim 1, characterized in that: When the state of the cache storage pool corresponding to the host is a fault state, determining that the host in the host list is a faulty host includes: Determining whether each host in the host list is associated with a cache storage pool; If the current host is not associated with the cache storage pool, it is determined that the current host has a cache storage pool failure; If the current host is associated with the cache storage pool, determine whether the cache storage pool is in a mounted state; If the cache storage pool is not mounted, it is determined that the cache storage pool of the current host is faulty.

3. The method for high availability of a disaster recovery virtual machine according to claim 1, characterized in that: The method uses the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtains a downtime disaster recovery virtual machine list, traverses each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selects a normal available host for each downtime disaster recovery virtual machine, and migrates each downtime disaster recovery virtual machine to the corresponding normal available host, including: Obtain normal available hosts, and determine the priority of each normal available host according to the business network status, disaster recovery network status, and cache storage pool status of each normal available host; Traverse each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, and select the corresponding normal available host for each downtime disaster recovery virtual machine based on the priority of the normal available host and the failure type of each downtime disaster recovery virtual machine; wherein the failure type of the downtime disaster recovery virtual machine includes a failure type determined based on the failure of the failed host.

4. The method for high availability of a disaster recovery virtual machine according to claim 3, characterized in that: The obtaining of the normally available hosts and determining the priority of each normally available host according to the service network status, disaster recovery network status and cache storage pool status of each normally available host includes: Traverse the list of normal available hosts in the cluster; Select hosts whose service network, cache storage pool and disaster recovery network are all normal from the list of normal available hosts to form a first priority host list; When the fault type of the downtime disaster recovery virtual machine is a cache storage pool fault, determine whether the service network of the faulty host is normal; When the service network of the faulty host is abnormal, the hosts in the normal available host list with normal service network, normal disaster recovery network and abnormal cache storage pool, or the hosts with normal service network, normal cache storage pool and abnormal disaster recovery network, are used to form a second priority host list; the hosts in the normal available host list with abnormal service network, normal cache storage pool and normal disaster recovery network are used as a third priority host list; Accordingly, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, and selecting a corresponding normal available host for each downtime disaster recovery virtual machine based on the priority of the normal available host and the failure type of each downtime disaster recovery virtual machine, including: If, when selecting a normally available host for the currently downtime disaster recovery virtual machine, it is determined that the first priority host list is not empty, a host in the first priority host list is selected as the normally available host corresponding to the currently downtime disaster recovery virtual machine; If, when selecting a normally available host for the currently downtime disaster recovery virtual machine, it is determined that the first priority host list is empty, then determining whether the second priority host list is empty; When it is determined that the second priority host list is not empty, selecting a host in the second priority host list as the normal available host corresponding to the current downtime disaster recovery virtual machine; When it is determined that the second priority host list is empty, a host in the third priority host list is selected as the normal available host corresponding to the current downtime disaster recovery virtual machine.

5. The method for high availability of a disaster recovery virtual machine according to claim 4, characterized in that: When the third priority host list is empty, it includes: Determine to use the hosts in the normally available hosts except the first priority host list, the second priority host list and the third priority host list as the fourth priority host list; wherein the hosts in the fourth priority host list do not belong to the hosts corresponding to the downtime disaster recovery virtual machine; A host in the fourth priority host list is selected as the normally available host corresponding to the currently downtime disaster recovery virtual machine.

6. The method for high availability of a disaster recovery virtual machine according to any one of claims 1 to 5, characterized in that: The method further comprises: using the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtaining a downtime disaster recovery virtual machine list, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selecting a normal available host for each downtime disaster recovery virtual machine, and migrating each downtime disaster recovery virtual machine to the corresponding normal available host, including: Determine the normal available host corresponding to the currently downtime disaster recovery virtual machine; Determine a processing strategy corresponding to the normally available host; When the processing strategy is business continuity, it is determined to migrate each downtime disaster recovery virtual machine to the normally available host in an online migration manner; When the processing strategy is business interruption, a method of shutting down the virtual machine first and then starting up the virtual machine is determined to migrate each downtime disaster recovery virtual machine to the corresponding normal available host.

7. The method for high availability of a disaster recovery virtual machine according to claim 1, characterized in that: After taking the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtaining a downtime disaster recovery virtual machine list, traversing each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, selecting a normal available host for each downtime disaster recovery virtual machine, and migrating each downtime disaster recovery virtual machine to the corresponding normal available host, the method further includes: When the migration is successful, the high availability task of the current cycle is confirmed to be executed successfully, and the fault information of the disaster recovery virtual machine is deleted from the list of downtime disaster recovery virtual machines; When the migration fails, determine to continue migrating the failed disaster recovery virtual machine in the next high availability cycle.

8. A high availability device for a disaster recovery virtual machine, characterized in that: include: The host list acquisition module is used to obtain the host list corresponding to the disaster recovery virtual machine in the cluster; A status determination module, used to traverse each host in the host list and determine the status of the cache storage pool corresponding to each host; A faulty host determination module, used to determine that a host in the host list is a faulty host when the state of the cache storage pool corresponding to the host is a faulty state; wherein the faulty state includes at least one of a state of not being associated with the host and a state of not being mounted; The high availability module is used to use the disaster recovery virtual machine running on the faulty host as a downtime disaster recovery virtual machine, obtain a downtime disaster recovery virtual machine list, traverse each downtime disaster recovery virtual machine in the downtime disaster recovery virtual machine list, select a normal available host for each downtime disaster recovery virtual machine, and migrate each downtime disaster recovery virtual machine to the corresponding normal available host.

9. A high-availability device for disaster-tolerant virtual machines, characterized in that: include: Memory for storing computer programs; A processor is used to execute the computer program to implement the steps of the disaster recovery virtual machine high availability method as described in any one of claims 1 to 7.

10. A readable storage medium, characterized in that: The readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the disaster recovery virtual machine high availability method according to any one of claims 1 to 7 are implemented.