5 Virtualization tools #
libvirt
is a library that provides a common API for managing popular
virtualization solutions, among them KVM and Xen. The library
provides a normalized management API for these virtualization solutions,
allowing a stable, cross-hypervisor interface for higher-level management
tools. The library also provides APIs for management of virtual networks
and storage on the VM Host Server. The configuration of each VM Guest is stored
in an XML file.
With libvirt
you can also manage your VM Guests remotely. It supports
TLS encryption, x509 certificates and authentication with SASL. This
enables managing VM Host Servers centrally from a single workstation,
alleviating the need to access each VM Host Server individually.
Using the libvirt
-based tools is the recommended way of managing
VM Guests. Interoperability between libvirt
and libvirt
-based
applications has been tested and is an essential part of SUSE's support
stance.
5.1 Virtualization console tools #
libvirt
includes several command line utilities to manage virtual
machines. The most important ones are:
virsh
(Package: libvirt-client)A command line tool to manage VM Guests with similar functionality as the Virtual Machine Manager. Allows you to change a VM Guest's status (start, stop, pause, etc.), to set up new guests and devices, or to edit existing configurations.
virsh
is also useful to script VM Guest management operations.virsh
takes the first argument as a command and further arguments as options to this command:virsh [-c URI] COMMAND DOMAIN-ID [OPTIONS]
Like
zypper
,virsh
can also be called without a command. In this case it starts a shell waiting for your commands. This mode is useful when having to run subsequent commands:~> virsh -c qemu+ssh://wilber@mercury.example.com/system Enter passphrase for key '/home/wilber/.ssh/id_rsa': Welcome to virsh, the virtualization interactive terminal. Type: 'help' for help with commands 'quit' to quit virsh # hostname mercury.example.com
virt-install
(Package: virt-install)A command line tool for creating new VM Guests using the
libvirt
library. It supports graphical installations via VNC or SPICE protocols. Given suitable command line arguments,virt-install
can run completely unattended. This allows for easy automation of guest installs.virt-install
is the default installation tool used by the Virtual Machine Manager.remote-viewer
(Package: virt-viewer)A simple viewer of a remote desktop. It supports SPICE and VNC protocols.
virt-clone
(Package: virt-install)A tool for cloning existing virtual machine images using the
libvirt
hypervisor management library.virt-host-validate
(Package: libvirt-client)A tool that validates whether the host is configured in a suitable way to run
libvirt
hypervisor drivers.
5.2 Virtualization GUI tools #
The following libvirt-based graphical tools are available on openSUSE Leap. All tools are provided by packages carrying the tool's name.
- Virtual Machine Manager (package: virt-manager)
The Virtual Machine Manager is a desktop tool for managing VM Guests. It provides the ability to control the lifecycle of existing machines (start/shutdown, pause/resume, save/restore) and create new VM Guests. It allows managing various types of storage and virtual networks. It provides access to the graphical console of VM Guests with a built-in VNC viewer and can be used to view performance statistics.
virt-manager
supports connecting to a locallibvirtd
, managing a local VM Host Server, or a remotelibvirtd
managing a remote VM Host Server.To start the Virtual Machine Manager, enter
virt-manager
at the command prompt.NoteTo disable automatic USB device redirection for VM Guest using spice, either launch
virt-manager
with the--spice-disable-auto-usbredir
parameter or run the following command to persistently change the default behavior:>
dconf write /org/virt-manager/virt-manager/console/auto-redirect falsevirt-viewer
(Package: virt-viewer)A viewer for the graphical console of a VM Guest. It uses SPICE (configured by default on the VM Guest) or VNC protocols and supports TLS and x509 certificates. VM Guests can be accessed by name, ID, or UUID. If the guest is not already running, the viewer can be told to wait until the guest starts, before attempting to connect to the console.
virt-viewer
is not installed by default and is available after installing the packagevirt-viewer
.NoteTo disable automatic USB device redirection for VM Guest using spice, add an empty filter using the
--spice-usbredir-auto-redirect-filter=''
parameter.yast2 vm
(Package: yast2-vm)A YaST module that simplifies the installation of virtualization tools and can set up a network bridge: