SUSE Linux Enterprise Server 12

Virtualization Guide

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

Publication date: Feb 19 2015
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 Understanding 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
4.1 Overview
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
7 Supported Guests, Hosts and Features
7.1 Supported VM Guests
7.2 Supported VM Hosts
7.3 KVM Hardware Requirements
7.4 Feature Support
II Managing Virtual Machines with libvirt
8 Overview
9 Guest Installation
9.1 GUI-Based Guest Installation
9.2 Installing from the Command Line with virt-install
9.3 Advanced Guest Installation Scenarios
10 Basic VM Guest Management
10.1 Listing VM Guests
10.2 Opening a Graphical Console
10.3 Changing a VM Guest's State: Start, Stop, Pause
10.4 Saving and Restoring the State of a VM Guest
10.5 Creating and Managing Snapshots
10.6 Deleting a VM Guest
11 Connecting and Authorizing
11.1 Authentication
11.2 Connecting to a VM Host Server
11.3 Configuring Remote Connections
12 Managing Storage
12.1 Managing Storage with Virtual Machine Manager
12.2 Managing Storage with virsh
12.3 Locking Disk Files and Block Devices with virtlockd
12.4 Online Resizing of Guest Block Devices
13 Configuring Virtual Machines
13.1 Enabling Seamless and Synchronized Cursor Movement
13.2 Adding a CD/DVD-ROM Device with Virtual Machine Manager
13.3 Adding a Floppy Device with Virtual Machine Manager
13.4 Ejecting and Changing Floppy or CD/DVD-ROM Media with Virtual Machine Manager
13.5 Change the Machine Type with virsh
13.6 Adding a PCI Device with Virtual Machine Manager
13.7 Adding a PCI Device with virsh
13.8 Adding SR-IOV Devices
14 Administrating VM Guests
14.1 Migrating VM Guests
14.2 Monitoring
15 Save and Restore of Virtual Machines
15.1 Saving Virtual Machines
15.2 Restoring Virtual Machines
III Common Tasks
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
19 Virtual Networking
19.1 Virtual Bridges
19.2 Network Devices for Guest Systems
19.3 Host-Based Routing in Xen
19.4 Creating a Masqueraded Network Setup
19.5 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 Saving Virtual Machines
20.5 Restoring Virtual Machines
20.6 Virtual Machine States
21 Block Devices in Xen
21.1 Mapping Physical Storage to Virtual Disks
21.2 File-Backed Virtual Disks and Loopback Devices
21.3 Resizing Block Devices
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 Administration 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 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
28.6 VirtFS: Sharing Folders between Host and Guests
28.7 KSM: Sharing Memory Pages between Guests
29 KVM Disk Cache Modes
29.1 Disk Interface Cache Modes
29.2 Description of Cache Modes
29.3 Data Integrity Implications of Cache Modes
29.4 Performance Implications of Cache Modes
29.5 Effect of Cache Modes on Live Migration
30 Administrating Virtual Machines with 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 For More Information
32 Migration from LXC to libvirt-lxc
32.1 Host Migration
32.2 Container Migration
32.3 Starting the Container
Glossary
A Virtual Machine Drivers
B Appendix
B.1 Installing Paravirtualized Drivers
B.2 Generating x509 Client/Server Certificates
C XM, XL Toolstacks and Libvirt framework
C.1 Xen Toolstacks
C.2 Import Xen Domain Configuration into libvirt
C.3 Differences between the xm and xl applications
C.4 External links
C.5 Saving a Xen Guest Configuration in an xm Compatible Format
D Documentation Updates
D.1 February 2015 (Documentation Maintenance Update)
D.2 October 2014 (Initial Release of SUSE Linux Enterprise Server 12)
E GNU Licenses
E.1 GNU Free Documentation License

Copyright © 2006– 2015 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 and Novell trademarks, see the Novell Trademark and Service Mark list http://www.novell.com/company/legal/trademarks/tmlist.html. All other third party trademarks are the property of their respective owners. A trademark symbol (®, ™ etc.) denotes a SUSE or Novell trademark; an asterisk (*) denotes a third party trademark.

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