After presenting VM2, I was introduced to the Red Hat team doing oVirt. oVirt is a layer on top of libvirt to help manage virtual machines on a single host or a farm of machines. Since it uses libvirt, it will ultimately be able to target multiple hypervisors, but KVM is obviously the focus these days.
Since oVirt has made such great progress in handling more than localhost VMs, it seems like a good foundation for building an EC2 type of cloud within your own datacenter (or laptop).
So I've begun work on a thin EC2 API layer. By providing an EC2 API on top of oVirt, cloud tooling can treat the EC2 API as a common interface, regardless of your ultimate virtualization fabric or where its actually hosted.
The Eucalyptus team has done some work on host-your-own-EC2-compatible cloud, so it's certainly feasible.
Once we have a common API for interacting with clouds, we can then work up the stack, using JOPR, to manage the virtual nodes we've deployed.
Here's the diagram-of-the-week to demonstrate. Blue bits are JBoss.org projects, red bits come from the Red Hat teams, and yellow are your own applications and servers.
