Less is better
The Austin release includes a server image management system called Glance, which as you might expect given the name is a graphical user interface to help administrators as they wrestle with thousands of physicals servers and countless virtual servers and the storage allocated to them. Glance allows admins to take snapshots of running VMs and store them out onto the storage clouds controlled by the Swift storage controller.
Nova was originally coded to make use of local storage inside of physical servers, not a storage cloud, but did have APIs that allowed it to mimic Amazon's EC2 compute and S3 storage clouds, so in theory data could be stored out there on the Amazon cloud and Nova could control Amazon server images. The Glance tool can similarly interface with S3 and other external storage clouds, if companies want to point their VMs to external storage or just park backups of server images out there.
You might be thinking that a cloud fabric controller and a graphical user interface implemented in Python would have lots of code, but according to Bryce, the two programs combined have under 10,000 lines of code. "Less is better," Bryce quips.
The Austin release sees a bunch of other changes, aside from dropping porting portions of Nova that were written in C and C++ to Python, adding more hypervisors, and bolting on the Glace interface between OpenStack compute and storage clouds. The original Nova code made use of the Redis distributed key value store of metadata relating to compute and storage instances, but Bryce says that this has been replaced with SQLAlchemy, which is a database extraction layer that is part of the Python toolkit that will allow for metadata to be stored in MySQl, PostgreSQL, or even SQL Server if you want.
The Austin release retains the EC2 and S3 APIs in the original Nova cloud fabric controller, but it also has a whole new set of APIs that tie directly into OpenStack features that are not part of EC2 or S3. While people have been making some noise about OpenStack abandoning the Amazon-compatible APIs, Bryce says that in fact some Rackers have been making enhancements to the EC2 and S3 features for the Austin release.
While both NASA and Rackspace are using the Austin release of the Nova and Swift code in production, Bryce does not advise service providers or enterprises eager to build clouds to jump the gun. Because these two companies built the code and are intimate with it, NASA and Rackspace can do this across thousands of servers that they already have in production.
The code is perfectly fine for doing proof of concepts and testing on modest-sized clouds. Rackspace does not plan to move fully over to the OpenStack code until the second quarter of 2011, a couple of releases from now, when it will have the scale that the hoster requires for its cloudy infrastructure.
The design goal for OpenStack, as El Reg has divulged, is for it to control one million servers and 60 million virtual machines.
The OpenStack project is hosting its next design conference in San Antonio in November, where it will hammer out the feature set for the next release, nicknamed "Bexar" after the county where that Texas city resides, due in January 2011. The hot topics, no doubt, will be adding support for VMware's ESX Server and Microsoft's Hyper-V hypervisors, which are both necessary for OpenStack to be as ubiquitous as its proponents want it to be. ®