Libvirt

2012/12/30 openstack

License: (CC 3.0) BY-NC-SA

what is libvirt

wikipedia

libvirt is an open source API, daemon and management tool for managing platform virtualization. It can be used to manage Linux KVM, Xen, VMware ESX, qemu and other virtualization technologies. These APIs are widely used in Orchestration Layer for Hypervisors in the development of a cloud based solution.

http://libvirt.org/

A toolkit to interact with the virtualization capabilities of recent versions of Linux (and other OSes), the goal of libvirt is to provide a common and stable layer sufficient to securely manage domains on a node, possibly remote.

libvirt is a free software available under the GNU Lesser General Public License, and a long term stable C API. it supports common language bingding, and provides a CIM provider for the DMTF virtualization schema and a QMF agent for the AMQP/QPid messaging system.

from libvirt faq, it describes as:

“Libvirt is collection of software that provides a convenient way to manage virtual machines and other virtualization functionality, such as storage and network interface management. These software pieces include an API library, a daemon (libvirtd), and a command line utility (virsh).

An primary goal of libvirt is to provide a single way to manage multiple different virtualization providers/hypervisors. For example, the command ‘virsh list –all’ can be used to list the existing virtual machines for any supported hypervisor (KVM, Xen, VMWare ESX, etc.) No need to learn the hypervisor specific tools! “

it supports:

  1. common hypervisors: KVM/QEMU, XEN, VirtualBox, VMware ESX and GSX, VMware Workstation and Player, Microsoft Hyper-V and etc.
  2. linux container system like LXC and OpenVC, and paravirtualized kernel like User Mode Linux.
  3. virtual networks: NAT, VEPA and VN-LINK
  4. storage: IDE/SCSI/USB disks, FibreChannel, LVM, iSCSI, NFS and filesystems

what libvirt can do

  1. Remote management using TLS encryption and x509 certificates
  2. Remote management authenticating with Kerberos and SASL
  3. Local access control using PolicyKit
  4. Zero-conf discovery using Avahi multicast-DNS
  5. Management of virtual machines, virtual networks and storage
  6. Portable client API for Linux, Solaris and Windows

Search

    Table of Contents