Virtual Machine HA via Disk Buffer Checkpoint Barrier
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing cloud computing systems face challenges in maintaining high availability of virtual machines due to synchronization issues between active and standby hosts, leading to potential service disruptions and system errors, especially when dealing with commodity hardware that is prone to faults.
Innovation Solution
The system employs an active host server and a standby host server that synchronizes disk writes and memory images by using a disk buffer and checkpoint barrier markers, allowing for minimal downtime and perfect synchronization of memory and disk images during failover, without requiring special hardware or modifying existing software applications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the virtual machine is suspended for live migration to capture running state, then synchronization between active and standby hosts is achieved, but service disruption occurs due to loss of communication connections
Solution Approach 1:
The system performs preliminary actions by continuously maintaining a standby virtual machine in a suspended state with pre-synchronized memory and disk images before failure occurs. The standby VM is kept ready with periodic synchronization, so when failover is needed, the transition is immediate without service disruption.
Solution Approach 2:
The patent introduces an intermediary mechanism - a intermediary storage system that buffers disk writes and maintains a checkpoint barrier. This intermediary allows the standby host to receive and buffer disk operations without requiring the virtual machine to be suspended, enabling seamless failover while maintaining synchronization.
2Reliability
If disk writes are synchronously sent to the standby host, then data consistency is maintained, but system complexity increases due to coordination overhead
Solution Approach 1:
The patent introduces an intermediary storage system that buffers disk writes and maintains a checkpoint barrier. This intermediary simplifies the synchronization mechanism by decoupling the write operations from the failover process, allowing disk writes to be buffered and applied atomically during failover without complex coordination between hosts.
Solution Approach 2:
The system uses copying mechanisms to replicate disk images and memory images to the standby host. By maintaining copies of the virtual machine state and using checkpoint barriers to ensure atomicity, the system achieves data consistency while simplifying the synchronization logic through straightforward copy operations rather than complex distributed transactions.
3Reliability
If the virtual machine memory image is copied to standby host, then failover capability is ensured, but network bandwidth is consumed during synchronization
Solution Approach 1:
The system performs preliminary copying of the entire memory image and disk image to the standby host before failover is needed. By pre-synchronizing the complete virtual machine state, the system ensures failover capability is already established, eliminating the need for extensive network transfers during actual failover events.
Solution Approach 2:
The patent employs copying mechanisms to replicate the virtual machine's memory image and disk image to the standby host. Full images are copied in advance, and incremental updates are applied using checkpoint barriers, reducing ongoing network bandwidth requirements while ensuring failover capability is continuously maintained.
Data Source
AI summary
High availability (HA) protection is provided for an executing virtual machine. A standby server provides a disk buffer that stores disk writes associated with a virtual machine executing on an active server. At a checkpoint in the HA process, the active server suspends the virtual machine; the standby server creates a checkpoint barrier at the last disk write received in the disk buffer; and the active server copies dirty memory pages to a buffer. After the completion of these steps, the active server resumes execution of the virtual machine; the buffered dirty memory pages are sent to and stored by the standby server. Then, the standby server flushes the disk writes up to the checkpoint barrier into disk storage and writes newly received disk writes into the disk buffer after the checkpoint barrier.


