I'm happy to see Release 3.2 of Eucalyptus see the light of day because it signals an important shift in the adoption cycle. Users and IT administrators now depend on Eucalyptus for their businesses and, as a result, it needed to be easier to use and with which to live. In the 3.2 release, Eucalyptus includes a number of features that make it friendlier to its users and and administrators.
When we started to develop Eucalyptus, we decided early on that we would make it work before we made it pretty. Eucalyptus was one of the first if not THE first on-premises cloud platform and at the time there was a healthy amount of skepticism about the value of deploying a cloud in an enterprise data center. We believed -- rightly or wrongly -- that the best contribution we could make was to develop a cloud platform that works before turning our attention to its ergonomics.
As Eucalyptus has become part of enterprise production IT, we have begun to focus on how to make the experience of working with it more intuitive and pleasing. To that end, release 3.2 includes
- a new Graphical User Console that enables more interactive use,
- a new accounting and reporting subsystem for tracking cloud usage, and
- new and better diagnostics and error reporting.
Our goal with these new features is to make Eucalyptus easier to "live with" over the long haul in production IT settings.
Seeing is Believing
From the beginning, it was clear that graphical management dashboards like RightScale and enStratus were an important part of the cloud tooling ecosystem. They offer well-designed, powerful graphical abstractions for reasoning about and managing the interaction between users and the cloud. In addition, however, we have learned from our customers and users that the enterprise also requires a light-weight, intuitive, and highly-available "single pane of glass" for the cloud running in the IT-managed data center.
Over the past few months, we have been working on developing a graphical User Console for Eucalyptus. It is browser-based and Linux portable so that it can run entirely on-premises with the other Eucalyptus components. It is also designed to work with Eucalyptus high-availability so that it can be used as a critical infrastructure component.
However, the most notable characteristic associated with the new user console is that it is really really cool (in my opinion, anyway). Dr. Jennifer Loza, our user experience specialist, put in a ton of work on the look and feel, including conducting a set of user studies to test the effectiveness and ease-of-use experience. I think the results are stunning. Screenshots, like the one shown below, do not do it justice.
It really has to be seen in action to be appreciated. I also have to thank everyone who gave us their unadulterated input, feedback, and criticism. This first version is definitely better as a result. With that said, the user console is by no means finished -- it will continue to evolve based on what Eucalyptus users and contributors do with it.
Another new feature is the ability to track internal cloud usage at a much finer level. When Eucalyptus first included EUARE (AWS compatible identity management for the enterprise cloud) it introduced the ability to set and monitor resource quotas, but only for a limited set of metrics. The new reporting subsystem in the 3.2 release broadens the information that is gathered throughout the system substantially, making it possible to "see" into the cloud's resource allocation in near real time. Further, it is now possible to configure an external database to serve as a data warehouse for usage information. In the enterprise, charge-back management is one of the functions we see almost always customized around specific business logic. Externalizing the accounting information in this way permits maximal flexibility for integration with local accounting systems.
It's the Cloud's Fault
Release 3.2 adds a new kind of fault logging to Eucalyptus. We went through the trouble ticket database maintained by Eucalyptus support and tried to identify the top 10 reasons a user or customer fails to get Eucalyptus running, or has Eucalyptus suddenly stop running (aside from software bugs, of course). Eucalyptus now logs and reports these problems as separate "faults," each of which can be associated with a site-local message.
For example, one common problem occurs when an installation, previously used as a proof-of-concept deployment, goes into production usage and as a result, runs out of storage space. Eucalyptus can be configured to use the site-specific storage architecture in a variety of different ways. Previously, it was difficult to determine which part of the interaction with site-supplied storage was failing. The storage management system now generates explicit faults for resource shortage making it easier and simpler to identify the problem.
Soft on the Outside, but with a Crunchy Center
In addition to the ease-of-use enhancements, release 3.2 includes support for a new SAN device (EMC VNX) and a raft of bug fixes and stability enhancements. In particular, it includes a "case-hardened" Node Controller that tolerates occasional hypervisor and Linux I/O subsystem misbehavior. The Open QA and Eutester projects expand the suite of tests that the 3.2 release has to pass. Even the user console gets a stress test.
This release also adds guard rails to the High-availability system to prevent administrators from accidentally inducing a fail-stop condition. Restarting a Eucalyptus cloud that is configured for HA can be a little tricky since HA is implemented at the component level. A component shutdown or restart is treated the same as a "hard" failure by Eucalyptus -- it will fail over and attempt to continue running. When it does finally shut all the way down, it is important for the "last master standing" to be the first master to come back up or the system risks a "split brain" condition. The system now monitors how it is being restarted and warns the administrator if it "thinks" he or she might be attempting to restart the components in a dangerous order.
Marten Mickos, our CEO, coined the phrase "soft on the outside, but with a hard, crunchy center" to describe this release -- maybe as a sort of inverted Gary Larson Polar Bear cartoon reference. Things sometimes feel like a Larson cartoon from time to time, as they should in any healthy start-up. Be that as it may, the 3.2 release inaugurates a new technical direction for Eucalyptus that takes into account both the functionality it must provide, and the ergonomics with which it provides it. Moving forward, our plan is to make the soft as soft as possible while releasing the most dependable and high-quality cloud platform available for on-premises use.