The virt-manager application is a desktop user interface for management of virtual machines and containers through the libvirt library.
Virt-manager shows all domains as running or inactive, presents performance data and utilization statistics. Virt-manager enables the easy creation of new domains, storage, network connections. Virt-manager also can reallocate host resources amongst the guest domain.
Virt-manager primarily handles KVM VMs, but also manages Xen and LXC (linux containers).
It presents a summary view of running domains, their live performance & resource utilization statistics.
Wizards enable the creation of new domains, and configuration & adjustment of a domain’s resource allocation & virtual hardware.
An embedded VNC and SPICE client viewer presents a full graphical console to the guest domain .
- Firstly, virt-manager is a front-end to QEMU.
- virt-manager can create/delete/maintain an instance of many virtual machine (VM).
- virt-manager can start/stop a VM or a container.
- virt-manager can mount a CD-ROM ISO image.
- virt-manager can create different networking connections for the guest OS in VM to use.
- virt-manager can create bridges, MACVLAN, static netdev, and NAT'd IP interface.
- virt-manager can create/delete/maintain storage pools using many different filesystems such as directory, direct hard drive, gluster, iSCSI, LVM, multi-path devices, netfs, SCSI, RADOS/Ceph, and Sheepdog.
Verify that the host hardware has the needed virtualization support, issue the following command:
grep --color -E "vmx|svm" /proc/cpuinfo
The vmx or svm CPU flag should be red highlighted and available.
And file /dev/kvm must exist as well:
Return back to QEMU for compliance.
USE flags for app-emulation/virt-manager A graphical tool for administering virtual machines
||Enable support for a graphical user interface|
||Enables sys-auth/polkit authentication support, required when using app-emulation/libvirt with PolicyKit authentication|
||Depend on the proper libraries needed to connect to SASL-enabled libvirtd instances (e.g. Kerberos-protected instances).|
||Enable dependencies and/or preparations necessary to run tests (usually controlled by FEATURES=test but can be toggled independently)|
If virt-manager is going to be used, be sure to enable the
spiceUSE flags on the qemu package for correct operation.
Additional ebuild configuration frobs are provided as the USE_EXPAND variables QEMU_USER_TARGETS and QEMU_SOFTMMU_TARGETS. See app-emulation/qemu for a list of all the available targets (there are a heck of a lot of them; most of them are very obscure and may be ignored; leaving these variables at their default values will disable almost everything which is probably just fine for most users).
For each target specified, a qemu executable will be built. A
softmmu target is the standard qemu use-case of emulating an entire system (like VirtualBox or VMWare, but with optional support for emulating CPU hardware along with peripherals).
user targets execute user-mode code only; the (somewhat shockingly ambitious) purpose of these targets is to "magically" allow importing user-space linux ELF binaries from a different architecture into the native system (that is, they are like multilib, without the awkward need for a software stack or CPU capable of running it).
In order to enable QEMU_USER_TARGETS and QEMU_SOFTMMU_TARGETS we can edit the variables globally in /etc/portage/make.conf, i.e.:
QEMU_SOFTMMU_TARGETS="arm x86_64 sparc" QEMU_USER_TARGETS="x86_64"
Or, the /etc/portage/package.use file(s) can be modified. Two equivalent syntaxes are available: traditional USE flag syntax, i.e.:
app-emulation/qemu qemu_softmmu_targets_arm qemu_softmmu_targets_x86_64 qemu_softmmu_targets_sparc app-emulation/qemu qemu_user_targets_x86_64
Another alternative is to use the newer sexy USE_EXPAND-specific syntax:
app-emulation/qemu QEMU_SOFTMMU_TARGETS: arm x86_64 sparc QEMU_USER_TARGETS: x86_64
emerge --ask app-emulation/virt-manager
To start :
To start virt-manager with the configuration window to gentoo guest, using default QEMU UNIX socket connection:
virt-manager --connect qemu:///system --show-domain-editor gentoo
usage: virt-manager [options] optional arguments: -h, --help show this help message and exit --version show program's version number and exit -c URI, --connect URI Connect to hypervisor at URI --debug Print debug output to stdout (implies --no-fork) --no-fork Don't fork into background on startup --show-domain-creator Show 'New VM' wizard --show-domain-editor NAME|ID|UUID Show domain details window --show-domain-performance NAME|ID|UUID Show domain performance window --show-domain-console NAME|ID|UUID Show domain graphical console window --show-domain-delete NAME|ID|UUID Show domain delete window --show-host-summary Show connection details window Also accepts standard GTK arguments like --g-fatal-warnings
virt-manager gui doesn't start
Version 4.1.0 changed USE flags, switching from
gtk flag to
gui. In order to (re)enable gui, the user must enable the
gui flag before (re)build the package.
echo "app-emulation/virt-manager gui" >> /etc/portage/package.use/app-emulation
no polkit agent available to authenticate action 'org.libvirt.unix.manage'
This usually results from you not being in the
libvirt group. Add the user to the group with:
usermod -aG libvirt user
emerge --ask --depclean --verbose app-emulation/virt-manager
- Virtualization — the concept and technique that permits running software in an environment separate from a computer operating system.
- QEMU — a generic, open source hardware emulator and virtualization suite.
- QEMU/QEMU front-ends — user interface application to the QEMU/libvirt API/library.
- Libvirt — a virtualization management toolkit.
- Libvirt/QEMU_networking — details the setup of Gentoo networking by Libvirt for use by guest containers and QEMU-based virtual machines.
- Libvirt/QEMU_guest — covers libvirt and its creation of a virtual machine (VM) for use under the soft-emulation mode QEMU hypervisor Type-2, notably using virsh command.
- Virt-manager/QEMU_guest — QEMU creation of a guest (VM or container)