Ganeti?
Its basically a virtualization cluster management system. Install it with KVM or Xen on a few servers, give it a lvm volume group to work with on each. You can then deploy and manage (migrate, fail over, grow, etc) virtual machines to the cluster in various configurations, including with mirrored disks using DRBD, all from the master node. It also has an HTTP API.
The OSL (disclaimer: I worked there as a student sysadmin for a few years) is also working on a pretty neat web interface for managing Ganei clusters: http://code.osuosl.org/projects/ganeti-webmgr/wiki/Screensho...
With Ganeti Web Manager we're building towards software that will let you manage your own private or public cloud service.