libvirt
A VM Guest consists of an image containing an operating system and data files and a configuration file describing the VM Guest's virtual hardware resources. VM Guests are hosted on and controlled by the VM Host Server. This section provides generalized instructions for installing a VM Guest.
Virtual machines have few if any requirements above those required to run the operating system. If the operating system has not been optimized for the virtual machine host environment, it can only run on hardware-assisted virtualization computer hardware, in full virtualization mode, and requires specific device drivers to be loaded. The hardware that is presented to the VM Guest depends on the configuration of the host.
You should be aware of any licensing issues related to running a single licensed copy of an operating system on multiple virtual machines. Consult the operating system license agreement for more information.
You can change default values that are applied when creating new virtual machines. For example, to set UEFI as the default firmware type for new virtual machines, select
› from Virtual Machine Manager's main menu, click and set as the firmware default.The
wizard helps you through the steps required to create a virtual machine and install its operating system. To start it, open the Virtual Machine Manager and select › . Alternatively, start YaST and select › .Start the
wizard either from YaST or Virtual Machine Manager.Choose an installation source—either a locally available media or a network installation source. To set up your VM Guest from an existing image, choose
.On a VM Host Server running the Xen hypervisor, you can choose whether to install a paravirtualized or a fully virtualized guest. The respective option is available under
. Depending on this choice, not all installation options may be available.Depending on your choice in the previous step, you need to provide the following data:
Specify the path on the VM Host Server to an ISO image containing the installation data. If it is available as a volume in a libvirt storage pool, you can also select it using Chapter 12, Advanced storage topics.
. For more information, seeAlternatively, choose a physical CD-ROM or DVD inserted in the optical drive of the VM Host Server.
Provide the ftp://
, http://
, and
https://
.
Under
, provide a path to an auto-installation file (AutoYaST or Kickstart, for example) and kernel parameters. Having provided a URL, the operating system should be automatically detected correctly. If this is not the case, deselect and manually select the and .To set up the VM Guest from an existing image, you need to specify the path on the VM Host Server to the image. If it is available as a volume in a libvirt storage pool, you can also select it using Chapter 12, Advanced storage topics.
. For more information, see
This installation method is suitable to create a virtual
machine, manually configure its components, and install its OS
later. To adjust the VM to a specific product version, start
typing its name—for example,
sles
—and select the desired version
when a match appears.
Choose the memory size and number of CPUs for the new virtual machine.
This step is omitted when
is chosen in the first step.
Set up a virtual hard disk for the VM Guest. Either create a new
disk image or choose an existing one from a storage pool (for more
information, see Chapter 12, Advanced storage topics). If you
choose to create a disk, a qcow2
image is created
and stored under /var/lib/libvirt/images
by
default.
Setting up a disk is optional. If you are running a live system directly from CD or DVD, for example, you can omit this step by deactivating
.On the last screen of the wizard, specify the name for the virtual machine. To be offered the possibility to review and make changes to the virtualized hardware selection, activate
. Specify the network device under . When using , the first bridge found on the host is pre-filled. To use a different bridge, manually update the text box with its name.Click
.(Optional) If you kept the defaults in the previous step, the installation starts. If you selected , a VM Guest configuration dialog opens. For more information about configuring VM Guests, see Chapter 13, Configuring virtual machines with Virtual Machine Manager.
When you are done configuring, click
.The installation starts in a Virtual Machine Manager console window. Some key combinations, such as Ctrl–Alt–F1, are recognized by the VM Host Server but are not passed to the virtual machine. To bypass the VM Host Server, Virtual Machine Manager provides the “sticky key” functionality. Pressing Ctrl, Alt, or Shift three times makes the key sticky, then you can press the remaining keys to pass the combination to the virtual machine.
For example, to pass Ctrl–Alt–F2 to a Linux virtual machine, press Ctrl three times, then press Alt–F2. You can also press Alt three times, then press Ctrl–F2.
The sticky key functionality is available in the Virtual Machine Manager during and after installing a VM Guest.
PXE boot enables your virtual machine to boot from the installation media via the network, instead of from a physical medium or an installation disk image.
To let your VM boot from a PXE server, follow these steps:
Start the installation wizard as described in Section 9.1, “GUI-based guest installation”.
Select the
method.Proceed to the last step of the wizard and activate
. Confirm with .On the
screen, select .Inspect
and activate the box next to .Under
, activate and confirm with .Start the installation by clicking
. If a PXE server is properly configured, the PXE menu screen appears.virt-install
#Edit source
virt-install
is a command-line tool that helps you
create new virtual machines using the libvirt
library. It is useful if
you cannot use the graphical user interface, or need to automatize the
process of creating virtual machines.
virt-install
is a complex script with a lot of command
line switches. The following are required. For more information, see the
man page of virt-install
(1).
--name
VM_GUEST_NAME
: Specify the
name of the new virtual machine. The name must be unique across
all guests known to the hypervisor on the same connection. It
is used to create and name the guest’s configuration file and
you can access the guest with this name from
virsh
. Alphanumeric and
_-.:+
characters are allowed.
--memory
REQUIRED_MEMORY
: Specify
the amount of memory to allocate for the new virtual machine in
megabytes.
--vcpus
NUMBER_OF_CPUS
: Specify the
number of virtual CPUs. For best performance, the number of
virtual processors should be less than or equal to the number
of physical processors.
--paravirt
: set up a paravirtualized guest.
This is the default if the VM Host Server supports paravirtualization
and full virtualization.
--hvm
: set up a fully virtualized guest.
--virt-type
HYPERVISOR
: Specify the
hypervisor. Supported values are kvm
or
xen
.
Specify one of --disk
,
--filesystem
or --nodisks
the
type of the storage for the new virtual machine. For example,
--disk size=10
creates 10 GB disk in the default
image location for the hypervisor and uses it for the VM Guest.
--filesystem
/export/path/on/vmhost
specifies the directory on the VM Host Server to be exported to the
guest. And --nodisks
sets up a VM Guest without a
local storage (good for Live CDs).
Specify the installation method using one of
--location
, --cdrom
,
--pxe
, --import
, or
--boot
.
Use the --graphics
VALUE
option to specify how to
access the installation. openSUSE Leap supports the values
vnc
or none
.
If using VNC, virt-install
tries to launch
virt-viewer
. If it is not installed or cannot be
run, connect to the VM Guest manually with your preferred viewer.
To explicitly prevent virt-install
from
launching the viewer, use --noautoconsole
. To
define a password for accessing the VNC session, use the following
syntax: --graphics
vnc,password=PASSWORD
.
In case you are using --graphics none
, you can
access the VM Guest through operating system supported services,
such as SSH or VNC. Refer to the operating system installation
manual on how to set up these services in the installation system.
It is possible to directly specify the Kernel and Initrd of the installer, for example, from a network source.
To pass additional boot parameters, use the
--extra-args
option. This can be used to specify a
network configuration. For details, see
https://en.opensuse.org/SDB:Linuxrc.
#
virt-install
--location \ "http://download.opensuse.org/pub/opensuse/distribution/leap/15.0/repo/oss" \ --extra-args="textmode=1" --name "Leap15" --memory 2048 --virt-type kvm \ --connect qemu:///system --disk size=10 --graphics vnc --network \ network=vnet_nated
By default, the console is not enabled for new virtual machines
installed using virt-install
. To enable it, use
--extra-args="console=ttyS0 textmode=1"
as in the
following example:
>
virt-install --virt-type kvm --name sles12 --memory 1024 \
--disk /var/lib/libvirt/images/disk1.qcow2 --os-variant sles12
--extra-args="console=ttyS0 textmode=1" --graphics none
After the installation finishes, the
/etc/default/grub
file in the VM image is
updated with the console=ttyS0
option on the
GRUB_CMDLINE_LINUX_DEFAULT
line.
Install OVMF as described in
Section 6.3, “Installing UEFI support”. Then add the
--boot uefi
option to the
virt-install
command.
UEFI Secure Boot is used automatically when setting up a new VM with
OVMF. To use specific firmware, use --boot
loader=PATH_TO_FIRMWARE
.
For example, for the AArch64 architecture:
--boot loader=/usr/share/qemu/qemu-uefi-aarch32.bin
And for the AMD64/Intel 64; architecture:
--boot loader=/usr/share/qemu/ovmf-x86_64-opensuse.bin
virt-install
command line #The following command line example creates a new SUSE Linux Enterprise 15 SP2 virtual machine with a virtio accelerated disk and network card. It creates a new 10 GB qcow2 disk image as a storage, the source installation media being the host CD-ROM drive. It uses VNC graphics, and it automatically launches the graphical client.
>
virt-install --connect qemu:///system --virt-type kvm \
--name sle15sp2 --memory 1024 --disk size=10 --cdrom /dev/cdrom --graphics vnc \
--os-variant sle15sp2
>
virt-install --connect xen:// --virt-type xen --hvm \
--name sle15sp2 --memory 1024 --disk size=10 --cdrom /dev/cdrom --graphics vnc \
--os-variant sle15sp2
This section provides instructions for operations exceeding the scope of a normal installation, such as memory ballooning and installing add-on products.
Some operating systems, such as openSUSE Leap, offer to include add-on products in the installation process. If the add-on product installation source is provided via SUSE Customer Center, no special VM Guest configuration is needed. If it is provided via CD/DVD or ISO image, it is necessary to provide the VM Guest installation system with both the standard installation medium image and the image of the add-on product.
If you are using the GUI-based installation, select
in the last step of the wizard and add the add-on product ISO image via › . Specify the path to the image and set the to .
If you are installing from the command line, you need to set up the
virtual CD/DVD drives with the --disk
parameter rather
than with --cdrom
. The device that is specified first
is used for booting. The following example installs SUSE Linux Enterprise Server 15
together with SUSE Enterprise Storage extension:
>
virt-install \
--name sles15+storage \
--memory 2048 --disk size=10 \
--disk /path/to/SLE-15-SP5-Full-ARCH-GM-media1.iso-x86_64-GM-DVD1.iso,device=cdrom \
--disk /path/to/SUSE-Enterprise-Storage-VERSION-DVD-ARCH-Media1.iso,device=cdrom \
--graphics vnc --os-variant sle15