From Fedora Project Wiki
(Mini edits)
(Fill in a bunch of details, mark ready for wrangler)
Line 1: Line 1:
= Virt Storage Motion =
= Virt Storage Migration =


== Summary ==
== Summary ==
Storage motion is a streaming feature that allows the guest to start execution while the parent image reside remotely (with or without shared storage).
Migrate a running virtual machine from one host to another, including in use storage, with no downtime. No need for a shared storage location between the two.


== Owner ==
== Owner ==
Line 11: Line 11:


== Current status ==
== Current status ==
* Targeted release: [[Releases/18 | Fedora 18]]
* Targeted release: [[Releases/19 | Fedora 19]]
* Last updated: January 26 2013
* Last updated: January 26 2013
* Percentage of completion: 50%
* Percentage of completion: 60%


== Detailed Description ==
== Detailed Description ==
XXX: fixme
Live migration of a VM has been around for a while, but usage historically required that VM storage disk images were shared between the source and destination host, and mounted in the same location.
 
Since qemu 0.12 (December 2009), there has been a storage migration feature in qemu, but it was inflexible, and inefficient to the point that any workload in the guest would often prevent the guest from ever being full migrated. While supported in libvirt/virsh, it was still difficult to use, requiring stub disk images to be present on the destination host.
 
New developments in QEMU allow migrating a VM with no shared storage between the source and destination, and does it in a performant manner.


== Benefit to Fedora ==
== Benefit to Fedora ==
This feature is equivalent to VMWare's "storage vmotion" feature, so brings Fedora virt closer in functionality to the proprietary alternative. Plus, it's a cool feature.
This feature is equivalent to VMWare's "storage vmotion" feature, so brings Fedora virt closer in functionality to the proprietary alternative. Plus, it's a cool feature that makes migration much simpler to try out.


== Scope ==
== Scope ==
* Qemu supports block streaming (unknown)
* Qemu block streaming and internal nbd sharing (DONE, in 1.3)
* Libvirt supports block streaming (unknown)
* Libvirt/virsh support (patches posted)
* Apps
* virt-manager support (not done)
** ovirt support (unknown)
** virt-manager support (might be out of scope, sounds pretty enterprisey)


== How To Test ==
== How To Test ==
XXX: fixme
XXX: I believe this replaces the old libvirt interface, so basically 'virsh migrate --copy-storage-all ...'  Verify and fill in the details


== User Experience ==
== User Experience ==
Virt users who are already migrating guests will no longer require shared storage for one. Will also enable several other use cases, like transparently changing between disk image formats for a running guest.
Virt users who are already migrating guests will no longer require shared storage. Anyone interested in trying migration does not need to setup shared storage.


== Dependencies ==
== Dependencies ==
Line 43: Line 45:
* http://wiki.qemu.org/Features/LiveBlockMigration
* http://wiki.qemu.org/Features/LiveBlockMigration
* http://wiki.qemu.org/Features/LiveBlockMigration/ImageStreamingAPI
* http://wiki.qemu.org/Features/LiveBlockMigration/ImageStreamingAPI
* [https://www.redhat.com/archives/libvir-list/2013-January/msg00763.html Libvirt patch posting]


== Release Notes ==
== Release Notes ==
XXX: fixme
KVM and Libvirt now support a performant way to live migrate virtual machines with no shared storage between the hosts. A running VM and it's disk images are relocated to a new machine with no downtime.


== Comments and Discussion ==
== Comments and Discussion ==
Line 52: Line 55:


[[Category:FeaturePageIncomplete]]
[[Category:FeaturePageIncomplete]]
<!-- When your feature page is completed and ready for review -->
[[Category:Virtualization]]
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
<!-- After review, the feature wrangler will move your page to Category:FeatureReadyForFesco... if it still needs more work it will move back to Category:FeaturePageIncomplete-->
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Revision as of 00:05, 29 January 2013

Virt Storage Migration

Summary

Migrate a running virtual machine from one host to another, including in use storage, with no downtime. No need for a shared storage location between the two.

Owner

Current status

  • Targeted release: Fedora 19
  • Last updated: January 26 2013
  • Percentage of completion: 60%

Detailed Description

Live migration of a VM has been around for a while, but usage historically required that VM storage disk images were shared between the source and destination host, and mounted in the same location.

Since qemu 0.12 (December 2009), there has been a storage migration feature in qemu, but it was inflexible, and inefficient to the point that any workload in the guest would often prevent the guest from ever being full migrated. While supported in libvirt/virsh, it was still difficult to use, requiring stub disk images to be present on the destination host.

New developments in QEMU allow migrating a VM with no shared storage between the source and destination, and does it in a performant manner.

Benefit to Fedora

This feature is equivalent to VMWare's "storage vmotion" feature, so brings Fedora virt closer in functionality to the proprietary alternative. Plus, it's a cool feature that makes migration much simpler to try out.

Scope

  • Qemu block streaming and internal nbd sharing (DONE, in 1.3)
  • Libvirt/virsh support (patches posted)
  • virt-manager support (not done)

How To Test

XXX: I believe this replaces the old libvirt interface, so basically 'virsh migrate --copy-storage-all ...' Verify and fill in the details

User Experience

Virt users who are already migrating guests will no longer require shared storage. Anyone interested in trying migration does not need to setup shared storage.

Dependencies

None.

Contingency Plan

Since this is brand new functionality, if it doesn't make it in time for F18, nothing has changed. We just drop this feature page.

Documentation

Release Notes

KVM and Libvirt now support a performant way to live migrate virtual machines with no shared storage between the hosts. A running VM and it's disk images are relocated to a new machine with no downtime.

Comments and Discussion

None yet.