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

Virtualization Guide

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

Publication Date: December 16, 2020
About This Manual
Available Documentation
Giving Feedback
Documentation Conventions
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 Virtualization Tools
4.1 Virtualization Console Tools
4.2 Virtualization GUI Tools
5 Installation of Virtualization Components
5.1 Installing KVM
5.2 Installing Xen
5.3 Installing Containers
5.4 Patterns
5.5 Installing UEFI Support
5.6 Enable Support for Nested Virtualization in KVM
II Managing Virtual Machines with libvirt
6 Starting and Stopping libvirtd
7 Guest Installation
7.1 GUI-Based Guest Installation
7.2 Installing from the Command Line with virt-install
7.3 Advanced Guest Installation Scenarios
8 Basic VM Guest Management
8.1 Listing VM Guests
8.2 Accessing the VM Guest via Console
8.3 Changing a VM Guest's State: Start, Stop, Pause
8.4 Saving and Restoring the State of a VM Guest
8.5 Creating and Managing Snapshots
8.6 Deleting a VM Guest
8.7 Migrating VM Guests
8.8 Monitoring
9 Connecting and Authorizing
9.1 Authentication
9.2 Connecting to a VM Host Server
9.3 Configuring Remote Connections
10 Managing Storage
10.1 Managing Storage with Virtual Machine Manager
10.2 Managing Storage with virsh
10.3 Locking Disk Files and Block Devices with virtlockd
10.4 Online Resizing of Guest Block Devices
10.5 Sharing Directories between Host and Guests (File System Pass-Through)
10.6 Using RADOS Block Devices with libvirt
11 Managing Networks
11.1 Network Bridge
11.2 Virtual Networks
12 Configuring Virtual Machines with Virtual Machine Manager
12.1 Machine Setup
12.2 Storage
12.3 Controllers
12.4 Networking
12.5 Input Devices
12.6 Video
12.7 USB Redirectors
12.8 Miscellaneous
12.9 Adding a CD/DVD-ROM Device with Virtual Machine Manager
12.10 Adding a Floppy Device with Virtual Machine Manager
12.11 Ejecting and Changing Floppy or CD/DVD-ROM Media with Virtual Machine Manager
12.12 Assigning a Host PCI Device to a VM Guest
12.13 Assigning a Host USB Device to a VM Guest
13 Configuring Virtual Machines with virsh
13.1 Editing the VM Configuration
13.2 Changing the Machine Type
13.3 Configuring Hypervisor Features
13.4 Configuring CPU Allocation
13.5 Changing Boot Options
13.6 Configuring Memory Allocation
13.7 Adding a PCI Device
13.8 Adding a USB Device
13.9 Adding SR-IOV Devices
13.10 Listing Attached Devices
13.11 Configuring Storage Devices
13.12 Configuring Controller Devices
13.13 Configuring Video Devices
13.14 Configuring Network Devices
13.15 Using Macvtap to Share VM Host Server Network Interfaces
13.16 Disabling a Memory Balloon Device
13.17 Configuring Multiple Monitors (Dual Head)
14 Managing Virtual Machines with Vagrant
14.1 Introduction to Vagrant
14.2 Vagrant Boxes for SUSE Linux Enterprise
14.3 Further Reading
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
18 QEMU Guest Agent
18.1 Running QEMU GA Commands
18.2 virsh Commands that Require QEMU GA
18.3 Enhancing libvirt Commands
18.4 For More Information
IV Managing Virtual Machines with Xen
19 Setting Up a Virtual Machine Host
19.1 Best Practices and Suggestions
19.2 Managing Dom0 Memory
19.3 Network Card in Fully Virtualized Guests
19.4 Starting the Virtual Machine Host
19.5 PCI Pass-Through
19.6 USB Pass-Through
20 Virtual Networking
20.1 Network Devices for Guest Systems
20.2 Host-Based Routing in Xen
20.3 Creating a Masqueraded Network Setup
20.4 Special Configurations
21 Managing a Virtualization Environment
21.1 XL—Xen Management Tool
21.2 Automatic Start of Guest Domains
21.3 Event Actions
21.4 Time Stamp Counter
21.5 Saving Virtual Machines
21.6 Restoring Virtual Machines
21.7 Virtual Machine States
22 Block Devices in Xen
22.1 Mapping Physical Storage to Virtual Disks
22.2 Mapping Network Storage to Virtual Disk
22.3 File-Backed Virtual Disks and Loopback Devices
22.4 Resizing Block Devices
22.5 Scripts for Managing Advanced Storage Scenarios
23 Virtualization: Configuration Options and Settings
23.1 Virtual CD Readers
23.2 Remote Access Methods
23.3 VNC Viewer
23.4 Virtual Keyboards
23.5 Dedicating CPU Resources
23.6 HVM Features
23.7 Virtual CPU Scheduling
24 Administrative Tasks
24.1 The Boot Loader Program
24.2 Sparse Image Files and Disk Space
24.3 Migrating Xen VM Guest Systems
24.4 Monitoring Xen
24.5 Providing Host Information for VM Guest Systems
25 XenStore: Configuration Database Shared between Domains
25.1 Introduction
25.2 File System Interface
26 Xen as a High-Availability Virtualization Host
26.1 Xen HA with Remote Storage
26.2 Xen HA with Local Storage
26.3 Xen HA and Private Bridges
V Managing Virtual Machines with QEMU
27 QEMU Overview
28 Setting Up a KVM VM Host Server
28.1 CPU Support for Virtualization
28.2 Required Software
28.3 KVM Host-Specific Features
29 Guest Installation
29.1 Basic Installation with qemu-system-ARCH
29.2 Managing Disk Images with qemu-img
30 Running Virtual Machines with qemu-system-ARCH
30.1 Basic qemu-system-ARCH Invocation
30.2 General qemu-system-ARCH Options
30.3 Using Devices in QEMU
30.4 Networking in QEMU
30.5 Viewing a VM Guest with VNC
31 Virtual Machine Administration Using QEMU Monitor
31.1 Accessing Monitor Console
31.2 Getting Information about the Guest System
31.3 Changing VNC Password
31.4 Managing Devices
31.5 Controlling Keyboard and Mouse
31.6 Changing Available Memory
31.7 Dumping Virtual Machine Memory
31.8 Managing Virtual Machine Snapshots
31.9 Suspending and Resuming Virtual Machine Execution
31.10 Live Migration
31.11 QMP - QEMU Machine Protocol
VI Managing Virtual Machines with LXC
32 Linux Containers
32.1 Setting Up LXC Distribution Containers
32.2 Setting Up LXC Application Containers
32.3 Securing a Container Using AppArmor
32.4 Differences between the libvirt LXC Driver and LXC
32.5 Sharing Namespaces across Containers
32.6 For More Information
33 Migration from LXC to libvirt-lxc
33.1 Host Migration
33.2 Container Migration
33.3 Starting the Container
Glossary
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