Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
openSUSE Leap 15.1

Virtualization Guide

Describes virtualization technology in general, and introduces libvirt—the unified interface to virtualization—and detailed information on specific hypervisors.

Publication Date: April 21, 2020
About This Manual
Available Documentation
Giving Feedback
Documentation Conventions
Product Life Cycle and Support
I Introduction
1 Virtualization Technology
1.1 Overview
1.2 Virtualization Capabilities
1.3 Virtualization Benefits
1.4 Virtualization Modes
1.5 I/O Virtualization
2 Introduction to Xen Virtualization
2.1 Basic Components
2.2 Xen Virtualization Architecture
3 Introduction to KVM Virtualization
3.1 Basic Components
3.2 KVM Virtualization Architecture
4 Introduction to Linux Containers
5 Virtualization Tools
5.1 Virtualization Console Tools
5.2 Virtualization GUI Tools
6 Installation of Virtualization Components
6.1 Installing KVM
6.2 Installing Xen
6.3 Installing Containers
6.4 Patterns
6.5 Installing UEFI Support
II Managing Virtual Machines with libvirt
7 Starting and Stopping libvirtd
8 Guest Installation
8.1 GUI-Based Guest Installation
8.2 Installing from the Command Line with virt-install
8.3 Advanced Guest Installation Scenarios
9 Basic VM Guest Management
9.1 Listing VM Guests
9.2 Accessing the VM Guest via Console
9.3 Changing a VM Guest's State: Start, Stop, Pause
9.4 Saving and Restoring the State of a VM Guest
9.5 Creating and Managing Snapshots
9.6 Deleting a VM Guest
9.7 Migrating VM Guests
9.8 Monitoring
10 Connecting and Authorizing
10.1 Authentication
10.2 Connecting to a VM Host Server
10.3 Configuring Remote Connections
11 Managing Storage
11.1 Managing Storage with Virtual Machine Manager
11.2 Managing Storage with virsh
11.3 Locking Disk Files and Block Devices with virtlockd
11.4 Online Resizing of Guest Block Devices
11.5 Sharing Directories between Host and Guests (File System Pass-Through)
11.6 Using RADOS Block Devices with libvirt
12 Managing Networks
12.1 Virtual Networks
12.2 Bridged Networking
13 Configuring Virtual Machines with Virtual Machine Manager
13.1 Machine Setup
13.2 Storage
13.3 Controllers
13.4 Networking
13.5 Input Devices
13.6 Video
13.7 USB Redirectors
13.8 Miscellaneous
13.9 Adding a CD/DVD-ROM Device with Virtual Machine Manager
13.10 Adding a Floppy Device with Virtual Machine Manager
13.11 Ejecting and Changing Floppy or CD/DVD-ROM Media with Virtual Machine Manager
13.12 Assigning a Host PCI Device to a VM Guest
13.13 Assigning a Host USB Device to a VM Guest
14 Configuring Virtual Machines with virsh
14.1 Editing the VM Configuration
14.2 Managing Guest Memory Allocation (Xen only)
14.3 Changing the Machine Type
14.4 Configuring CPU Allocation
14.5 Changing Boot Options
14.6 Configuring Memory Allocation
14.7 Adding a PCI Device
14.8 Adding a USB Device
14.9 Adding SR-IOV Devices
14.10 Configuring Storage Devices
14.11 Configuring Video Devices
14.12 Configuring Network Devices
14.13 Using Macvtap to Share VM Host Server Network Interfaces
14.14 Disabling a Memory Balloon Device
14.15 Configuring Multiple Monitors (Dual Head)
III Hypervisor-Independent Features
15 Disk Cache Modes
15.1 Disk Interface Cache Modes
15.2 Description of Cache Modes
15.3 Data Integrity Implications of Cache Modes
15.4 Performance Implications of Cache Modes
15.5 Effect of Cache Modes on Live Migration
16 VM Guest Clock Settings
16.1 KVM: Using kvm_clock
16.2 Xen Virtual Machine Clock Settings
17 libguestfs
17.1 VM Guest Manipulation Overview
17.2 Package Installation
17.3 Guestfs Tools
17.4 Troubleshooting
17.5 External References
IV Managing Virtual Machines with Xen
18 Setting Up a Virtual Machine Host
18.1 Best Practices and Suggestions
18.2 Managing Dom0 Memory
18.3 Network Card in Fully Virtualized Guests
18.4 Starting the Virtual Machine Host
18.5 PCI Pass-Through
18.6 USB Pass-Through
19 Virtual Networking
19.1 Network Devices for Guest Systems
19.2 Host-Based Routing in Xen
19.3 Creating a Masqueraded Network Setup
19.4 Special Configurations
20 Managing a Virtualization Environment
20.1 XL—Xen Management Tool
20.2 Automatic Start of Guest Domains
20.3 Event Actions
20.4 Time Stamp Counter
20.5 Saving Virtual Machines
20.6 Restoring Virtual Machines
20.7 Virtual Machine States
21 Block Devices in Xen
21.1 Mapping Physical Storage to Virtual Disks
21.2 Mapping Network Storage to Virtual Disk
21.3 File-Backed Virtual Disks and Loopback Devices
21.4 Resizing Block Devices
21.5 Scripts for Managing Advanced Storage Scenarios
22 Virtualization: Configuration Options and Settings
22.1 Virtual CD Readers
22.2 Remote Access Methods
22.3 VNC Viewer
22.4 Virtual Keyboards
22.5 Dedicating CPU Resources
22.6 HVM Features
23 Administrative Tasks
23.1 The Boot Loader Program
23.2 Sparse Image Files and Disk Space
23.3 Migrating Xen VM Guest Systems
23.4 Monitoring Xen
23.5 Providing Host Information for VM Guest Systems
24 XenStore: Configuration Database Shared between Domains
24.1 Introduction
24.2 File System Interface
25 Xen as a High-Availability Virtualization Host
25.1 Xen HA with Remote Storage
25.2 Xen HA with Local Storage
25.3 Xen HA and Private Bridges
V Managing Virtual Machines with QEMU
26 QEMU Overview
27 Setting Up a KVM VM Host Server
27.1 CPU Support for Virtualization
27.2 Required Software
27.3 KVM Host-Specific Features
28 Guest Installation
28.1 Basic Installation with qemu-system-ARCH
28.2 Managing Disk Images with qemu-img
29 Running Virtual Machines with qemu-system-ARCH
29.1 Basic qemu-system-ARCH Invocation
29.2 General qemu-system-ARCH Options
29.3 Using Devices in QEMU
29.4 Networking in QEMU
29.5 Viewing a VM Guest with VNC
30 Virtual Machine Administration Using QEMU Monitor
30.1 Accessing Monitor Console
30.2 Getting Information about the Guest System
30.3 Changing VNC Password
30.4 Managing Devices
30.5 Controlling Keyboard and Mouse
30.6 Changing Available Memory
30.7 Dumping Virtual Machine Memory
30.8 Managing Virtual Machine Snapshots
30.9 Suspending and Resuming Virtual Machine Execution
30.10 Live Migration
30.11 QMP - QEMU Machine Protocol
VI Managing Virtual Machines with LXC
31 Linux Containers
31.1 Setting Up LXC Distribution Containers
31.2 Setting Up LXC Application Containers
31.3 Securing a Container Using AppArmor
31.4 Differences between the libvirt LXC Driver and LXC
31.5 Sharing Namespaces across Containers
31.6 For More Information
32 Migration from LXC to libvirt-lxc
32.1 Host Migration
32.2 Container Migration
32.3 Starting the Container
A Appendix
B XM, XL Toolstacks and Libvirt framework
B.1 Xen Toolstacks
B.2 Import Xen Domain Configuration into libvirt
B.3 Differences between the xm and xl Applications
B.4 External links
B.5 Saving a Xen Guest Configuration in an xm Compatible Format
C GNU Licenses
C.1 GNU Free Documentation License

Copyright © 2006– 2020 SUSE LLC and contributors. All rights reserved.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or (at your option) version 1.3; with the Invariant Section being this copyright notice and license. A copy of the license version 1.2 is included in the section entitled GNU Free Documentation License.

For SUSE trademarks, see https://www.suse.com/company/legal/. All other third-party trademarks are the property of their respective owners. Trademark symbols (®, ™ etc.) denote trademarks of SUSE and its affiliates. Asterisks (*) denote third-party trademarks.

All information found in this book has been compiled with utmost attention to detail. However, this does not guarantee complete accuracy. Neither SUSE LLC, its affiliates, the authors nor the translators shall be held liable for possible errors or the consequences thereof.

Print this page