Get in Touch

Course Outline

Day 1

  • Overview of the virtualization ecosystem
  • Evolution of QEMU development
  • CPU features supporting virtualization
  • Installing QEMU via distribution packages
  • Compiling and installing QEMU from source
  • Full-system emulation techniques
  • Utilizing the QEMU console
  • Understanding available machine types and peripheral devices
  • Introduction to VirtIO
  • Guest drivers
  • Disk image formats
  • Managing virtual machine snapshots
  • Networking configuration for virtual machines
  • Graphics adapters
  • Audio devices
  • Nested virtualization
  • User-level emulation
  • Registering foreign binaries using binfmt_misc
  • Cross-architecture chroots and containers

Day 2

  • The role of Libvirt within the virtualization ecosystem
  • Supported hypervisors and container technologies
  • QEMU Machine Protocol (QMP)
  • Running QEMU in headless mode
  • QXL video card and SPICE display
  • Available SPICE viewers
  • Creating virtual machines using the "virt-install" and "virt-clone" command-line tools
  • Creating and managing virtual machines via the "virt-manager" graphical interface
  • Editing virtual machine configurations and Libvirt settings using the "virsh" low-level utility
  • Manipulating disk image contents using Libguestfs tools (guestfish, virt-sysprep)
  • Networking and firewall management within Libvirt
  • Remote access to Libvirt
  • Overview of web-based frontends for Libvirt
  • Key takeaways from recent KVM-related conferences

Bonus topics (available in classroom sessions only; remote courses provide only brief descriptions without demonstrations):

  • Running Mac OS X in KVM (requires at least one participant to have a Mac with Linux installed)
  • 3D graphics support using VirGL
  • 3D graphics with Intel GPU (Broadwell, Skylake, or early Kabylake families—5th to 7th generation, not newer) using igvtg, or the equivalent "mediated passthrough" for Nvidia Quadro and Tesla cards
  • Video card passthrough (requires a desktop with two video cards, preferably AMD)
  • USB device pass-through

Requirements

Proficiency in general Linux command line operations and a working knowledge of TCP/IP networking.

 14 Hours

Testimonials (3)

Related Categories