Virtual Machine State Synchronization for High Availability Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional high availability systems using dedicated hardware are costly, and existing virtual machine techniques struggle to synchronize execution states between main and clone virtual computers while maintaining storage coherence, leading to operational disruptions during storage malfunctions.
Innovation Solution
A high availability system comprising two server computers with independent virtual computers and hypervisors that synchronize execution states and storage states by transmitting synchronization information, allowing the clone virtual computer to replicate the execution state and storage state of the main virtual computer, ensuring identical behavior and storage coherence.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If dedicated hardware is used to construct a high availability system, then system reliability is improved, but hardware cost increases
Solution Approach 1:
The patent uses virtualization to create virtual copies of computing resources on general-purpose hardware. Virtual computers (VMs) are instantiated on standard server hardware, eliminating the need for expensive dedicated fault-tolerant hardware while maintaining high availability through VM duplication and migration capabilities
Solution Approach 2:
The patent enables general-purpose hardware to perform multiple functions including running multiple virtual computers, providing storage services, and enabling failover capabilities. The same hardware infrastructure supports both primary and standby virtual machines, increasing resource utilization and reducing overall hardware requirements
2Stability of the object's composition
If shared storage is used between main and clone virtual computers, then storage coherence is improved, but system vulnerability to storage failure increases
Solution Approach 1:
The patent segments storage resources into independent virtual storage units assigned to individual virtual computers. Each virtual computer has its own dedicated virtual storage, eliminating the single point of failure associated with shared storage while maintaining data coherence through synchronized execution states and coordinated storage operations
Solution Approach 2:
The patent introduces the virtualization layer as an intermediary between virtual computers and physical storage resources. The hypervisor manages storage allocation and operations, coordinating between multiple virtual computers and their respective storage resources, enabling coherent data management without direct shared storage dependencies
3Reliability
If independent storage is used for main and clone virtual computers, then storage reliability is improved, but execution state synchronization becomes difficult
Solution Approach 1:
The patent implements feedback mechanisms where the hypervisor continuously monitors the execution states of virtual computers and coordinates storage operations accordingly. Synchronization information is exchanged between virtual computers through the hypervisor, which adjusts storage operations to maintain execution state coherence despite independent storage resources
Solution Approach 2:
The patent merges the control plane for storage management at the hypervisor level while keeping data plane resources independent. The hypervisor consolidates synchronization logic and coordinates storage operations across multiple virtual computers with independent storage, simplifying the complexity of maintaining execution state synchronization
4Quantity of substance
If virtualization is used to operate multiple virtual computers on general hardware, then hardware cost is reduced, but storage state synchronization capability is lost
Solution Approach 1:
The patent replaces mechanical/shared storage synchronization mechanisms with software-based virtualization controls. The hypervisor uses software coordination to synchronize storage states between virtual computers, eliminating the need for complex hardware-based shared storage while maintaining synchronization capability through virtualized resource management
Data Source
AI summary
A high availability system includes a first server computer for a first virtual computer and a first hypervisor and a second server computer for a second virtual computer and a second hypervisor. The first virtual computer executes a processing and the second virtual computer executes the processing behind from the first virtual computer. Information associated with an event is transmitted. The event provides an input to the first virtual computer. In the second hypervisor, a control unit performs, control based on the information to match the execution state of the second virtual computer and that of the first virtual computer, and control associated with the information, when the event associated with the information is predetermined one of an I/O completion interrupt from the first virtual storage and an interrupt handler call corresponding to the interrupt, after the interrupt from the second virtual storage corresponding to the interrupt is caught.


