Libvirt is a C toolkit to interact with the virtualization capabilities ofrecent versions of Linux (and other OSes), but libvirt won't try to provideall possible interfaces for interacting with the virtualization features.
To avoid ambiguity about the terms used here here are the definitions forsome of the specific concepts used in libvirt documentation:
Now we can define the goal of libvirt: to provide the lowest possiblegeneric and stable layer to manage domains on a node.
This implies the following:
So libvirt should be a building block for higher level management toolsand for applications focusing on virtualization of a single node (the onlyexception being domain migration between node capabilities which may need tobe added at the libvirt level). Where possible libvirt should be extendableto be able to provide the same API for remote nodes, however this is not thecase at the moment, the code currently handle only local node accesses(extension for remote access support is being worked on, seethe mailing listdiscussions about it).
Graphics and design by Diana Fong