WO2018120491A1 - 虚拟机快速恢复方法、装置和系统 - Google Patents
虚拟机快速恢复方法、装置和系统 Download PDFInfo
- Publication number
- WO2018120491A1 WO2018120491A1 PCT/CN2017/079912 CN2017079912W WO2018120491A1 WO 2018120491 A1 WO2018120491 A1 WO 2018120491A1 CN 2017079912 W CN2017079912 W CN 2017079912W WO 2018120491 A1 WO2018120491 A1 WO 2018120491A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- host
- backup
- read
- write request
- virtual machine
- Prior art date
Links
- 238000011084 recovery Methods 0.000 title claims abstract description 51
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000012545 processing Methods 0.000 claims description 20
- 230000003993 interaction Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 238000013508 migration Methods 0.000 description 9
- 230000005012 migration Effects 0.000 description 9
- 230000001360 synchronised effect Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 241000720945 Hosta Species 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1479—Generic software techniques for error detection or fault masking
- G06F11/1482—Generic software techniques for error detection or fault masking by means of middleware or OS functionality
- G06F11/1484—Generic software techniques for error detection or fault masking by means of middleware or OS functionality involving virtual machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2023—Failover techniques
- G06F11/2028—Failover techniques eliminating a faulty processor or activating a spare
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/202—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
- G06F11/2041—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2097—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements maintaining the standby controller/processing unit updated
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45545—Guest-host, i.e. hypervisor is an application program itself, e.g. VirtualBox
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1658—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
- G06F11/1662—Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit the resynchronized component or unit being a persistent storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/4557—Distribution of virtual machine instances; Migration and load balancing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Definitions
- the present invention relates to the field of computer virtualization technologies, and in particular, to a virtual machine fast recovery method, apparatus, and system.
- Virtualization technology has become one of the important functions of the IaaS layer (Infrastructure as a Service).
- the virtualization technology virtualizes the CPU, memory, I/O, and other devices of the physical machine through the virtual machine monitor VMM (Virtual Machine Monitor) software, and virtualizes multiple virtual machines VM (Virtual Machine) in one physical machine.
- Each VM runs a guest operating system (Guest OS, client;).
- the VMM coordinates with a host operating system (DomO or Host OS, host) to ensure that virtual machines on the same physical machine are isolated from each other, and that VMs can be migrated online from one physical machine to another without downtime.
- Physical machines including online migration based on shared storage and online migration based on local storage).
- Virtualization technology is widely used in various large data in terms of VM function and performance isolation, VM online migration based load balancing and system fault tolerance, application portability, improved resource utilization, reduced operation and maintenance difficulty and cost.
- the present invention provides a method, an apparatus, and a system for quickly recovering a virtual machine, so as to solve the problem that the virtual machine cannot be quickly recovered when the host machine where the existing virtual machine is located is down.
- the present invention provides a method for quickly recovering a virtual machine, including:
- the backup host starts the virtual machine of the first host; [0009] the virtual machine started on the backup host receives the read and write request sent by the caller, And determining whether the full data synchronization of the second host to the backup host is completed; if the full data synchronization of the second host to the backup host is not completed, the read and write request is sent to the second host;
- the second host receives the read/write request, and stores the data to be written on the second host based on the write request, or acquires the specified data based on the read request and sends the specified data to Back up the host machine;
- the backup host sends the specified data to the caller.
- the present invention further provides a virtual machine fast recovery device, including:
- a data backup unit configured to form the first host machine and the second host into a storage peer pair, so that the read/write request on the virtual machine of the first host is backed up by the second host;
- a backup machine startup unit configured to: when the first host is down or shut down, the backup host starts the virtual machine of the first host;
- the request judging unit is configured to enable the virtual machine started on the backup host to receive the read/write request sent by the caller, and determine whether to complete the full data synchronization of the second host to the backup host; Sending the read/write request to the second host when the host synchronizes the full amount of data to the backup host
- the first processing unit is configured to enable the second host to receive the read/write request, and store the data to be written on the second host based on the write request, or obtain the specified data based on the read request. And sending the specified data to the backup host;
- a data sending unit configured to enable the backup host to send the specified data to the caller.
- the present invention further provides a virtual machine fast recovery system, including a first host, a second host, and a backup host; the first host, the second host, and the third
- a virtual machine fast recovery system including a first host, a second host, and a backup host; the first host, the second host, and the third
- Each host computer is provided with a processor, and the processor performs the following steps:
- the backup host starts the virtual machine of the first host; [0021] the virtual machine started on the backup host receives the read and write request sent by the caller, And determining whether the full data synchronization of the second host to the backup host is completed; if the full data synchronization of the second host to the backup host is not completed, the read and write request is sent to the second host;
- the second host receives the read/write request, and stores the data to be written on the second host based on the write request, or acquires specified data based on the read request and sends the specified data to Back up the host machine;
- the backup host sends the specified data to the caller.
- the present invention has the following advantages: In the virtual machine fast recovery method, device and system provided by the present invention, when the first host is down or shut down, that is, the backup host is started. a host virtual machine; and after completing the full data synchronization of the second host to the backup host, forwarding the read and write request received by the backup host virtual machine to the second host having the virtual machine backup data Execution can realize fast migration and failure recovery of virtual machines without storage, without sharing storage, and improve the robustness of virtual machines, avoiding the business interruption of virtual machines due to no available storage for virtual machine access. .
- FIG. 1 is a flow chart of a method for quickly recovering a virtual machine in a first embodiment of the present invention.
- step S1 is a specific flowchart of step S1 in the virtual machine fast recovery method shown in FIG. 1.
- step S3 is a specific flowchart of step S3 in the virtual machine fast recovery method shown in FIG. 1.
- step S4 is a specific flowchart of step S4 in the virtual machine fast recovery method shown in FIG. 1.
- FIG. 5 is a schematic block diagram of a virtual machine fast recovery device in a second embodiment of the present invention.
- FIG. 6 is a schematic block diagram of a virtual machine fast recovery device in a third embodiment of the present invention.
- FIG. 7 is a schematic block diagram of a tablet computer in a third embodiment of the present invention.
- invention embodiment
- FIG. 1 shows a virtual machine fast recovery method in this embodiment.
- the virtual machine fast recovery method includes the following steps:
- S1 The first host machine and the second host are formed into a storage peer pair, so that the read/write request on the virtual machine of the first host is backed up by the second host. Accordingly, the read and write requests on the second host are also backed up on the first host.
- the virtual machine that forms the first host of the peer pair and the virtual machine of the second host are independent of each other, but the read and write requests executed on the virtual machine are backed up to each other.
- S2 When the first host is down or shut down, the backup host starts the virtual machine of the first host.
- the first host In the case where the first host is down or shut down, the first host cannot continue to provide services, and the virtual machine of the first host needs to be started on another running machine to ensure the virtuality of the first host. The services provided by the machine can be restored as soon as possible.
- the shutdown is the case where the host computer cuts off the power and shuts down the computer completely. Downtime refers to the situation where the host cannot recover from a serious system error, or the system hardware level has a problem, so that the system does not respond for a long time.
- the backup host is a normal standby machine in the cluster, and the hardware configuration of the backup host needs to be able to start all the virtual machines on the first host, thereby ensuring the virtual machine provided by the first host. The service can be restored as soon as possible.
- the virtual machine of the first host that will be started on the backup host is called the virtual machine of the backup host.
- S3 The virtual machine started on the backup host receives the read/write request sent by the caller, and determines whether to complete the full data synchronization of the second host to the backup host. If the full data synchronization of the second host to the backup host is not completed, the read and write request is sent to the second host. If the second host completes the full data backup to the backup host, the read/write request is executed on the backup host, and the read/write request is not sent to the second host, because the virtuality of the first host is The machine migration is complete and the virtual machine is stable.
- the second host completes the full data backup to the backup host, the second host forms a new storage peer pair with the backup host, so that the virtual machine of the second host and the virtual machine of the backup host Data backup can be implemented to avoid the second host and backup host down or other When a failure fails to run, the virtual machine on it cannot access the data.
- S4 if the full data synchronization of the second host to the backup host is not completed, the read/write request is sent to the second host; the second host stores the data to be written in the second sink based on the write request. On the host, or based on the read request to obtain the specified data and send the specified data to the backup host; the backup host sends the specified data to the caller. That is, if the second host does not complete the full data synchronization to the backup host, the virtual machine of the first host is not completely migrated to the backup host, and the backup host cannot read the virtual machine received on the backup host.
- the write request is processed, and the read/write request is forwarded to the second host that backs up the virtual machine data for processing, thereby realizing quick recovery of the virtual machine and avoiding service interruption on the virtual machine.
- S5 if the full data synchronization of the second host to the backup host is completed, the read/write request is performed on the backup host, and the read/write request on the virtual machine of the backup host is on the second host.
- Backup Specifically, the process of executing the read and write request on the backup host is the same as the process of executing the read and write request on the second host, that is, the data to be written is stored on the backup host based on the write request, or is obtained based on the read request. Specify data.
- the backup host starts the virtual machine and receives the read and write request, and the read and write requests are directly dropped into the local disk of the backup host, and the read and write requests are no longer read or written.
- the request jumps to the second host to execute, but the read and write requests on the virtual machine on the backup host are backed up to the second host, and the backup process is the same as step S1.
- S6 The backup host sends the specified data to the caller. It can be understood that if the full data synchronization of the second host to the backup host is completed, the read/write request is executed on the backup host, and the specified data corresponding to the read request is obtained and sent to the caller. Alternatively, if the full data synchronization of the second host to the backup host is not completed, the read/write request is sent to the second host, and the read/write request is performed on the second host, and the specified data corresponding to the read request is acquired and sent. To the caller.
- the virtual machine fast recovery method when the first host is down, shut down, or other services cannot be continued, the virtual machine of the first host may be started on the backup host; After the full data synchronization of the second host to the backup host is not completed, the read and write requests received by the virtual machine of the backup host are forwarded to the second host having the virtual machine backup data, and the virtual machine can be implemented. Fast migration and failure recovery without storage, no need to share storage, and improve virtual machine robustness
- the virtual machine fast recovery method includes the following steps:
- step S1 The first host A and the second host B form a storage peer pair, and the read/write request on the virtual machine of the first host A is backed up on the second host B.
- the read and write requests on the virtual machine of the second host B are also backed up on the first host A; and the virtual machines on the first host A and the virtual machines on the second host B are independent of each other, but The virtual machine data is backed up to each other to prevent the first host A and the second host B from being down due to other failures, and the virtual machine cannot be quickly recovered, resulting in service interruption.
- step S1 specifically includes the following steps:
- S11 The guest operating system (GuestOS) of the first host A receives the read and write request, and puts the read and write request into the ring buffer (ring).
- the guest operating system (GuestOS) is the operating system running on the virtual machine of the first host A.
- a ring buffer is a data structure used in a communication program to store data transmitted and received in a communication, and provides a mutually exclusive access to the buffer to the communication program.
- S12 The Qemu module of the first host A acquires a read/write request from a ring buffer.
- the Qemu module is set on the host operating system (Host OS) of the first host, and the read and write requests are unprocessed read and write requests.
- Host OS host operating system
- Qemu is a stand-alone software that simulates machines with high flexibility and portability.
- Qemu converts specific processor-written binary code to another through a special "recompiler", such as running MIPS code on PPCmac or ARM code on an X86 PC.
- the 10 paths in the Qemu module are roughly divided into three layers: the virtio backend), the general block device layer (b), and the driver layer (c), which are inserted through the interface part of the virtio backend (a) and the generic block device layer (b).
- the code is implemented to pass the read and write request to the second host B landing backup.
- S13 The Qemu module of the first host A acquires the specified data from the local disk of the first host A based on the read request; or the Qemu module of the first host A stores the data to be written based on the write request. On the local disk of the first host A.
- S14 The Qemu module of the first host A sends a write request to the Sync Orig module of the host operating system.
- the Sync Orig module is set on the host operating system (Host OS) of the first host A, and is the read/write request forwarding module of the first host A.
- S15 The Sync Orig module of the host operating system sends a write request to the Sync Term of the second host B. Module.
- the Sync Orig module of the first host A and the Sync Term module of the second host B are connected through a network.
- S16 The Sync Term module of the second host receives the write request, and stores the data to be written corresponding to the write request on the local disk of the second host to implement writing on the virtual machine of the first host A.
- the request is backed up on the second host B.
- the Sync Term module is set on the host operating system (Host OS) of the second host B, and is the read/write request receiving module of the second host B.
- first host A and the second host B form a pseudo code for storing the peer pair as follows:
- Host B config file [0054]
- the peer Peer1D is reported to the cloud to the server, and the server registers the two hosts with the same PeerlD as a storage peer pair.
- Peer peer new Peer(hostA, hostB);
- the pseudo code for backing up the read/write request on the virtual machine of the first host A on the second host B includes: after the Qemu module of the first host A receives the write request, The data to be written corresponding to the request is stored on the local disk of the first host A, and the data to be written corresponding to the write request is stored in the shared memory of the host operating system (HostOS) of the first host A. Then, a sequence number is generated for the write request, and the sector start number and the number of sectors that need to be modified by the write request are filled into the reque st and handed over to the Sync Orig module of the host operating system (Host OS) for processing.
- Host operating system (Host OS) Host operating system
- the OS receives the request, and forms the TCP data packet in the request and the shared memory to be sent to the host operating system (HostOS) of the second host B.
- the host operating system (HostOS) of the second host B writes the data to be written in the data packet into the sector specified by the request, thereby implementing the write request of the virtual machine of the host operating system (Host OS) in the host operating system (Host OS_B
- S2 When the first host A is down, the backup host C starts the virtual machine of the first host A.
- the virtual machine of the first host A needs to be started on another running machine to ensure the virtual machine of the first host A.
- the services provided can be restored as soon as possible. Since the second host B has already carried a certain number of virtual machines, if the virtual machine of the first host A is migrated to the second host B for recovery, it can be immediately acquired on the local disk of the second host B.
- the virtual machine data of the first host A is backed up, but the virtual machine access load of the second host B is too high, which affects the ability of the second host B to provide external services.
- the backup host C is a normal standby machine in the cluster, and the hardware configuration of the backup host C needs to meet the requirements of being able to start all the virtual machines on the first host A, thereby ensuring the first host A.
- the services provided by the virtual machine can be restored as soon as possible.
- the virtual machine of the first host A that is started on the backup host C is hereinafter referred to as the virtual machine of the backup host C.
- step S3 The virtual machine started on the backup host C receives the read/write request sent by the caller, and determines whether to complete the full data synchronization of the second host B to the backup host C. Specifically, the backup host C determines whether the synchronization completion notification sent by the second host is provided, and if the synchronization completion notification is received, it is determined that the full data synchronization of the second host B to the backup host C is completed; , the full data synchronization of the second host B to the backup host C is not completed. As shown in FIG. 3, step S3 specifically includes:
- S31 The second host B determines whether the current running indicator reaches a preset condition. That is, after the virtual machine of the first host A is started on the backup host C, the second host B will detect the current running indicators such as the current network throughput and disk access, and the current running indicators are up to the preset. After the condition, step S32 is performed.
- S32 If yes, synchronize the read and write requests on the virtual machine of the first host A backed up on the second host B to the backup host C, that is, synchronize the virtual machine data of the second host B to Back up the host C.
- S33 Determine whether there is unsynchronized data on the second host B.
- the second host B also determines in real time whether there is unsynchronized data to determine whether to complete the full data synchronization of the second host B to the backup host C.
- S35 If not, the full amount of data synchronization of the second host B to the backup host C has been completed. The host c sends a synchronization completed notification.
- step S3 the guest operating system (GuestOS) of the backup host C receives the read/write request, and puts the read/write request into a ring buffer.
- the guest operating system (GuestOS) of the backup host C receives the read/write request, and puts the read/write request into a ring buffer.
- step S4 if the full data synchronization of the second host B to the backup host C is not completed, the read/write request is sent to the second host B; the second host B stores the data to be written based on the write request. On the second host B, or obtain the specified data based on the read request and send the specified data to the backup host C; the backup host C sends the specified data to the caller.
- step S4 specifically includes:
- S41 The Qemu module of the backup host C acquires a read/write request from a ring buffer.
- S42 The backup host C's Qemu module sends a read/write request to the Sync Orig module on the host operating system.
- S43 The Sync Orig module sends the read/write request to the Sync Term module of the second host B.
- S44 The Sync Term module of the second host B receives the read/write request, and stores the data to be written on the local disk of the second host B based on the write request.
- S45 The Sync Term module of the second host B obtains the specified data from the local disk of the second host B based on the read request, and sends the specified data to the Sync Orig module of the backup host C.
- S46 The Sync Orig module of the backup host receives the specified data, and sends the specified data to the Qemu module of the backup sink host C.
- S47 The Qemu module of the backup host C sends the designated data to the client operating system (GuestOS) of the backup host C, and then sends the data to the caller.
- GuestOS client operating system
- the remotelO flag is set to Tr us in its configuration file.
- the Sync Term module of the second host B After receiving the write request of the Sync Orig module of the backup host C, the Sync Term module of the second host B places the write data on the local disk of the backup host C. [0081] After receiving the read request of the Sync Orig module of the backup host C, the Sync Term module of the second host B sends the designated data to the designated sector, and then sends back the Sync Orig module of the backup host C through the TCP.
- the Sync Orig module of the backup host C After receiving the specified data fed back by the B machine, the Sync Orig module of the backup host C writes the feedback designated data into the shared memory, and notifies the Qemu module of the backup host C through the TCP message.
- the Qemu module of the backup host C receives the TCP message notification of the Sync Orig module of the backup host C.
- the data synchronization of the second host B to the backup host C is started.
- the pseudo code of the full data synchronization process of starting the second host B to the backup host C is as follows:
- the Sync Term module of the second host B sends the written sector to the Sync of the backup host C one by one by analyzing the sector write of the qcow2 file of the local disk.
- the backup Sync Orig module of the backup host C After the backup Sync Orig module of the backup host C receives the synchronous sector data from the second host B's Sync Term module, it writes the data content to the qcow2 file of the local disk.
- the backup host C resumes the read and write requests of the virtual machine on the local disk of the backup host C, and is no longer forwarded to the second host.
- the pseudo code executed on B is as follows:
- FIG. 5 shows a virtual machine quick recovery device in this embodiment.
- the virtual machine fast recovery device includes a data backup unit 10, a backup machine startup unit 20, a request determination unit 30, a first processing unit 40, and a second processing unit 50.
- the data backup unit 10 is configured to form the first host machine and the second host into a storage peer pair, so that the read/write request on the virtual machine of the first sink host is backed up by the second host. Accordingly, the read and write requests on the second host are also backed up on the first host.
- the virtual machine of the first host that stores the peer pair and the virtual machine of the second host are independent of each other, but the read and write requests executed on the virtual machine are backed up to each other.
- the backup machine startup unit 20 is configured to: after the first host is down or down, the backup host starts the virtual machine of the first host.
- the first host cannot continue to provide services, and the virtual machine of the first host needs to be started on another running machine to ensure the virtuality of the first host.
- the services provided by the machine can be restored as soon as possible.
- the shutdown is the case where the host computer is powered off and the computer is completely shut down. Downtime refers to a situation where the host cannot recover from a serious system error, or a problem occurs at the hardware level of the system, so that the system does not respond for a long time.
- the backup host is a normal standby machine in the cluster, and the hardware configuration of the backup host needs to be able to start all the virtual machines on the first host, thereby ensuring the virtual machine provided by the first host. The service can be restored as soon as possible.
- the virtual machine of the first host that will be started on the backup host is called the virtual machine of the backup host.
- the request judging unit 30 is configured to enable the virtual machine started on the backup host to receive the read/write request sent by the caller, and determine whether to complete the full data synchronization of the second host to the backup host. If the full data synchronization of the second host to the backup host is not completed, the read and write request is sent to the second host. If the second host completes the full data backup to the backup host, the read and write request is executed on the backup host, and the read/write request is not sent to the second host, because the virtual operation of the first host is The machine migration is complete and the virtual machine is stable.
- the second host completes the full data backup to the backup host, the second host forms a new storage peer pair with the backup host, so that the virtual machine of the second host and the virtual machine of the backup host Data backup can be implemented to prevent the second host and backup host from being down or other failures to run, and the virtual machines on it cannot access the data.
- the first processing unit 40 is configured to send a read/write request to the second host after completing the full data synchronization of the second host to the backup host; the second host will be to be written based on the write request.
- Data is stored in the first On the second host, or obtain the specified data based on the read request and send the specified data to the backup host; the backup host sends the specified data to the caller. That is, if the second host does not complete the full data synchronization to the backup host, the virtual machine of the first host is not completely migrated to the backup host, and the backup host cannot read the virtual machine received on the backup host.
- the write request is processed, and the read/write request is forwarded to the second host that backs up the virtual machine data for processing, thereby realizing quick recovery of the virtual machine and avoiding service interruption on the virtual machine.
- the second processing unit 50 is configured to perform a read/write request on the backup host and complete read and write on the backup host virtual machine when the full data synchronization of the second host to the backup host has been completed.
- Request a backup on the second host.
- the process of executing the read and write request on the backup host is the same as the process of executing the read and write request on the second host, that is, the data to be written is stored on the backup host based on the write request, or is obtained based on the read request. Specify data.
- the backup host starts the virtual machine and receives the read/write request
- the read and write requests are directly dropped into the local disk of the backup host, and the read and write requests are no longer read or written.
- the request jumps to the second host to execute, but the read and write requests on the virtual machine on the backup host are backed up to the second host, and the backup process is the same as the data backup process of the data backup unit 10.
- the data sending unit 60 is configured to enable the backup host to send the designated data to the caller. It can be understood that if the full data synchronization of the second host to the backup host has been completed, a read and write request is executed on the backup host, and the specified data corresponding to the read request is obtained and sent to the caller. Alternatively, if the full data synchronization of the second host to the backup host is not completed, the read/write request is sent to the second host, and the read/write request is performed on the second host, and the specified data corresponding to the read request is acquired and sent. To the caller.
- the virtual machine fast recovery device when the first host is down, shut down, or other services that cannot continue to provide services, the virtual machine of the first host may be started on the backup host; After the full data synchronization of the second host to the backup host is not completed, the read and write requests received by the virtual machine of the backup host are forwarded to the second host having the virtual machine backup data, and the virtual machine can be implemented. Fast migration and failure recovery without storage, no need to share storage, and improve virtual machine robustness
- the virtual machine fast recovery device includes:
- the data backup unit 10 is configured to form the first host A and the second host B into a storage pair, and back up the read and write requests on the virtual machine of the first host A on the second host B. .
- the read and write requests on the virtual machine of the second host B are also backed up on the first host A; and the virtual machines on the first host A and the virtual machines on the second host B are independent of each other, but The virtual machine data is backed up to each other to prevent the first host A and the second host B from being down due to other failures, and the virtual machine cannot be quickly recovered, resulting in service interruption.
- the data backup unit 10 includes:
- the guest operating system (GuestOS) of the first host A is configured to receive read and write requests, and put the read and write requests into a ring buffer.
- the guest operating system (GuestOS) is the operating system running on the virtual machine of the first host A.
- a ring buffer is a data structure used in a communication program to store data sent and received during communication. It provides a mutually exclusive access to the buffer to the communication program.
- the Qemu module of the first host A is used to acquire a read and write request from a ring buffer.
- the Qemu module is set on the host operating system (Host OS) of the first host, and the read and write requests are unprocessed read and write requests.
- Het OS host operating system
- Qemu is a stand-alone software that simulates machines with high flexibility and portability.
- Qemu converts binary code for a particular processor to another through a special "recompiler", such as running MIPS code on PPCmac or ARM code on an X86 PC.
- the 10 paths in the Qemu module are roughly divided into three layers: the virtio backend (a), the generic block device layer (b), and the driver layer (c), through the interface portion of the wrtio backend (a) and the generic block device layer (b). Insert part of the code to pass the read and write request to the second host B landing backup.
- the Qemu module of the first host A is configured to acquire the specified data from the local disk of the first host A based on the read request; or the Qemu module of the first host A is to write the data based on the write request. Stored on the local disk of the first host A.
- the Qemu module of the first host A is used to send a write request to the Sync Orig module of the host operating system.
- the Sync Orig module is set on the host operating system (Host OS) of the first host A, and is the read/write request forwarding module of the first host A.
- a Sync Orig module of the host operating system configured to send a write request to the Sync Term module of the second host B.
- the first host A's Sync Orig module and the second host B's Sync Term module pass through the network. Connected to each other.
- the Sync Term module of the second host is configured to receive a write request, and store the data to be written corresponding to the write request on a local disk of the second host to implement the virtual machine on the first host A.
- the write request is backed up on the second host B.
- the Sync Term module is set on the host operating system (Host OS) of the second host B, and is the read/write request receiving module of the second host B.
- first host A and the second host B form a pseudo code for storing the peer pair as follows:
- Host B config file [0118]
- the Peer1D is reported to the cloud to the server, and the server registers the two hosts with the same PeerlD as a storage Peer pair.
- Peer peer new Peer(hostA, hostB);
- the pseudo code for backing up the read/write request on the virtual machine of the first host A on the second host B includes: After the Qemu module of the first host A receives the write request, The data to be written corresponding to the request is stored on the local disk of the first host A, and the data to be written corresponding to the write request is stored in the shared memory of the host operating system (HostOS) of the first host A. Then, a sequence number is generated for the write request, and the sector start number and the number of sectors to be modified by the write request are filled into the reque st, and the Sync is given to the host operating system (Host OS).
- HostOS host operating system
- the Orig module processes it.
- the host operating system (Host OS) receives the request, and forms a TCP packet into the request and the data to be written in the shared memory, and sends it to the host operating system (HostOS) of the second host B.
- the host operating system (HostOS) of the second host B writes the data to be written in the data packet into the sector specified by the request, thereby implementing the write request of the virtual machine of the host operating system (Host OS) in the host operating system ( Host OS_B) Backup.
- the backup machine starting unit 20 is configured to: when the first host A is down, the backup host C starts the virtual machine of the first host A.
- the virtual machine of the first host A is started on another normal running machine to ensure that the service provided by the virtual machine of the first host A can be restored as soon as possible. Since the second host B has already carried a certain number of virtual machines, if the virtual machine of the first host A is migrated to the second host B for recovery, it can be immediately acquired on the local disk of the second host B.
- the virtual machine data of the first host A is backed up, but the virtual machine access load of the second host B is too high, which affects the ability of the second host B to provide external services.
- the backup host C is a normal standby machine in the cluster, and the hardware configuration of the backup host C needs to meet the requirements of being able to start all the virtual machines on the first host A, thereby ensuring the first host A.
- the services provided by the virtual machine can be restored as soon as possible.
- the virtual machine of the first host A that is started on the backup host C is hereinafter referred to as the virtual machine of the backup host C.
- the request judging unit 30 is configured to enable the virtual machine started on the backup host C to receive the read/write request sent by the caller, and determine whether to complete the full data synchronization of the second host B to the backup host C. Specifically, the backup host C determines whether the synchronization completion notification sent by the second host is provided, and if the synchronization completion notification is received, it is determined that the full data synchronization of the second host B to the backup host C is completed; , the full data synchronization of the second host B to the backup host C is not completed. As shown in FIG. 5, the request judging unit 30 includes a first judging subunit 31, a first synchronizing subunit 32, a second judging subunit 33, a first determining subunit 34, and a second determining subunit 35.
- the first determining sub-unit 31 is configured to enable the second host B to determine whether the current running indicator reaches a preset condition. That is, after the virtual machine of the first host A is started on the backup host C, the second host B will detect the current running indicators such as the current network throughput and disk access, and the current running indicators are up to the preset. After the condition, step S32 is performed.
- the first synchronization sub-unit 32 is configured to synchronize the read/write request on the virtual machine of the first host A backed up on the second host B to the backup host C after the preset condition is reached, that is, The virtual machine data of the second host B is synchronized to the backup host C.
- the second determining subunit 33 is configured to determine whether there is unsynchronized data on the second host B.
- the second host B also determines in real time whether there is unsynchronized data to determine whether to complete the full amount of data synchronization on the second host B to the backup host C.
- the first determining sub-unit 34 is configured to: when there is unsynchronized data, determine that the full amount of data synchronization of the second host B to the backup host C is not completed, and send the unsynchronized data to the backup host C for backup.
- the second determining sub-unit 35 is configured to determine that the full amount of data synchronization of the second host B to the backup host C has been completed in the absence of the unsynchronized data, and send a synchronization completed notification to the backup host C.
- the guest operating system (GuestOS) of the backup host C receives the read/write request, and puts the read/write request into a ring buffer.
- the first processing unit 40 is configured to send a read/write request to the second host B after completing the full data synchronization of the second host B to the backup host C; the second host B is based on the write request.
- the data to be written is stored on the second host B, or the specified data is acquired based on the read request and the designated data is sent to the backup host C; the backup host C sends the specified data to the caller.
- the first processing unit 40 specifically includes:
- backup host C's Qemu module used to obtain read and write requests from the ring buffer
- the Qemu module is used to send read and write requests to the Sync Orig module on the host operating system.
- a Sync Orig module on the host operating system configured to send a read/write request to the Sync Term module of the second host B.
- the Sync Term module of the second host B is configured to receive a read/write request, and store the data to be written on the local disk of the second host B based on the write request.
- the Sync Term module of the second host B is configured to acquire the specified data from the local disk of the second host B based on the read request, and send the specified data to the Sync Ong module of the backup host C.
- the backup host's Sync Orig module is configured to receive the specified data and send the specified data to the Qemu module of the backup sink host C.
- the Qemu module of the backup host C is used to send the specified data to the guest operating system (GuestOS) of the backup host C, and then sent to the caller.
- GuestOS guest operating system
- the remotelO flag is set to Tr in its configuration file.
- the Sync Term module of the second host B drops the write data on the local disk of the backup host C.
- the Sync Orig module of the backup host C After receiving the specified data fed back by the B machine, the Sync Orig module of the backup host C writes the feedback designated data into the shared memory, and notifies the Qemu module of the backup host C through the TCP message.
- the Qemu module of the backup host C receives the TCP message notification of the Sync Orig module of the backup host C.
- the data synchronization of the second host B to the backup host C is started.
- the pseudo code of the full data synchronization process of starting the second host B to the backup host C is as follows:
- the Sync Term module of the second host B sends the written sectors to the Sync Orig module of the backup host C one by one by analyzing the sector write of the qcow2 file of the local disk.
- the backup Sync Orig module of the backup host C receives the synchronous sector data from the second host B's Sync Term module, it writes the data content to the qcow2 file of the local disk.
- the backup host C resumes the read and write requests of the virtual machine on the local disk of the backup host C, and is no longer forwarded to the second host.
- the pseudo code executed on the second host B is as follows:
- the virtual machine rapid recovery system includes a server 4, a first host 1, a second host 2, and a backup host 3 communicatively connected to the server 4.
- the first host 1, the second host 2, and the backup host 3 may each be a mobile phone, a tablet, a personal digital assistant (PDA), a desktop computer, a server, and the like.
- PDA personal digital assistant
- each tablet computer 700 includes a radio frequency (RF) circuit 701, a memory 702, an input module 703, a display module 704, a processor 70 5, an audio circuit 706, and a WiFi. (WirelessFidelity) module 707 and power supply 708.
- RF radio frequency
- the input module 703 connected to the processor 705 serves as a user interaction device for the tablet 700 for implementing interaction between the user and the tablet 700.
- the input module 703 of the first host machine 1 receives the first backup storage instruction input by the user, and sends the first backup storage instruction to the corresponding processor 705.
- the first backup storage instruction includes a peer pair ID.
- the input module of the second host 2 receives the second backup storage instruction input by the user, and sends the second backup storage instruction to the corresponding processor 705, where the second backup storage instruction includes the peer pair ID.
- the first backup storage instruction and the second backup storage instruction include the same peer pair ID, so that the first host 1 and the second host 2 are formed into a storage peer pair based on the first backup storage instruction and the second backup storage instruction.
- the input module 703 of the backup host machine 3 receives the virtual machine startup instruction input by the user, and sends the virtual machine startup instruction to the processor 705, where the virtual machine startup instruction includes the same peer pair ID as the second backup storage instruction.
- the virtual machine of the first host machine 1 is started on the backup host machine 3.
- the input module 703 can be configured to receive numeric or character information input by a user, and to generate signal inputs related to user settings and function control of the tablet 700.
- the input module 703 can include a touch panel 7031.
- the touch panel 7031 also referred to as a touch screen, can collect touch operations on or near the user (such as the operation of the user using a finger, a stylus, or the like on any suitable object or accessory on the touch panel 7031), and according to the preset The programmed program drives the corresponding connection device.
- the touch panel 7031 may include two parts: a touch detection device and a touch controller.
- the touch detection device detects the touch orientation of the user, and detects a signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts the touch information into contact coordinates, and sends the touch information
- the processor 705 is provided and can receive commands from the processor 705 and execute them.
- resistive, capacitive, infrared, and surface can be used.
- the touch panel 7031 is implemented in various types such as sound waves.
- the input module 703 may further include other input devices 7032.
- the other input devices 7032 may include, but are not limited to, a physical keyboard, function keys (such as a volume control button, a switch button, etc.), a trackball, a mouse, a joystick, and the like. One or more of them.
- the display module 704 can be used to display information entered by the user or information provided to the user and various menu interfaces of the tablet 700.
- the display module 704 can include a display panel 7041.
- the display panel 7041 can be configured in the form of an LCD or an Organic Light-Emitting Diode OLED.
- the touch panel 7031 can cover the display panel 7041 to form a touch display screen.
- the touch display screen detects a touch operation on or near it, it is transmitted to the processor 705 to determine the type of the touch event.
- the processor 705 then provides a corresponding visual output on the touch display based on the type of touch event.
- the touch display screen includes an application interface display area and a common control display area.
- the arrangement manner of the application interface display area and the display area of the common control is not limited, and the arrangement of the two display areas can be distinguished by being arranged up and down, left and right, and the like.
- the application interface display area can be used to display the interface of the application.
- Each interface can contain interface elements such as at least one application's icon and/or widget desktop control.
- the application interface display area can also be an empty interface that does not contain any content.
- This common control display area is used to display controls with high usage, such as setting buttons, interface numbers, scroll bars, phone book icons, and other application icons.
- the WiFi module 707 serves as a network interface of the tablet 700, and can implement data interaction between the tablet 700 and other devices.
- the network interface is connected to the remote storage device (ie, the caller) through network communication.
- the WiFi module 707 in the backup host 3 can receive a read/write request from the remote storage device (ie, the caller), and after processing by the processor 705, obtain the specified data corresponding to the write request, and specify The data is sent to the caller via the WiFi module 707.
- the network interface with the WiFi network can be a cloud server or other database.
- the memory 702 includes a first memory 7021 and a second memory 7022.
- first memory 7021 can be a non-transitory computer readable storage medium having stored thereon an operating system, a database, and computer executable instructions.
- the computer executable instructions are executable by the processor 705 for implementing the virtual machine fast recovery method of the first embodiment as shown in FIG.
- the database stored on the memory 702 is used to store various types of data, for example, various data involved in the above-described virtual machine fast recovery method, such as specified data corresponding to a read request, data to be written corresponding to a write request, and the like. Wait.
- the second memory 7021 can be an internal memory of the tablet 700 that provides a cached operating environment for operating systems, databases, and computer executable instructions in a non-transitory computer readable storage medium.
- the processor 705 is a control center of the tablet computer 700, and connects various parts of the entire mobile phone by using various interfaces and lines, and can execute and collect by executing or executing a computer stored in the first memory 7021. / or data in the database, perform various functions and processing data of the tablet 700, thereby performing overall monitoring of the tablet 700.
- processor 705 can include one or more processing modules
- the processor 705 by executing the storage of the computer executable instructions and/or the data in the database in the first memory 7021, the processor 705 is configured to perform the following steps: the first host and the second host Forming a storage peer pair, causing the read/write request on the virtual machine of the first host to be backed up on the second host; when the first host is down or down, the backup host starts the first a host virtual machine; the virtual machine started on the backup host receives the read and write request sent by the caller, and determines whether to complete the full data synchronization of the second host to the backup host; if the second host to backup is not completed The full amount of data synchronization of the host sends the read and write request to the second host; the second host receives the read and write request, and stores the data to be written based on the write request. On the second host, or acquiring the specified data based on the read request and transmitting the specified data to the backup host; the backup host sends the specified data to the caller.
- the processor 705 further performs the following steps: if the full data synchronization of the second host to the backup host has been completed, the read and write request is executed on the backup host, and the backup host is The read and write requests on the virtual machine are backed up at the second host.
- the processor 705 further performs the following steps: the backup operating system of the backup host machine Describe the read and write request, and put the read and write request into the ring buffer;
- the Qemu module of the backup host obtains the read/write request from the ring buffer, and sends the read/write request to a Sync Orig module on the host operating system; the Sync Orig module The read and write request is sent to the second host;
- the Sync Term module of the second host receives the read/write request; stores the data to be written on the local disk of the second host based on the write request; or from the second based on the read request Obtaining the specified data on the local disk of the host, and sending the specified data to the Sync of the backup host
- the Sync Orig module of the backup host receives the specified data and sends the specified data to the Qemu module of the backup host;
- the Qemu module of the backup host sends the specified data to the client operating system of the backup host.
- the data of the virtual machine of the first host is backed up on the second host, and includes:
- the guest operating system of the first host receives a read/write request, and places the read/write request into a ring buffer;
- the Qemu module of the first host acquires the read/write request from the link buffer; the Qemu module acquires specified data from a local disk of the first host based on a read request; The Qem u module stores the data to be written on the local disk of the first host based on the write request; and sends the write request to the Sync Orig module of the host operating system;
- the Sync Orig module of the host operating system sends the write request to the Sync Term module of the second host;
- the Sync Term module of the second host receives the write request, and stores the to-be-written data corresponding to the write request on a local disk of the second host.
- the processor 705 further performs the following steps: the second host determines whether the current running indicator reaches a preset condition;
- the virtual machine fast recovery system when the first host is down or shut down, the virtual machine of the first host is started on the backup host; and the second host is not completed.
- the full amount of data is synchronized to the backup host, the read and write requests received by the virtual machine of the backup host are forwarded to the second host having the virtual machine backup data, which enables rapid migration and failure of the virtual machine without storage.
- Recovery does not require shared storage, and improves the robustness of the virtual machine, avoiding the interruption of business on the virtual machine due to the lack of available storage for virtual machine access.
- modules and algorithm steps of the various examples described in connection with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the solution. A person skilled in the art can use different methods for implementing the described functions for each particular application, but such implementation should not be considered to be beyond the scope of the present invention.
- the disclosed apparatus and method may be implemented in other manners.
- the device embodiments described above are merely illustrative.
- the division of the modules is only a logical function division, and the actual implementation may have another division manner, for example, multiple modules or components may be combined or Can be integrated into another system, or some features can be ignored, or not executed.
- the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or module, and may be electrical, mechanical or otherwise.
- the modules described as separate components may or may not be physically separated, and the components displayed as modules may or may not be physical modules, that is, may be located in one place, or may be distributed to multiple networks. On the module. Some or all of the modules can be selected according to actual needs. The purpose of the solution of the embodiment is achieved.
- each functional module in each embodiment of the present invention may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.
- the functions, if implemented in the form of software functional modules and sold or used as separate products, may be stored in a computer readable storage medium.
- the technical solution of the present invention which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including
- the instructions are used to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
- the foregoing storage medium includes: a medium that can store program codes, such as a USB flash drive, a removable hard disk, a ROM, a RAM, a magnetic disk, or an optical disk.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Hardware Redundancy (AREA)
- Retry When Errors Occur (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
Claims
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018519449A JP6735820B2 (ja) | 2016-12-28 | 2017-04-10 | 仮想マシンの高速復旧方法 |
SG11201803894WA SG11201803894WA (en) | 2016-12-28 | 2017-04-10 | Quick recovery method, device and system of a virtual machine |
AU2017341159A AU2017341159B2 (en) | 2016-12-28 | 2017-04-10 | Quick recovery method, device and system of a virtual machine |
EP17857672.4A EP3564815A4 (en) | 2016-12-28 | 2017-04-10 | FAST RECOVERY METHOD, DEVICE AND SYSTEM FOR VIRTUAL MACHINE |
KR1020187015545A KR102067918B1 (ko) | 2016-12-28 | 2017-04-10 | 가상 머신의 신속한 복원 방법, 장치 및 시스템 |
US15/772,798 US10740197B2 (en) | 2016-12-28 | 2017-04-10 | Quick recovery method, device and system of a virtual machine |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611240016.5 | 2016-12-28 | ||
CN201611240016.5A CN106708603B (zh) | 2016-12-28 | 2016-12-28 | 虚拟机快速恢复方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018120491A1 true WO2018120491A1 (zh) | 2018-07-05 |
Family
ID=58903718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2017/079912 WO2018120491A1 (zh) | 2016-12-28 | 2017-04-10 | 虚拟机快速恢复方法、装置和系统 |
Country Status (8)
Country | Link |
---|---|
US (1) | US10740197B2 (zh) |
EP (1) | EP3564815A4 (zh) |
JP (1) | JP6735820B2 (zh) |
KR (1) | KR102067918B1 (zh) |
CN (1) | CN106708603B (zh) |
AU (1) | AU2017341159B2 (zh) |
SG (1) | SG11201803894WA (zh) |
WO (1) | WO2018120491A1 (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107168774B (zh) * | 2017-06-14 | 2020-11-10 | 北京云联万维技术有限公司 | 一种基于本地存储的虚拟机迁移方法及系统 |
JP7006461B2 (ja) * | 2018-04-02 | 2022-01-24 | 株式会社デンソー | 電子制御装置および電子制御システム |
CN109298977A (zh) * | 2018-10-19 | 2019-02-01 | 深信服科技股份有限公司 | 一种虚拟机业务快速恢复方法、系统、装置及存储介质 |
CN111240889A (zh) * | 2018-11-29 | 2020-06-05 | 阿里巴巴集团控股有限公司 | 数据备份系统和方法以及电子设备 |
CN111090491B (zh) * | 2019-07-03 | 2023-10-10 | 杭州海康威视系统技术有限公司 | 虚拟机任务状态的恢复方法、装置及电子设备 |
CN111221561B (zh) * | 2020-01-14 | 2024-05-31 | 平安科技(深圳)有限公司 | 流表更新方法、装置、系统、计算机设备及存储介质 |
US11509487B2 (en) * | 2020-03-16 | 2022-11-22 | Kaseya Limited | System for rollout of certificates to client and server independent of public key infrastructure |
CN113900716B (zh) * | 2021-09-29 | 2023-05-30 | 武汉噢易云计算股份有限公司 | 桌面启动的管理方法及装置 |
CN113918284B (zh) * | 2021-10-13 | 2022-08-02 | 江苏安超云软件有限公司 | 云主机批量迁移的方法及装置、电子设备和存储介质 |
CN114760242B (zh) * | 2022-03-30 | 2024-04-09 | 深信服科技股份有限公司 | 虚拟路由器的迁移方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559108A (zh) * | 2013-11-11 | 2014-02-05 | 中国科学院信息工程研究所 | 一种基于虚拟化实现主备故障自动恢复的方法及系统 |
CN103838593A (zh) * | 2012-11-22 | 2014-06-04 | 华为技术有限公司 | 恢复虚拟机的方法、系统及控制器、服务器、寄宿主机 |
CN104331318A (zh) * | 2014-10-27 | 2015-02-04 | 上海斐讯数据通信技术有限公司 | 一种嵌入式双系统及其工作方法 |
CN105159798A (zh) * | 2015-08-28 | 2015-12-16 | 浪潮集团有限公司 | 一种虚拟机的双机热备方法、双机热备管理服务器和系统 |
US20160110127A1 (en) * | 2014-10-17 | 2016-04-21 | Emc Corporation | Enabling non-volatile random access to data |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7653794B2 (en) * | 2006-05-08 | 2010-01-26 | Microsoft Corporation | Converting physical machines to virtual machines |
KR101007279B1 (ko) * | 2007-12-17 | 2011-01-13 | 한국전자통신연구원 | 가상 머신 디스크 풀을 이용한 가상 머신 프로비저닝 방법 및 시스템 |
US8893147B2 (en) * | 2012-01-13 | 2014-11-18 | Ca, Inc. | Providing a virtualized replication and high availability environment including a replication and high availability engine |
KR20140140719A (ko) * | 2013-05-30 | 2014-12-10 | 삼성에스디에스 주식회사 | 가상 머신 동기화 장치 및 시스템과 이를 이용한 장애 처리 방법 |
US9529617B2 (en) * | 2014-03-21 | 2016-12-27 | Ca, Inc. | Instant virtual machines |
KR102174692B1 (ko) * | 2014-03-26 | 2020-11-05 | 에스케이텔레콤 주식회사 | 가상화 환경에서의 장애 처리 방법 |
KR20160012863A (ko) * | 2014-07-24 | 2016-02-03 | 삼성전자주식회사 | 가상 머신을 실행하는 전자 장치 및 가상 머신을 실행하는 방법 |
CN104965757B (zh) * | 2015-01-21 | 2018-03-30 | 深圳市腾讯计算机系统有限公司 | 虚拟机热迁移的方法、虚拟机迁移管理装置及系统 |
US9632881B1 (en) * | 2015-03-24 | 2017-04-25 | EMC IP Holding Company LLC | Replication of a virtual distributed volume |
-
2016
- 2016-12-28 CN CN201611240016.5A patent/CN106708603B/zh active Active
-
2017
- 2017-04-10 KR KR1020187015545A patent/KR102067918B1/ko active IP Right Grant
- 2017-04-10 JP JP2018519449A patent/JP6735820B2/ja active Active
- 2017-04-10 SG SG11201803894WA patent/SG11201803894WA/en unknown
- 2017-04-10 US US15/772,798 patent/US10740197B2/en active Active
- 2017-04-10 WO PCT/CN2017/079912 patent/WO2018120491A1/zh active Application Filing
- 2017-04-10 EP EP17857672.4A patent/EP3564815A4/en active Pending
- 2017-04-10 AU AU2017341159A patent/AU2017341159B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103838593A (zh) * | 2012-11-22 | 2014-06-04 | 华为技术有限公司 | 恢复虚拟机的方法、系统及控制器、服务器、寄宿主机 |
CN103559108A (zh) * | 2013-11-11 | 2014-02-05 | 中国科学院信息工程研究所 | 一种基于虚拟化实现主备故障自动恢复的方法及系统 |
US20160110127A1 (en) * | 2014-10-17 | 2016-04-21 | Emc Corporation | Enabling non-volatile random access to data |
CN104331318A (zh) * | 2014-10-27 | 2015-02-04 | 上海斐讯数据通信技术有限公司 | 一种嵌入式双系统及其工作方法 |
CN105159798A (zh) * | 2015-08-28 | 2015-12-16 | 浪潮集团有限公司 | 一种虚拟机的双机热备方法、双机热备管理服务器和系统 |
Also Published As
Publication number | Publication date |
---|---|
JP6735820B2 (ja) | 2020-08-05 |
SG11201803894WA (en) | 2018-08-30 |
AU2017341159B2 (en) | 2019-07-25 |
KR102067918B1 (ko) | 2020-01-17 |
US10740197B2 (en) | 2020-08-11 |
AU2017341159A1 (en) | 2018-07-12 |
CN106708603B (zh) | 2019-04-26 |
JP2019504374A (ja) | 2019-02-14 |
KR20180087278A (ko) | 2018-08-01 |
EP3564815A1 (en) | 2019-11-06 |
CN106708603A (zh) | 2017-05-24 |
US20190272219A1 (en) | 2019-09-05 |
EP3564815A4 (en) | 2020-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018120491A1 (zh) | 虚拟机快速恢复方法、装置和系统 | |
US10108508B2 (en) | Protecting virtual machines against storage connectivity failures | |
US9727429B1 (en) | Method and system for immediate recovery of replicated virtual machines | |
US10511674B2 (en) | Gesture based switching of virtual desktop clients | |
US9552405B1 (en) | Methods and apparatus for recovery of complex assets in distributed information processing systems | |
US9262212B2 (en) | Systems and methods for migrating virtual machines | |
EP1998255B1 (en) | Virtual computer system and control method thereof | |
EP2686804B1 (en) | Techniques for securing a checked-out virtual machine in a virtual desktop infrastructure | |
US20160065690A1 (en) | System and method for selecting virtual desktop environment | |
US20140059380A1 (en) | Protecting paired virtual machines | |
US20140215172A1 (en) | Providing virtual machine migration reliability using an intermediary storage device | |
US9940283B2 (en) | Application sharing in multi host computing systems | |
JP2009181419A (ja) | 通信装置、方法及びプログラム | |
WO2014079194A1 (zh) | 恢复虚拟机的方法、系统及控制器、服务器、寄宿主机 | |
US9779106B2 (en) | Application management method and device | |
WO2019100589A1 (zh) | 虚拟机快速扩容方法、装置、设备以及存储介质 | |
WO2015180124A1 (zh) | 终端设备显示方法和终端设备 | |
US20150370657A1 (en) | Protecting virtual machines from network failures | |
US9286088B2 (en) | User interface for interaction with virtual machine | |
US10409577B2 (en) | Hybrid application delivery that combines download and remote access | |
US10180853B2 (en) | Session reliability for a redirected mass storage device | |
TWI778295B (zh) | 資訊處理系統、其之電源作業控制器以及於叢集作業期間處理電源請求的方法 | |
US11487559B2 (en) | Dynamically switching between pointer modes | |
JP5422705B2 (ja) | 仮想計算機システム | |
JP5422706B2 (ja) | 管理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2018519449 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 11201803894W Country of ref document: SG |
|
ENP | Entry into the national phase |
Ref document number: 20187015545 Country of ref document: KR Kind code of ref document: A |
|
ENP | Entry into the national phase |
Ref document number: 2017341159 Country of ref document: AU Date of ref document: 20170410 Kind code of ref document: A |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17857672 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2017857672 Country of ref document: EP Effective date: 20190729 |