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 
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.