Shell Virtual Machine Migration with Pre-fetched Boot Sector
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The migration of servers from client networks to provider networks is hindered by the time-consuming process of copying large amounts of data, leading to significant downtime and inefficiencies in provisioning and managing physical computing resources.
Innovation Solution
The implementation of a method that instantiates a 'shell' VM on the provider network, allowing the server to be made available quickly by booting with a fetched boot sector and subsequently fetching data from the client network, with proactive data migration and mirroring to minimize downtime and optimize resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional data copying method is used for server migration, then data integrity is ensured, but migration time and downtime increase significantly
Solution Approach 1:
The patent applies preliminary action by pre-fetching the boot sector and essential data blocks before the actual migration process begins. The shell VM is instantiated in advance on the provider network, and data transfer is initiated proactively, allowing the server to become available faster while ensuring data integrity through verified block transfers.
Solution Approach 2:
The migration process is segmented into discrete data blocks that can be transferred independently. The boot sector is separated and fetched first, followed by other data blocks in subsequent operations. This segmentation allows partial migration without requiring complete data transfer, reducing overall migration time while maintaining data integrity through block-level verification.
2Stability of the object's composition
If complete data transfer is performed before server availability, then data consistency is maintained, but provisioning efficiency decreases
Solution Approach 1:
The shell VM is created and made available on the provider network before complete data transfer is finished. Essential data including the boot sector is fetched in advance, enabling the server to start operations prematurely. This preliminary action maintains data consistency through verified block transfers while significantly improving provisioning efficiency by avoiding full data transfer prerequisites.
Solution Approach 2:
The patent implements partial action by transferring only essential data blocks and the boot sector initially, rather than waiting for complete data transfer. The shell VM operates with this partial data set, and remaining data blocks are transferred subsequently. This approach achieves sufficient functionality for immediate server availability while maintaining data consistency through controlled block-level migrations.
3Loss of time
If shell VM approach is used for migration, then server availability is improved, but data transfer complexity increases
Solution Approach 1:
The shell VM acts as an intermediary between the source and target storage systems during migration. It provides a functional bridge that allows data transfer to proceed in the background while the server remains available. This intermediary approach reduces downtime by decoupling server availability from complete data transfer, managing complexity through standardized virtual machine interfaces and block-level data operations.
Data Source
AI summary
Migrating servers from client networks to virtual machines (VMs) on a provider network. A migration appliance is installed or booted on the client network, and a migration initiator is instantiated on the provider network. A VM and associated volumes are instantiated on the provider network. The initiator sends a request for a boot sector to the appliance; the appliance reads the blocks from a volume on the client network, converts the blocks to a format used by the VM, and sends the blocks to the initiator. The initiator boots the VM using the boot sector and the VM begins execution. The initiator then retrieves all data blocks for the VM from volumes on the client network via the appliance, stores the data to the volumes on the provider network, and fulfills requests from the VM from either local volumes or the remote volumes via the appliance.


