Virtualization in Fedora 11 includes major changes, and new features, that continue to support KVM, Xen, and many other virtual machine platforms.
5.3.1. Improved VNC Authentication for Virtual Machine Management
Fedora 11 introduces the ability to use the SASL protocol for authenticating VNC connection to KVM and QEMU virtual machines. SASL is a pluggable system, allowing many different authentication mechanisms to be configured without changing the application code. The use of SASL, in combination with existing TLS encryption support, will allow clients like vinagre, virt-viewer and virt-manager to securely connect to remote virtual machine consoles hosted on Fedora servers. In environments where Kerberos is deployed, this further allows for secure single sign on to the VNC server. This new authentication capability obsoletes the traditional VNC password scheme which is not sufficiently secure.
5.3.2. 为虚拟机改进的图形控制台
Previous Fedora virtual guest consoles were limited to a screen resolution of 800x600, and the PS2 mouse pointer operated in relative coordinate mode. This prevented the guest pointer from tracking the local client pointer one for one.
Fedora 11 provides more accurate mouse pointer positioning and higher screen resolutions for virtual machine consoles. Fedora 11 guests default to a screen resolution of at least 1024x768, and are provided with a USB tablet in absolute coordinate mode. This results in a mouse pointer which tracks the local client pointer one for one.
Fedora 11 expands its virtualization capabilities to include KVM PCI device assignment support. KVM users can now give virtual machines exclusive access to physical PCI devices using Fedora's virtualization tools, including the Virtual Machine Manager application.
注意
硬件需求:此特性需要Intel VT-d或AMD IOMMU平台支持。
QEMU provides a processor and system emulator which enables users to launch guest virtual machines of the same architecture as the host machine or of a dramatically different architecture. KVM provides kernel level support for running guests of the same architecture as the host.
QEMU takes advantage of KVM to run guests directly on the hardware without any translation needed by the host, allowing much higher levels of performance.
Fedora 11 includes a merge of the
qemu and
kvm RPMs. The
kvm package is now obsoleted by
pngqemu-kvm. The merging of the two code bases continues upstream, but the Fedora package maintainers have chosen to merge the packages now in order reduce the maintenance burden and provide better support.
5.3.5. SVirt Mandatory Access Control
Fedora 11 integrates SELinux's Mandatory Access Control with Virtualization. Virtual machines can now be much more effectively isolated from the host and one another, giving the increased assurance that security flaws cannot be exploited by malicious guests.
5.3.6. Offline Manipulation of Virtual Machines
libguestfs is a new library for accessing and modifying guest disk images. Using Linux kernel and QEMU code, libguestfs can access any type of guest filesystem that Linux and QEMU can.
The following tools are provided by libguestfs:
guestfish - Provides an interactive shell for editing virtual machine filesystems and executing commands in the context of the guest.
virt-inspector - Displays OS version, kernel, drivers, mount points, applications, etc. in a virtual machine.
Bindings for OCaml, Perl, Python, Ruby, and Java programming languages.
Fedora也包含了下列虚拟化改进
5.3.7.1. QEMU 更新至 0.10.0
QEMU是一个通用开源仿真器和模拟器。
When used as a machine emulator, QEMU can run OSes and programs made for one machine (e.g. an ARM board) on a different machine (e.g. your own PC). By using dynamic translation, it achieves very good performance.
When used as a virtualizer, QEMU achieves near native performance by executing the guest code directly on the host CPU. A host driver called the QEMU accelerator (also known as KQEMU) is needed in this case. The virtualizer mode requires that both the host and guest machine use x86 compatible processors.
New features and improvements since 0.9.1:
TCG 支持 - 不再需要 GCC 3.x
内核虚拟机加速支持
BS 用户空间仿真
Bluetooth emulation and host passthrough support
GDB XML register description support
Intel e1000 仿真
HPET 仿真
VirtIO 半虚拟设备支持
Marvell 88w8618 / MusicPal 仿真
Nokia N-series tablet emulation / OMAP2 processor emulation
PCI 热插拔支持
Live 迁移和新的保存/恢复格式
光标显示支持
qemu-nbd utility to mount supported block formats
Altivec support in PPC emulation and new firmware (OpenBIOS)
现已支持多个VNC客户端。
VNC现支持TLS加密
很多、很多 bug 修复和新特性
KVM (for Kernel-based Virtual Machine) is a full virtualization solution for Linux on x86 hardware.
Using KVM, one can run multiple virtual machines running unmodified Linux or Windows images. Each virtual machine has private virtualized hardware: a network card, disk, graphics adapter, etc.
5.3.7.3. libvirt 更新至 0.6.1
The libvirt package provides an API and tools to interact with the virtualization capabilities of recent versions of Linux (and other OSes). The libvirt software is designed to be a common denominator among all virtualization technologies with support for the following:
5.3.7.4. virt-manager 更新至 0.7.0
The virt-manager package provides a GUI implementation of virtinst and libvirt functionality.
5.3.7.5. virtinst 更新至 0.400.3
python-virtinst 软件包包含安装以及操作多 VM 客户端映像格式的工具。
Fedora 11 supports booting as a domU guest, but will not function as a dom0 host until such support is provided in the upstream kernel. Support for a pv_ops dom0 is targeted for Xen 3.4.
Xen 3.3.1是3.3的维护版本。
The kernel package in Fedora 11 supports booting as a guest domU, but will not function as a dom0 until such support is provided upstream. Work is ongoing and hopes are high that support will be included in kernel 2.6.30 and Fedora 12.
最早可以支持dom0的Fedora发行版是Fedora 8。
Booting a Xen domU guest within a Fedora 11 host requires the KVM based xenner. Xenner runs the guest kernel and a small Xen emulator together as a KVM guest.
重要
KVM要求宿主机系统具有硬件虚拟化功能。目前系统没有硬件虚拟化功能的不支持 Xen 客户端。