Elastic Virtual Machine Replication via Distributed Cache Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data replication methods in storage arrays face performance bottlenecks and inefficiencies due to replicating entire physical volumes, leading to unnecessary data replication and increased resource requirements, especially in hyper-converged systems managing multiple virtual machines.
Innovation Solution
A distributed storage system that determines the amount of virtual machine data cached on compute nodes, selects nodes for replication based on data recency and footprint, and uses policy groups to schedule replication events at a granular level, allowing for efficient replication of only updated data to a secondary cluster.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If entire physical volumes are replicated at LUN level, then data replication is achieved, but unnecessary data replication occurs and resource requirements increase
Solution Approach 1:
The patent segments the physical volume into individual virtual machine components, allowing selective replication of only those VMs that have changed since the last replication event. This divides the monolithic replication task into granular, manageable units that can be independently evaluated and replicated based on actual changes.
Solution Approach 2:
The patent extracts and identifies only the specific virtual machines that have undergone changes since the last replication, separating them from the static, unchanged portions of the volume. This extraction process allows the system to replicate only the necessary changed data rather than the entire volume.
2Reliability
If active array controller handles replication tasks, then replication is performed, but performance bottleneck occurs
Solution Approach 1:
The patent extracts the replication management function from the active array controller and delegates it to individual array controllers at each site. This distribution of the replication management function eliminates the central bottleneck, allowing the active controller to focus on I/O operations while passive controllers handle their own replication tasks independently.
Solution Approach 2:
The patent merges the replication management and execution functions into the same array controller at each site. Each controller manages its own replication tasks locally, combining control and execution functions in one unit, which eliminates the need for centralized coordination and reduces performance bottlenecks.
3Adaptability or versatility
If per-virtual machine replication is implemented, then replication granularity is improved, but configuration overhead increases
Solution Approach 1:
The patent implements self-service by enabling array controllers to automatically identify which virtual machines have changed since the last replication event. The system autonomously determines replication needs based on change detection mechanisms, eliminating the need for manual configuration of each VM's replication status and reducing configuration overhead.
Solution Approach 2:
The patent uses parameter changes (change detection) as the basis for replication decisions. By monitoring and detecting changes in virtual machine data, the system dynamically determines which VMs require replication, allowing fine-grained control without complex manual configuration for each individual VM.
Data Source
AI summary
Techniques for replicating virtual machine data is provided. A plurality of compute nodes running on a primary cluster determine the amount of virtual machine data cached within each compute node. Based on the amount of virtual machine data for a particular virtual machine, a particular compute node is assigned to replicate the data to a secondary cluster. The amount of particular virtual machine data copied to the secondary cluster is based on updated virtual machine data that belongs to a particular state of the virtual machine. The destination of the particular virtual machine data is based on available cache space and prior replication statistics for target compute nodes on the secondary cluster.


