From Fedora Project Wiki

< FWN‎ | Beats

No edit summary
Line 88: Line 88:
[http://www.redhat.com/mailman/listinfo/libvir-list libvir-list].
[http://www.redhat.com/mailman/listinfo/libvir-list libvir-list].


====  ====
==== Safe PCI Device Passthrough ====
[[MirkoRaasch|Mirko Raasch]]
asked<ref>http://www.redhat.com/archives/libvir-list/2009-June/msg00516.html</ref>
"How can i start my guest with three pci devices passed through and {{package|libvirt}}?" Starting <code>qemu</code> by hand appeared to work.
But virsh start produced an error:
<pre>
  libvirtd: 15:44:55.459: warning : pciTrySecondaryBusReset:483 : Other
devices on bus with 0000:05:01.0, not doing bus reset
</pre>
 
[[DanielBerrange|Daniel Berrange]]
recalled<ref>http://www.redhat.com/archives/libvir-list/2009-June/msg00518.html</ref>
"what <code>libvirt</code> is complaining about is that there are other devices
in the PCI bus which are not associated with this guest, and thus there
is no way to safely reset the device you are trying to assign, without
endangering the host OS or other guest OS."
 
Adding "when you launch QEMU manually there is no
checking for whether the PCI devices are in use by other guests,
or by the host OS. So while it may launch QEMU, it is not running
safely, and eg, if your guest  OS does a PCI bus reset it could
kill/harm your host OS."
 
PCI device passthrough is a new feature<ref>http://fedoraproject.org/wiki/Features/KVM_PCI_Device_Assignment</ref> in Fedora 11.
 
<references />
 
==== VMware ESX driver status update ====
[[MatthiasBolte|Matthias Bolte]]
continued<ref>http://www.redhat.com/archives/libvir-list/2009-June/msg00469.html</ref> work (FWN #177<ref>http://fedoraproject.org/wiki/FWN/Issue177#Libvirt_VMWare_ESX_Driver_In_Development</ref>) to create a VMware ESX driver for <code>libvirt</code>.
 
Matthias is currently "working on the VMX config to domain XML mapping for
dump/create XML" using the VMware Infrastructure API<ref>http://www.vmware.com/support/developer/vc-sdk/visdk25pubs/ReferenceGuide/</ref>.
 
<references />
<references />



Revision as of 05:37, 29 June 2009


Virtualization

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

Contributing Writer: Dale Bewley

Enterprise Management Tools List

This section contains the discussion happening on the et-mgmt-tools list


Fedora Virtualization List

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

F12 Feature: Host Information

Richard Jones posted[1] an RFC for a feature[2] he's working on for Fedora 12. The feature will "Allow a virtual machine to see information and statistics from the host operating system."

For example, it will "Allow a virtual machine to look at host information (such as number of physical, not just virtual CPUs), and statistics like the load on the host."

Daniel Berrange noted[3] that "a core goal of this hostinfo service is to avoid any use of networking. We don't want to presume that a guest has a NIC, nor that the host has a configured NIC on the same LAN as the guest." So this feature will make use of serial ports to pass queries and responses between the guest and the host.

libguestfs Super-minimized Appliance

Richard Jones created[1] a set of "very experimental" patches to Package-x-generic-16.pnglibguestfs "which allow you to build a so-called 'supermin (super-minimized) appliance'."

Within libguestfs, "The normal appliance is a self-contained Linux operating system, based on the Fedora/RHEL/CentOS Linux distro. So it contains a complete copy of all the libraries and programs needed, like kernel, libc, bash, coreutils etc etc."

"The supermin appliance removes the kernel and all the executable libraries and programs from the appliance. That just leaves a skeleton of config files and some data files, which is obviously massively smaller than the normal appliance. At runtime we rebuild the appliance on-the-fly from the libraries and programs on the host (eg. pulling in the real /lib/libc.so, the real /bin/bash etc.)"

"The new appliance is a mere 500K, so libguestfs RPMs will be a lot smaller. Of course that just means they will have many more dependencies, so the amount pulled down will be the same or greater."

A guest fish in the pipes

Richard Jones patched[1] Package-x-generic-16.pngguestfish. "This patch adds support for pipes to guestfish, so you can pipe output from a guestfish command through a command on the host. The canonical example is:

><fs> hexdump /bin/ls | less

Another example, looking for root backdoors in the password file:

><fs> cat /etc/passwd | awk -F: '$3 == 0 { print }' | grep -v ^root:

Anything right of the first pipe symbol gets passed to the local shell, thus expansion, redirection and so on work on that."


Libvirt List

This section contains the discussion happening on the libvir-list.

Safe PCI Device Passthrough

Mirko Raasch asked[1] "How can i start my guest with three pci devices passed through and Package-x-generic-16.pnglibvirt?" Starting qemu by hand appeared to work. But virsh start produced an error:

 libvirtd: 15:44:55.459: warning : pciTrySecondaryBusReset:483 : Other
devices on bus with 0000:05:01.0, not doing bus reset

Daniel Berrange recalled[2] "what libvirt is complaining about is that there are other devices in the PCI bus which are not associated with this guest, and thus there is no way to safely reset the device you are trying to assign, without endangering the host OS or other guest OS."

Adding "when you launch QEMU manually there is no checking for whether the PCI devices are in use by other guests, or by the host OS. So while it may launch QEMU, it is not running safely, and eg, if your guest OS does a PCI bus reset it could kill/harm your host OS."

PCI device passthrough is a new feature[3] in Fedora 11.

VMware ESX driver status update

Matthias Bolte continued[1] work (FWN #177[2]) to create a VMware ESX driver for libvirt.

Matthias is currently "working on the VMX config to domain XML mapping for dump/create XML" using the VMware Infrastructure API[3].

oVirt Devel List

This section contains the discussion happening on the ovirt-devel list.