SSD-Assisted Live VM Migration with Dirty-Block Precopy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing virtual machine (VM) migration technologies involve disruptive and time-consuming processes, particularly in the storage phase, leading to inefficiencies and resource constraints in data centers.
Innovation Solution
Employing a Solid State Drive (SSD) controller to assist in live VM migration by tracking storage state changes and optimizing data transfer, using NVMe commands to minimize downtime and resource allocation inefficiencies.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional VM migration methods are used, then VM can be moved from source to destination, but migration involves temporarily stopping the VM and consumes significant resources
Solution Approach 1:
The storage device performs preliminary actions by pre-copying VM data blocks from the source server to the destination server before the actual migration is needed. The storage device monitors write operations and identifies dirty blocks, then proactively transfers them ahead of time, so that when migration is triggered, most data is already in place and only minimal synchronization is required.
Solution Approach 2:
The storage device acts as an intermediary between the source and destination servers during VM migration. It manages the data transfer process, tracks dirty blocks, and coordinates the synchronization operations, freeing the VM from direct involvement in the migration process and enabling continuous operation during the transfer.
2Productivity
If VM migration is performed frequently, then resource utilization can be optimized, but migration processes consume significant computational resources and time
Solution Approach 1:
The storage device continuously monitors write operations and pre-identifies dirty blocks before migration is needed. By maintaining an up-to-date record of which blocks have been modified and proactively copying them in the background, the system prepares for migration in advance, reducing the actual migration time when it becomes necessary.
Solution Approach 2:
The storage device performs migration-related operations continuously in the background without interrupting VM operation. Dirty block tracking, data copying, and synchronization occur as continuous background processes, allowing the system to maintain readiness for migration at any time without requiring dedicated migration windows that would cause downtime.
3Manufacturing precision
If storage state changes are tracked in detail, then data transfer accuracy is improved, but processing overhead increases
Solution Approach 1:
The storage device segments the VM storage space into individual data blocks and tracks each block's state independently. By dividing the storage into manageable block units and maintaining separate metadata for each block's dirty status, the system achieves precise tracking of data changes without requiring complex global state management, reducing processing overhead through localized tracking.
Data Source
AI summary
A storage device is disclosed. The storage device may include at least one controller for a virtual machine (VM) that is on a source host. Storage in the storage device may store data for the VM. A second storage may store a storage state for the VM. A storage device controller may process at least one read request received from the controller for the VM using the first storage and at least one write request received from the controller for the VM using the first storage. A VM migration state monitor and capture module may assist in the migration of the VM from the source host to a destination host.


