Knowledge base

Usage

Secure usage

Secure usage of the libvirt APIs

Backing chain management

Explanation of how disk backing chain specification impacts libvirt's behaviour and basic troubleshooting steps of disk problems.

Virtiofs

Share a filesystem between the guest and the host

Security with QEMU passthrough

Examination of the security protections used for QEMU and how they need configuring to allow use of QEMU passthrough with host files/devices.

TLS certificates

Generate and deploy x509 certificates for TLS.

RPM deployment

Explanation of the different RPM packages and illustration of which to pick for installation

Domain state capture

Comparison between different methods of capturing domain state

Disk locking

Ensuring exclusive guest access to disks with virtlockd or Sanlock

Protected virtualization on s390

Running secure s390 guests with IBM Secure Execution

Launch security

Securely launching VMs with AMD SEV

Live full disk backup

A walkthrough of how to take effective live full disk backups.

Merging disk image chains

Ways to reduce or consolidate disk image chains.

KVM real time

Run real time workloads in guests on a KVM hypervisor

PCI hotplug

Effective usage of PCI hotplug

PCI topology

Addressing schemes for PCI devices

Memory devices

Memory devices and their use

Snapshots

Details about snapshotting a VM

Secure Boot

Enable and disable the Secure Boot feature

Connection fail after installation

Explanation of a common issue users stumble upon after installation

Debugging

Debug logs

Configuration of logging and tips on how to file a good bug report.

Systemtap

Explanation of how to use systemtap for libvirt tracing.

Capturing core dumps for QEMU

How to configure libvirt to enable capture of core dumps from QEMU virtual machines

Internals

Incremental backup internals

Incremental backup implementation details relevant for users

VM migration internals

VM migration implementation details, complementing the info in migration

API call flow overview

Overview of how an API call is handled by the libvirt library and passed over RPC to the daemon.

Spawning commands

Spawning commands from libvirt driver code

Event loop and worker pool

Libvirt's event loop and worker pool mode

Lock managers

Use lock managers to protect disk content

RPC protocol & APIs

RPC protocol information and API / dispatch guide

QEMU driver threading

Basics of locking and threaded access to qemu driver primitives.

QEMU migration internals

Description of migration phases in the v2 and v3 migration protocol.

QEMU monitor event handling

Brief outline how events emitted by qemu on the monitor are handlded.