"When it comes to scale-out computing (such as cloud computing),
libvirt may be one of the most important libraries you've never
heard of. Libvirt provides a hypervisor-agnostic API to securely
manage guest operating systems running on a host. Libvirt isn't a
tool per se but an API to build tools to manage guest operating
systems. Libvirt itself is built on the idea of abstraction. It
provides a common API for common functionality that the supported
hypervisors implement. Libvirt was originally designed as a
management API for Xen, but it has since been extended to support a
number of hypervisors.
"Let's start our discussion of libvirt with a view of the use
model, then dig into its architecture and use. Libvirt exists as a
set of APIs designed to be used by a management application (see
Figure 1). Libvirt, through a hypervisor-specific mechanism,
communicates with each available hypervisor to perform the API
requests. I explore how this is done with QEMU later in the
"Also shown is a comparison of the terminology that libvirt
uses. This terminology is important, as these terms are used in API
naming. The two fundamental differences are that libvirt calls the
physical host a node, and the guest operating system is called a
domain. Note here that libvirt (and its application) runs in the
domain of the host Linux operating system (domain 0)."
Some of the products that appear on this site are from companies from which QuinStreet receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. QuinStreet does not include all companies or all types of products available in the marketplace.