I talked this week to Jonathan Bryce and Mark Collier of OpenStack to look at the motivations behind the enhancements in the Havana release announced today. We focused on the main event–official support for the Ceilometer metering/monitoring project and the Heat orchestration project–but covered a few small bullet items as well.
My first reaction to hearing of Ceilometer was that it would support hosting, where it’s critical to charge customers for usage. But in fact, Ceilometer has several other uses, notably for alerting and performance.
Third-party hosting is certainly a key market for OpenStack (after all, it came partly out of Rackspace, and several other vendors hope to provide hosting services on top of it), but Bryce and Collier said they’ve seen interest in private hosting increase a lot recently. Many organizations want to run OpenStack on their own servers as well as expand into the public cloud if they have overflow demand. Standards, of course, of which OpenStack is the grand master, make this easier.
And companies with internal OpenStack deployments also like metering for internal charging.
Metering can slurp up a lot of resources, but the Ceilometer architecture distributes the data collection among multiple systems. They don’t attempt to provide real-time statistics: instead, each system takes care of the meters for which it is responsible, and sends them to a central node at a convenient time.
On the performance side, Ceilometer lets you trace resource usage to a particular user, which in turn lets sites determine whether a particular application is hogging resources. Thus, among the 21 items that Ceilometer can track, the ones most frequently requested are CPU usage, network usage, and disk I/O. These are good for performance tracking.
And what if an application is receiving a lot of traffic and legitimately needs more resources? Here, Ceilometer and Heat collaborate. An alert from Ceilometer can kick off a script in Heat to add more resources, implementing auto-scaling.
By the way, Bryce and Collier assured me there are no privacy issues with metering, because the data is all available to the OpenStack operator in any case, and is already consulted by operators frequently.
Some other topics we covered included:
- Networking, long an area of uncertainty, is pretty stable now. The Quantum project is officially rechristened Neutron.
- The popular Docker project, which implements containers for Linux, is now integrated with OpenStack. Containers are not a new concept (I first saw them implemented by Sun Microsystems) and are considered by many people a light-weight alternative to the virtualization that is central to OpenStack. But now you can distribute and install an OpenStack VM as a Docker bundle.
- Many vendors offer Quality of Service at the block storage level–for instance, prioritizing I/O requests from a particular user–and OpenStack now makes it work across many block storage devices by different vendors.
- Volume migration allows you to move storage between storage environments from different vendors. For instance, if a low-priority application suddenly starts to become popular, you can redeploy it quickly on a storage system with more speed and capacity.
- You can now boot a VM from a remote disk, making it easier to clone a VM.
So there’s an incomplete overview. Now it’s on to Icehouse!