Some simple examples on how to use the Python API for libvirt The examples are: dominfo.py - print information about a running domU based on the results of virDomainGetInfo and virDomainGetXMLDesc domstart.py - create a domU from an XML description if the domU isn't running yet domsave.py - save all running domU's into a directory domrestore.py - restore domU's from their saved files in a directory esxlist.py - list active domains of an VMware ESX host and print some info. also demonstrates how to use the libvirt.openAuth() method dhcpleases.py - list dhcp leases for a given virtual network domipaddrs.py - list IP addresses for guest domains guest-vcpus - two helpers to make the guest agent event useful with agent based vCPU state modification nodestats.py - print total memory and free memory for each host NUMA node and the memory strictly bound to certain host nodes for each running domain. The XML files in this directory are examples of the XML format that libvirt expects, and will have to be adapted for your setup. They are only needed for domstart.py Some additional notes for the esxlist.py example: You may see remote errors complaining about missing certificates: Cannot access CA certificate '/usr/local/etc/pki/CA/cacert.pem': No such file or directory This is expected, libvirt tries to find network and storage drivers for ESX, but those are not implemented yet (November 2009). While searching for this drivers, libvirt may try to start a local libvirtd instance, but fails because of the missing certificates. It'll warn about that: Failed to find the network: Is the daemon running? This is also expected and can be ignored.