From Fedora Project Wiki

< FWN‎ | Beats

(→‎Libvirt List: add VirtualBox Support, Run QEMU Guests Within a CGroup)
 
(245 intermediate revisions by 3 users not shown)
Line 2: Line 2:


{{Anchor|Virtualization}}
{{Anchor|Virtualization}}


== Virtualization ==
== Virtualization ==
In this section, we cover discussion on the @et-mgmnt-tools-list, @fedora-xen-list, @libvirt-list and @ovirt-devel-list of Fedora virtualization technologies.  
In this section, we cover discussion of Fedora virtualization technologies on the
@fedora-virt list.


Contributing Writer: [[User:Dale | Dale Bewley]]
Contributing Writer: [[User:Dale | Dale Bewley]]
=== Enterprise Management Tools List ===
This section contains the discussion happening on the
[http://www.redhat.com/mailman/listinfo/et-mgmt-tools et-mgmt-tools list]
==== virt-manager Redesigned 'New VM' Wizard ====
Cole Robinson with the help of Tim Allen and Jeremy Perry
started<ref>http://www.redhat.com/archives/et-mgmt-tools/2009-February/msg00084.html</ref> work on a resdesign of the {{package|virt-manager}} guest creation wizard, because
"The original design was largely based on <code>xen</code> specific assumptions and the
state of <code>libvirt</code>/<code>virtinst</code> at the time: many of those assumptions don't
apply today, or require a bit more thought since we now support both
<code>xen</code>
and <code>qemu</code> based VMs." See the post for full details on the long list of changes and screenshots<ref>http://fedorapeople.org/~crobinso/virt-manager/newvm2/</ref>.
<references />
==== Hot Add USB Device to Guest ====
Cole Robinson answered<ref>http://www.redhat.com/archives/et-mgmt-tools/2009-February/msg00063.html</ref> a question about hot adding a USB device to a running guest. The steps are
"Use 'lsusb' to determine the bus and device", use this to create an XML
snippet<ref>http://www.libvirt.org/formatdomain.html#elementsUSB</ref>, and then feed that snippet to '<code>virsh attach-device</code>.
<references />


=== Fedora Virtualization List ===
=== Fedora Virtualization List ===
Line 34: Line 14:
[http://www.redhat.com/mailman/listinfo/fedora-virt fedora-virt list].
[http://www.redhat.com/mailman/listinfo/fedora-virt fedora-virt list].


==== Fedora Virt Status Update ====
==== Virt Status Report ====
[[User:markmc|Mark McLoughlin]] posted<ref>http://www.redhat.com/archives/fedora-virt/2009-February/msg00093.html</ref> another  weekly status update including details on numerous virtualization developments and bugs.
[[JustinForbes|Justin Forbes]]
<references />
posted<ref>http://www.redhat.com/archives/fedora-virt/2009-December/msg00056.html</ref> a Fedora virtualization status report.  
 
Justin pointed out F13 bugs<ref>http://fedoraproject.org/wiki/Virtualization_bugs</ref> now include Important and Pony classifications in addition to Blocker and Target.
==== Improved Guest Mouse Pointer Movement ====
[[DanielBerrange|Daniel P. Berrange]] announced<ref>http://www.redhat.com/archives/fedora-virt/2009-February/msg00083.html</ref> an improvement to mouse pointer movement in Fedora 10 and 11 <code>KVM</code> guests.
 
"The default mouse for KVM guests is a PS/2 mouse. This causes pain for users
because it only works with relative coordinates, which means we are forced to
grab the mouse pointer in the VNC client.
 
KVM can emulate a USB graphics tablet which works in absolute coordinate mode,
and thus gives flawless mouse motion tracking without needing any grab in the
client." <ref>https://bugzilla.redhat.com/show_bug.cgi?id=487025</ref>
 
USB tablet will now be used by default {{package|python-virtinst}} in F11.


<references />
<references />


==== Approved F11 Virtualization Features ====
==== RHEL and Fedora Virtualization Feature Parity ====
Chris Lalancette relayed<ref>http://www.redhat.com/archives/fedora-virt/2009-February/msg00097.html</ref> the outcome of the [[FESCO]] meeting on February 27<ref>http://fedoraproject.org/wiki/Extras/SteeringCommittee/Meeting-20090227</ref> as it relates to virtualization.
Robert Day wondered how the virtualization features<ref>http://www.redhat.com/virtualization/rhev/</ref> of Red Hat Enterprise Linux 5.4
 
compared to Fedora 12.
Features approved for inclusion in Fedora 11 at this time are:
* http://fedoraproject.org/wiki/Features/KVM_PCI_Device_Assignment
* http://fedoraproject.org/wiki/Features/SVirt_Mandatory_Access_Control
* http://fedoraproject.org/wiki/Features/VirtImprovedConsole
* http://fedoraproject.org/wiki/Features/VirtVNCAuth
 
Deferred to Fedora 12 was:
* http://fedoraproject.org/wiki/Features/Shared_Network_Interface
* http://fedoraproject.org/wiki/Features/KVM_and_QEMU_merge


On the <code>KVM</code> and <code>QEMU</code> merge, [[DanielBerrange|Daniel P. Berrange]] explained<ref>http://www.redhat.com/archives/fedora-virt/2009-February/msg00094.html</ref> that "The <code>QEMU</code> upstream release will be so close to the feature freeze, that we don't
[[DanielBerrange|Daniel Berrange]]  
want to risk causing <code>KVM</code> regressions by trying to then merge the two.
explained<ref>http://www.redhat.com/archives/fedora-virt/2009-December/msg00040.html</ref>
Hopefully come F12, more of the <code>KVM</code> bits will be in <code>QEMU</code> mainline, so
"The KVM based virtualization in RHEL-5.4 is not nearly so far behind
work we need todo to merge would be minimal."
Fedora as you might think. The {{package|libvirt}} mgmt stack in RHEL-5.4 was
rebased to be near parity with [[Releases/11|Fedora 11]], and KVM in RHEL-5.4 is
also pretty close to that using what's best described as a hybrid of
kvm-83 and kvm-84."


<references />
<references />


=== Fedora Xen List ===
This section contains the discussion happening on the
[http://www.redhat.com/mailman/listinfo/fedora-xen fedora-xen list].
==== dom0 Kernel Experimentation Continues ====
Michael Young made his work more accessible when he began<ref>http://www.redhat.com/archives/fedora-xen/2009-February/msg00035.html</ref> creating experimental dom0 kernel builds<ref>http://koji.fedoraproject.org/koji/taskinfo?taskID=1178436</ref> within [[Koji]]. This latest <code>kernel</code> has gotten as far as booting in single user mode.


====  ====
<references />
<references />


=== Libvirt List ===
====  ====
This section contains the discussion happening on the
[http://www.redhat.com/mailman/listinfo/libvir-list libvir-list].
 
==== About Libvirt VirtIO and Xen ====
Patrick Archibal had a few questions<ref>http://www.redhat.com/archives/libvir-list/2009-February/msg00422.html</ref> about virtualization and the relation of <code>libvirt</code><ref>http://www.libvirt.org/</ref>, <code>VirtIO</code><ref>http://wiki.libvirt.org/page/Virtio</ref>, <code>KVM</code><ref>http://kvm.qumranet.com/kvmwiki</ref>, and <code>Xen</code><ref>http://www.xen.org/</ref>. [[DanielBerrange|Daniel P. Berrange]] took the time to provide a detailed response<ref>http://www.redhat.com/archives/libvir-list/2009-February/msg00423.html</ref> to each of Patrick's questions. A selection follows.
 
* What is the difference between <code>libvirt</code> and <code>virtio</code>?
"<code>libvirt</code> provides a API for the host OS, allowing management of virtual
machines, storage, networking, host devices, etc.
 
<code>virtio</code> is basically providing paravirtualized device drivers between guest
and host, and has several aspects
: A generic infrastructure layer in guest kernel for writing device drivers that talk to the host
: A generic host<->guest data transport running as a PCI device
: A generic host<->guest data transport using a ring buffer
: Guest implementations for paravirt network, disk & memory balloon drivers
: QEMU host backends for network, disk & memory balloon drivers"
 
* Why must hypervisor developers (<code>Xen</code> and <code>KVM</code>) develop drivers each time there are new devices?
"The <code>virtio</code> infrastructure is intended to provide generic drivers that can be
used on any hypervisor. Currently supports <code>KVM</code> and <code>LGuest</code>. <code>Xen</code> has its own
device drivers because they were developed years ago outside the context of
the Linux kernel community just for Xen's needs."
 
* Can we use <code>VirtIO</code> with <code>Xen</code>?
"VirtIO is currently only supported for KVM and LGuest. It could in
theory be implemented for Xen too, but its not clear if it is worth
the effort."
 
<references />
 
==== Encrypted VNC to Guests and TLS ====
Michael Kress wanted<ref>http://www.redhat.com/archives/libvir-list/2009-February/msg00479.html</ref> to encrypt the session between a windows <code>VNC</code> client and a <code>KVM</code> guest. The thread was long with a lot of back and forth touching on windows clients, certificate setup, and {{package|stunnel}}.
 
[[DanielBerrange|Daniel P. Berrange]] pointed out <code>libvirt</code>'s <code>RemoteTLS</code><ref>http://virt-manager.org/page/RemoteTLS</ref> documentation and described<ref>http://www.redhat.com/archives/libvir-list/2009-February/msg00526.html</ref> the Fedora 11 feature VirtVNCAuth<ref>http://fedoraproject.org/wiki/Features/VirtVNCAuth</ref> which dovetails with <code>VeNCrypt</code><ref>http://sourceforge.net/projects/vencrypt</ref>
to "Define a mapping of SASL authentication into the VNC protocol, and implement it for QEMU and GTK-VNC, providing strongly authenticated, securely encrypted remote access of virtual guest consoles."
 
<references />
 
==== VirtualBox Support ====
Pritesh Kothari has been working<ref>http://www.redhat.com/archives/libvir-list/2009-February/msg00488.html</ref> on adding <code>Virtualbox</code><ref>http://www.virtualbox.org/</ref> support to <code>libvirt</code>. Most of the functionality is complete, but Pritesh sought help with working out the domain XML format<ref>http://libvirt.org/formatdomain.html</ref>.
 
<references />
 
==== Run QEMU Guests Within a CGroup ====
[[DanielBerrange|Daniel P. Berrange]] posted<ref>http://www.redhat.com/archives/libvir-list/2009-February/msg00503.html</ref> a proof of concept patch set with this explaination.
 
"Recent Linux kernels have a new concept of 'CGroups'<ref>http://www.mjmwired.net/kernel/Documentation/cgroups.txt</ref> which is a way to
group tasks on the system and apply policy to them as a whole. We already
use this in the LXC container driver(FWN#146<ref>http://fedoraproject.org/wiki/FWN/Issue146#cgroups_API_and_LXC_Driver_Support</ref>), to control total memory usage of
things runing within a container.
 
This patch series is a proof of concept to make use of CGroups in the
QEMU driver. The idea is that we have a 3 level cgroup hierarchy
 
* Top level; contains the libvirtd daemon itself
* 2nd level: one per libvirt driver, but dos not contain any processes.
* 3rd level: one per guest VM. Contains the QEMU process
 
The host admin can do control on the top level and 2nd  level to set an
overall system policy. libvirt will then provide APIs / capabilities to
control individual VMs policy."
 
<references />
<references />

Latest revision as of 18:09, 18 December 2009



Virtualization

In this section, we cover discussion of Fedora virtualization technologies on the @fedora-virt list.

Contributing Writer: Dale Bewley

Fedora Virtualization List

This section contains the discussion happening on the fedora-virt list.

Virt Status Report

Justin Forbes posted[1] a Fedora virtualization status report. Justin pointed out F13 bugs[2] now include Important and Pony classifications in addition to Blocker and Target.

RHEL and Fedora Virtualization Feature Parity

Robert Day wondered how the virtualization features[1] of Red Hat Enterprise Linux 5.4 compared to Fedora 12.

Daniel Berrange explained[2] "The KVM based virtualization in RHEL-5.4 is not nearly so far behind Fedora as you might think. The Package-x-generic-16.pnglibvirt mgmt stack in RHEL-5.4 was rebased to be near parity with Fedora 11, and KVM in RHEL-5.4 is also pretty close to that using what's best described as a hybrid of kvm-83 and kvm-84."