Features/KVMThinProv

From FedoraProject

< Features(Difference between revisions)
Jump to: navigation, search
(Created page with "= Thin provisioning improvements in KVM <!-- The name of your feature --> = == Summary == libvirt and QEMU will feature increased support for thin provisioning. Thin-provisione...")
 
m (change target version)
 
(3 intermediate revisions by 2 users not shown)
Line 12: Line 12:
  
 
== Current status ==
 
== Current status ==
* Targeted release: [[Releases/17 | Fedora 17 ]]  
+
* Targeted release: [[Releases/18 | Fedora 18 ]]  
 
* Last updated: 2012-01-23
 
* Last updated: 2012-01-23
 
* Percentage of completion: 60%
 
* Percentage of completion: 60%
Line 70: Line 70:
  
  
[[Category:FeatureReadyForWrangler]]
+
[[Category:Virtualization]]
 
<!-- When your feature page is completed and ready for review -->
 
<!-- When your feature page is completed and ready for review -->
 
<!-- remove Category:FeaturePageIncomplete and change it to Category:FeatureReadyForWrangler -->
 
<!-- 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-->
 
<!-- 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 -->
 
<!-- A pretty picture of the page category usage is at: https://fedoraproject.org/wiki/Features/Policy/Process -->

Latest revision as of 14:07, 12 April 2012

Contents

[edit] Thin provisioning improvements in KVM

[edit] Summary

libvirt and QEMU will feature increased support for thin provisioning. Thin-provisioned virtual machines will be able to switch to "thick-provisioned" for better performance incrementally and in the background, while the virtual machine is running.

[edit] Owner

[edit] Current status

  • Targeted release: Fedora 18
  • Last updated: 2012-01-23
  • Percentage of completion: 60%


[edit] Detailed Description

QEMU will include two different mechanisms to complete thin-provisioned virtual machine images. "Copy-on-read" will store data in the local image as the virtual machine needs it, so that future references to the same data will not need to go to the (typically slower) shared image. On top of this, "streaming" will read data from the shared image to the local image slowly and in the background.


[edit] Benefit to Fedora

New virtual machines can be started quickly based on existing (possibly remote) images, and still ultimately reach the same speed as if the VM had been provisioned completely.


[edit] Scope

libvirt 0.9.10 and QEMU 1.1 should include support for copy-on-read and streaming.

[edit] How To Test

  1. Install a virtual machine using vm1 virt-install or virt-manager.
  2. Create a thin-provisioned image file using qemu-img (...).
  3. Create another virtual machine vm2 using virt-manager, pointing it to the newly-created image file.
  4. Start the second virtual machine vm2.
  5. Start streaming using virsh (...).
  6. Watch the image file for vm2 grow.
  7. Watch the status of streaming using virsh (...).
  8. Restart vm2 and repeat steps 5-7.
  9. Wait for vm2's image to be fully streamed in.
  10. Shut down vm2, and destroy the image that you used for vm1.
  11. Restart vm2, which should still work.

[edit] User Experience

virsh will support additional commands to start a streaming operation and to query its status. Copy-on-read can be enabled implicitly by streaming or explicitly using the libvirt XML format for disks.

[edit] Dependencies

None outside libvirt and QEMU.

[edit] Contingency Plan

None necessary, libvirt and QEMU changes are independent even though both are needed to make the feature available.

[edit] Documentation

  • (Will link to material on libvirt.org when it is ready).

[edit] Release Notes

  • This release of Fedora adds support for image streaming in libvirt. Streaming lets an administrator start new virtual machines quickly based on existing images; virtual machines are then provisioned completely in the background as they run.

[edit] Comments and Discussion