Virtual mode execution manager
US-12118376-B2 · Oct 15, 2024 · US
US9411620B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9411620-B2 |
| Application number | US-201113340117-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 29, 2011 |
| Priority date | Nov 29, 2010 |
| Publication date | Aug 9, 2016 |
| Grant date | Aug 9, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A virtual storage migration method is provided, including: starting a data migration process, and copying, from a source storage device to a destination storage device, a data block in a virtual disk to be migrated; when a VM front-end I/O read request is received, directly reading, corresponding data from the source storage device; when a VM front-end I/O write request is received, determining whether a migration data block that corresponds to the write request is being migrated, if yes, executing a write operation that corresponds to the write request after the migration of the migration data block is completed, if no, executing a write operation that corresponds to the write request; and after all the data blocks in the virtual disk to be migrated are copied to the destination storage device, stopping the data migration, and switching the virtual disk from the source storage device to the destination storage device.
Opening claim text (preview).
What is claimed is: 1. A data migration method for virtual storage migration, comprising: copying, from a source storage device to a destination storage device, a data block in a virtual disk to be migrated; when a virtual machine front-end input/output (I/O) read request is received, directly reading, from the source storage device, data that corresponds to the virtual machine front-end input/output (I/O) read request; and when a virtual machine front-end I/O write request is received, determining whether a migration data block that corresponds to the virtual machine front-end I/O write request is being migrated, and when the migration data block that corresponds to the virtual machine front-end I/O write request is being migrated, executing a write operation that corresponds to the virtual machine front-end I/O write request after the migration of the migration data block is completed; when the migration data block that corresponds to the virtual machine front-end I/O write request is not being migrated, directly executing the write operation that corresponds to the virtual machine front-end I/O write request; wherein when the migration data block that corresponds to the virtual machine front-end I/O write request is not being migrated, directly executing the write operation that corresponds to the virtual machine front-end I/O write request comprises: when queried according to a bitmap table that the migration data block that corresponds to the virtual machine front-end I/O write request is not migrated and the size of the new write request data block carried in the virtual machine front-end I/O write request is equal to the size of the migration data block, directly writing the new write request data block into the source storage device and the destination storage device and setting the chunk that corresponds to the migration data block in the bitmap table to represent that the data block that corresponds to the chunk has been migrated, and after all data blocks in the virtual disk to be migrated are copied to the destination storage device, stopping the data migration process, and switching the virtual disk managed by a virtual machine manager from the source storage device to the destination storage device. 2. The method according to claim 1 , wherein the starting the data migration process and copying, from the source storage device to the destination storage device, the data block in the virtual disk to be migrated comprises: initializing, with a chunk as granularity, a bitmap table of the data block in the virtual disk to be migrated, wherein a size of the chunk is set according to a size of the virtual disk to be migrated; sequentially selecting the data block that corresponds to an unset chunk from the bitmap table for migration; and setting the unset chunk in the bitmap table to represent that the data block that corresponds to the chunk has been migrated when the data block that corresponds to the unset chunk is copied from the source storage device to the destination storage device. 3. The method according to claim 2 , wherein, when the virtual machine front-end I/O write request is received and determined that the migration data block that corresponds to the virtual machine front-end I/O write request is not being migrated, the step of directly executing the write operation that corresponds to the virtual machine front-end I/O write request further comprises: directly writing the new write request data block carried in the virtual machine front-end I/O write request into the source storage device and the destination storage device when queried according to the bitmap table that the migration data block that corresponds to the virtual machine front-end I/O write request has been migrated; copying the migration data block from the source storage device to the destination storage device, writing the new write request data block into the source storage device and the destination storage device, and setting the chunk that corresponds to the migration data block in the bitmap table, when it is queried according to the bitmap table that the migration data block that corresponds to the virtual machine front-end I/O write request is not migrated and the size of the new write request data block carried in the virtual machine front-end I/O write request is smaller than the size of the migration data block. 4. The method according to claim 1 , before starting the data migration process, further comprising: allocating a storage space in the destination storage device, and copying a virtual machine configuration file to the destination storage device, and setting a data migration flag, wherein the data migration flag is used to identify that data in the virtual disk to be migrated is currently being migrated. 5. The method according to claim 4 , after the starting the data migration process, further comprising: clearing the data migration flag, and deleting a virtual disk image that corresponds to the virtual disk in the source storage device. 6. The method according to claim 1 , further comprising: preferentially processing a virtual machine front-end I/O access request, wherein the front-end I/O access request comprises the virtual machine front-end I/O read request and the virtual machine front-end I/O write request; and performing data migration by adopting a low-priority data migration thread when the virtual machine is idle. 7. A virtual machine monitor, comprising: a processor and a memory; wherein the memory is configured to store computer executable instructions, and the processor is configured to execute the computer executable instructions stored in the memory: wherein the computer executable instructions are configured to instruct the processor to: implement a data migration process, comprising: copy, from a source storage device to a destination storage device, a data block in a virtual disk to be migrated; directly read, from the source storage device, data that corresponds to a virtual machine (VM) front-end input/output (I/O) read request when the virtual machine front-end input/output (I/O) read request is received; and determine whether a migration data block that corresponds to a virtual machine front-end I/O write request is being migrated when the VM front-end I/O write request is received, and when the migration data block that corresponds to the virtual machine front-end I/O write request is being migrated, execute a write operation that corresponds to the virtual machine front-end I/O write request after the migration of the migration data block is completed; when the migration data block that corresponds to the virtual machine front-end I/O write request is not being migrated, directly execute the write operation that corresponds to the virtual machine front-end I/O write request; and wherein the instructions being configured to instruct the processor to, when the migration data block that corresponds to the virtual machine front-end I/O write request is not being migrated, directly execute the write operation that corresponds to the virtual machine front-end I/O write request comprises: when queried according to a bitmap table that the migration data block that corresponds to the virtual machine front-end I/O write request is not migrated and the size of the new write request data block carried in the virtual machine front-end I/O write request is equal to the size of the migration data block, the instructions being configured to instruct the processor to directly write the new write request data block into the source storage device and the destination storage device and set the chunk that corresponds to the migration data block in the bitmap table to represent that the migration data block that corresponds to the chunk has been migrated;
Hypervisors; Virtual machine monitors · CPC title
Migration mechanisms · CPC title
Distribution of virtual machine instances; Migration and load balancing · CPC title
in relation to availability · CPC title
I/O management, e.g. providing access to device drivers or storage · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.