openSUSE Leap 42.3

Virtualization Guide

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

Publication Date: August 15, 2017
About This Manual
Available Documentation
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 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
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)
12 Managing Networks
12.1 Virtual Networks
12.2 Bridged Networking
13 Configuring Virtual Machines
13.1 Machine Setup
13.2 Storage
13.3 Controllers
13.4 Networking
13.5 Enabling Seamless and Synchronized Mouse Pointer Movement
13.6 Adding a CD/DVD-ROM Device with Virtual Machine Manager
13.7 Adding a Floppy Device with Virtual Machine Manager
13.8 Ejecting and Changing Floppy or CD/DVD-ROM Media with Virtual Machine Manager
13.9 Changing the Machine Type with virsh
13.10 Assigning a Host PCI Device to a VM Guest
13.11 Assigning a Host USB Device to a VM Guest
13.12 Adding SR-IOV Devices
III Hypervisor-Independent Features
14 Disk Cache Modes
14.1 Disk Interface Cache Modes
14.2 Description of Cache Modes
14.3 Data Integrity Implications of Cache Modes
14.4 Performance Implications of Cache Modes
14.5 Effect of Cache Modes on Live Migration
15 VM Guest Clock Settings
15.1 KVM: Using kvm_clock
15.2 Xen Virtual Machine Clock Settings
16 libguestfs
16.1 VM Guest Manipulation Overview
16.2 Package Installation
16.3 Guestfs Tools
16.4 Troubleshooting
16.5 External References
IV Managing Virtual Machines with Xen
17 Setting Up a Virtual Machine Host
17.1 Best Practices and Suggestions
17.2 Managing Dom0 Memory
17.3 Network Card in Fully Virtualized Guests
17.4 Starting the Virtual Machine Host
17.5 PCI Pass-Through
17.6 USB Pass-Through with PVUSB
18 Virtual Networking
18.1 Network Devices for Guest Systems
18.2 Host-Based Routing in Xen
18.3 Creating a Masqueraded Network Setup
18.4 Special Configurations
19 Managing a Virtualization Environment
19.1 XL—Xen Management Tool
19.2 Automatic Start of Guest Domains
19.3 Event Actions
19.4 Time Stamp Counter
19.5 Saving Virtual Machines
19.6 Restoring Virtual Machines
19.7 Virtual Machine States
20 Block Devices in Xen
20.1 Mapping Physical Storage to Virtual Disks
20.2 Mapping Network Storage to Virtual Disk
20.3 File-Backed Virtual Disks and Loopback Devices
20.4 Resizing Block Devices
20.5 Scripts for Managing Advanced Storage Scenarios
21 Virtualization: Configuration Options and Settings
21.1 Virtual CD Readers
21.2 Remote Access Methods
21.3 VNC Viewer
21.4 Virtual Keyboards
21.5 Dedicating CPU Resources
21.6 HVM Features
22 Administrative Tasks
22.1 The Boot Loader Program
22.2 Sparse Image Files and Disk Space
22.3 Migrating Xen VM Guest Systems
22.4 Monitoring Xen
22.5 Providing Host Information for VM Guest Systems
23 XenStore: Configuration Database Shared between Domains
23.1 Introduction
23.2 File System Interface
24 Xen as a High-Availability Virtualization Host
24.1 Xen HA with Remote Storage
24.2 Xen HA with Local Storage
24.3 Xen HA and Private Bridges
V Managing Virtual Machines with QEMU
25 QEMU Overview
26 Setting Up a KVM VM Host Server
26.1 CPU Support for Virtualization
26.2 Required Software
26.3 KVM Host-Specific Features
27 Guest Installation
27.1 Basic Installation with qemu-system-ARCH
27.2 Managing Disk Images with qemu-img
28 Running Virtual Machines with qemu-system-ARCH
28.1 Basic qemu-system-ARCH Invocation
28.2 General qemu-system-ARCH Options
28.3 Using Devices in QEMU
28.4 Networking in QEMU
28.5 Viewing a VM Guest with VNC
29 Virtual Machine Administration Using QEMU Monitor
29.1 Accessing Monitor Console
29.2 Getting Information about the Guest System
29.3 Changing VNC Password
29.4 Managing Devices
29.5 Controlling Keyboard and Mouse
29.6 Changing Available Memory
29.7 Dumping Virtual Machine Memory
29.8 Managing Virtual Machine Snapshots
29.9 Suspending and Resuming Virtual Machine Execution
29.10 Live Migration
29.11 QMP - QEMU Machine Protocol
VI Managing Virtual Machines with LXC
30 Linux Containers
30.1 Setting Up LXC Distribution Containers
30.2 Setting Up LXC Application Containers
30.3 Securing a Container Using AppArmor
30.4 Differences Between the libvirt LXC Driver and LXC
30.5 For More Information
31 Migration from LXC to libvirt-lxc
31.1 Host Migration
31.2 Container Migration
31.3 Starting the Container
Glossary
A Appendix
A.1 Generating x509 Client/Server Certificates
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– 2017 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 http://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