OpenStack 'Grizzly' control freak puffs up clouds of vastness
Parity support across hypervisors, broader networking, other goodies
The OpenStack community is keeping faithful to its six-month spring-fall cadence for software releases: today, the world receives an OpenStack update codenamed Grizzly.
The project's update cycle allows the cloud controller to be improved at a fairly rapid clip, and is roughly in sync with upgrades for popular Linux operating systems distros. It may be hard to believe, but the Grizzly package announced today is the seventh OpenStack release into the wild.
And according to Mark Collier - who formed the OpenStack project with former NASA CTO Chris Kemp nearly three years ago and who is now chief operating officer at the OpenStack Foundation - the code-base for the Grizzly release weighs in at about 820,000 lines of code for the core OpenStack controller and the ten core sub-projects associated with it.
That's about a 35 per cent increase in lines of code compared to the "Folsom" release of OpenStack, which was arguably the first production-grade release of the cloud controller that came out in late September. OpenStack is written in Python, by the way.
The Grizzly release has 230 new features, says Collier, and there were at least 517 contributors to the overall release, which includes a slew of stability and performance tweaks as well as new features.
The contributor count is up 56 per cent compared to the Folsom release. The key code contributors for Grizzly came from Red Hat, Rackspace, IBM, Hewlett-Packard, Nebula (which was founded by Kemp and which has created an OpenStack controller appliance that debuted this week), Intel, eNovance, Canonical, VMware, Cloudscaling, DreamHost, and SINA.
"Grizzly is a great release on a lot of fronts, but what has been truly great about the release is the collaboration," Jonathan Bryce, an ex-Racker who is executive director at the OpenStack Foundation these days, told El Reg. "This is one of the largest software projects in the world, and every time a merge comes in, it is automatically tested before it is accepted."
More than 7,600 patches were merged into the OpenStack code during the Grizzly release cycle, and Bryce said that the code was spun up and tested on an average of 700 baby OpenStack clouds each day for the past six months before each code snippet was accepted into the base. That baby cloud capacity is donated by Rackspace, Hewlett-Packard, and others from their public clouds.
With Grizzly, OpenStack is being tweaked to get it closer to the lofty scalability goals that NASA and Rackspace set when they founded the project back in 2010, which was to have a cloud controller fabric that could span 1 million physical server nodes and up to 60 million virtual machines.
Grizzly is nowhere near this upper limit, but with a new feature called Compute Cells and an architectural change to how hosts in an OpenStack cluster talk back to the controller, Bryce said the scalability of Grizzly is considerably larger than Folsom.
The Compute Cells feature aggregates multiple OpenStack controllers and manages them as a single instance. Basically, it takes multiple Nova compute controller instances from OpenStack and links them through an AMQP broker to each other, with each Nova cell managing its own subset of server nodes in the cluster but under the control of a master Nova controller.
Clouds of hot air? Piffle - Rackspace is using it in production
Rackspace has been using the Nova Compute Cells feature in production on its Cloud Servers public cloud since August, and it was not cooked enough to make it into the Folsom release, but now it is ready for Grizzly. Bryce said that as Grizzly currently stands, it can scale to thousands of server nodes in standalone mode, and with cells it can easily scale to tens of thousands of nodes.
Another contributor to increased scalability with the Grizzly release of OpenStack is a new NoDB (as in no database) data layer, which is an architectural change to the way the Nova controller works: the update takes some of the dependencies out between hosts and the Nova controller and to push more of the work down into the hosts. The upshot is that there is a lot less chatter between the servers and the controller, which means Nova can manage more nodes.
Bryce said that with the Grizzly release, a lot of work has been done to get all of the x86 hypervisors on par when used in conjunction with OpenStack. Red Hat's KVM and Citrix Systems' Xeon hypervisors had a lot of work done on them from the get-go alongside OpenStack, and VMware had done a reasonable amount of work with its ESXi hypervisor to make it OpenStack friendly. With the Grizzly release, a lot of work has been done to bring Microsoft's Hyper-V up to speed.
"For the most part, all of the hypervisors are very close in terms of feature sets for basic virtualization, snapshotting, and other commonly used features," said Bryce, referring to how they relate to OpenStack, not how they are used in the wild.
Interestingly, OpenStack does not expect companies to deploy multiple hypervisors on their clouds, and in fact, what Bryce says happens most of the time is that a company picks one hypervisor and goes with it.
The Grizzly controller also has some enhancements for bare-metal server provisioning and the ability to hot add and remove networking devices from servers under its thumb.
OpenStack networking has five new networking plugins for Big Switch, Hyper-V, PlumGrid, Brocade, and Midonet networking stacks, which adds to the existing support for VMware Open vSwitch and Cisco Nexus 1000V virtual switches as well as Linux Bridge and OpenFlow controllers from VMware, Ryu, and NEC.
Grizzly has a new framework to offering load balancing as a service across clusters and is able to distribute L3/L4 network traffic and DHCP services across multiple servers in a cluster. The storage part of the control freak now has ten more block storage drivers, including ones for Ceph/RBD, Coraid, EMC, HP, Huawei, IBM, NetApp, Red Hat/Gluster, SolidFire, and Zadara file systems or arrays.
With Grizzly out the door, all efforts will now turn to the future "Havana" release, which is slated for October of this year. The OpenStack Summit kicks off in two weeks in Portland, Oregon, where the OpenStackers will converge to hammer out what features to add to the control freak.
Two incubator projects during the Grizzly development cycle are expected to become two new sub-projects for OpenStack during the Havana cycle, according to Bryce. The first is called Heat, and it is a template-based orchestration engine for OpenStack. The second is called Ceilometer, and it is a metering and monitoring tool that collects information to pump into billing systems. ®