unRAID 6 Beta 6: New VM-Specific Updates (KVM / Xen)


jonp

Recommended Posts

New VM-Specific Updates

This release includes a number of new and advanced VM capabilities that didn't existing in previous unRAID 6 Beta releases.  While the release notes provides high level information, this overview will go a little deeper into some of the hidden gems within Beta 6 that are specific to virtual machines.  While the quick-start guide will hopefully get you started with getting a basic virtual machine up and running, there are tons of exciting new features and capabilities built into beta 6 that are worth checking out and testing.

 

QCOW2 vDisk Image Format Support

As mentioned earlier, one of the benefits of qemu-img in beta 6 is that it supports additional virtual disk formats.  One in particular that's worth highlighting is the very popular QCOW2.  QCOW2 offers some unique benefits over the RAW image format:

 

  • Does not "pre-allocate" disk storage (delays allocation until it's actually needed)
  • Supports use of AES encryption and zlip-based transparent decompression
  • Supports multiple virtual machine snapshots that takes advantage of "Copy On Write" functionality built into the image format.

 

While we have yet to test the features around encryption, decompression, and snapshots, we have tested the use of a QCOW2 image both in KVM and Xen in beta 6 and had great success.  So to recreate the command from the earlier example, but specifying a QCOW2 image format, we would execute the following:

 

qemu-img create -f qcow2 vm1.qcow2 40G

 

One important thing to note here is that the file extension for the image does NOT have to be "qcow2."  You can name the file with a .img extension, but if you specify the qcow2 format, it will retain it.

 

Emulation of ICH9 Host Chipset (PCI Pass Through Improvements)

A significant difference between Xen and KVM in this release is KVM's capability to take advantage of QEMU's Q35 emulated motherboard architecture.  A significant difference in Q35 as compared to the I440FX that Xen uses is its native support for PCI-E devices.  For a technical brief on this, visit http://wiki.qemu.org/Features/Q35.  In short, this single difference enabled us to achieve better success with the pass through of more complicated PCI Devices (e.g. GPUs).  In the domain XML example provided previously, you can see us specifying the VM to use the Q35 in the <os> section.

 

VirtFS (9p) Support

This new feature enables extremely fast file system access between the guest and the host through passing a configuration through in the VM's configuration file (xl cfg or libvirt xml).  For more information on this feature, see the following link for an overview on this feature and its usage:  http://wiki.qemu.org/Documentation/9psetup

 

Support for VirtIO (KVM tested)

VirtIO is very similar to how PV drivers work in the Xen world.  VirtIO allows users to see massive performance increase in disk IO between the guest and the host.  For Windows VMs, you will need the VirtIO drivers (similar to GPLPV drivers for Xen).  Those drivers are located on an ISO file located here: 

 

http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/

 

A guide for loading these drivers during a Windows VM guest install will be posted at a later time.  For a detailed overview on VirtIO, see here:  http://wiki.libvirt.org/page/Virtio

 

While in theory VirtIO should work in Xen mode as well, we have not tested this for this release and therefore cannot confirm whether or not it works.

 

Support for VFIO (KVM Only)

For those interested in the pass through of PCI devices (GPUs, NICs, disk controllers, etc.), VFIO is where the difference between KVM and Xen really will show.  For a full technical write-up: https://www.kernel.org/doc/Documentation/vfio.txt

 

That said, VFIO combined with the ICH9 Host Chipset (Q35) mentioned previously makes for a promising future for making the process of PCI device pass through completely transparent to the underlying hardware.

Link to comment

Any luck passing thru an iGPU to the VM?  It didn't seem possible with XEN, but XEN 4.4 was supposed to support this.  But, since KVM seems to have gotten more testing for this release, I figured I'd see if you had any luck before I try with XEN.

 

I'm wanting to passthru my HD4600 to my Windows 8 VM, and use the crappy video card for unRAID, if unRAID needs a video card at all.  I do everything with Putty, so I never actually look at the console directly.

 

Anyway, thanks again, I'm afraid I'm going to 'waste' a lot of time on testing out some of these new 'toys'. :)

Link to comment

Any luck passing thru an iGPU to the VM?  It didn't seem possible with XEN, but XEN 4.4 was supposed to support this.  But, since KVM seems to have gotten more testing for this release, I figured I'd see if you had any luck before I try with XEN.

 

I'm wanting to passthru my HD4600 to my Windows 8 VM, and use the crappy video card for unRAID, if unRAID needs a video card at all.  I do everything with Putty, so I never actually look at the console directly.

 

Anyway, thanks again, I'm afraid I'm going to 'waste' a lot of time on testing out some of these new 'toys'. :)

 

Not yet.  We only did a very basic test on both Xen and KVM and didn't have success, but there are LOTS of things to try out yet.  The 3.15 Linux kernel was supposed to have a bunch of patches relevant to the VGA Arbiter bug we ran into that was the main culprit for Intel iGPU pass through issues.  I'm hopeful that we can get this working either in this beta or a not-too-distant future release.  Please keep testing and documenting different configurations and posting your results here!!

Link to comment
  • 3 weeks later...

Will unraid have a webgui to manage the vms when 6.x launches?

something like: http://www.qnap.com/i/station/en/virtualization.php

 

FWIW,

 

It would be nice if end users had the ability to apply patches or compile Xen on their own, and use it with unRaid.  Perhaps there are already ways of doing this that I am missing.  For instance, with Beta6, there are patches missing which keeps from using PCI Passthrough with my VM.  There are known patches that will fix that.  The issue I see here is that Lime Tech cannot issue a new beta everytime a critical Xen patch is released. 

 

If there is a documented process, someone else could compile an upgraded Xen with the proper patches, and make it available?

 

Just my 2 cents...

-Marcus

Link to comment
  • 1 month later...

Will unraid have a webgui to manage the vms when 6.x launches?

something like: http://www.qnap.com/i/station/en/virtualization.php

This whole VM thing is dead in the water if they don't have a great GUI, in my opinion.

It is not dead in the water but it is likely out of reach for "normal" users.  With that being said most all users on the forum can/could follow a step by step guide on setting up a VM.  Once done they probably won't have to touch anything or change anything again.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.