← Older posts

Simplicity Scales: An Alternative Approach to OpenStack Nova RPC Messaging

Posted on by Randy Bias

Earlier this week, Eric Windisch (@ewindisch) of Cloudscaling presented an alternative mechanism for OpenStack Compute (Nova) RPC.

For those who are new to OpenStack or simply haven’t had time to delve into it’s innards, Nova uses a core asynchronous RPC/messaging system to communicate between components.  Asynchronous message passing systems are key tools in building scalable systems.  They are used in many different ways depending on the type of system you are building.  Nova has traditionally used RabbitMQ, which is an excellent choice for many.

Cloudscaling felt that RabbitMQ added unnecessary complexity to Nova deployments given what the requirements were for an asynchronous RPC message passing mechanism.  Rabbit provides a number of value added features such as store-and-forward of messages, which can actually be problematic at larger scale.  In addition, Rabbit is a centralized, broker-based model that requires deploying it in High Availability (HA) pairs and combining this with clustering (multiple HA pairs in parallel) for scaling.  We felt this was not an ideal scenario for larger Nova deployments.

The result is a completely broker-less, peer-to-peer, asynchronous message passing system based on 0MQ (ZeroMQ).  This open source pluggable driver for Nova has no centralized broker, requires no HA components, and is distributed amongst all of the Nova components.  The ZeroMQ plugin that Cloudscaling created is roughly 700 lines of Python code that plugs into the Nova Queue Abstraction Layer (QAL).  It leverages the ZeroMQ library (written in C), which is fast, portable, and proven at scale.  You will find that this plugin not only removes complexity in how Nova does messaging, but also has its performance scale linearly with the number of components.

As a brief aside, this is an example of how Cloudscaling intends to help create choice and increase the robustness and scalability of OpenStack, while reducing complexity.  Last year, we pushed back the pluggable QAL interface to OpenStack in Diablo with a driver for RabbitMQ, which maintained all functionality, while allowing us to have a place to plug in ZeroMQ in the future.  Now, as of Essex, Stackers can choose RabbitMQ or ZeroMQ depending on what they think their needs are.  We hope this is an approach that others in the community will choose.

Eric’s presentation on the ZeroMQ RPC driver for Nova is below.  It describes how ZeroMQ works and provides more depth on how it was implemented.

Posted in Cloud Computing, Technology | 2 Comments

Laying a Foundation

Posted on by Randy Bias

When we first began supporting the OpenStack project, we saw in it something that other open source cloud software projects did not have. OpenStack offered a path forward for companies that wanted to launch open cloud infrastructures in the model of AWS and Google.

That was in July of 2010. What I said was:

“OpenStack, with a strong community behind it, should be an important tool for service providers and large telcos to compete at scale with the Amazon and Googles of this world.”

It’s nearly two years later, and there is definitely a ‘strong community behind’ OpenStack. More than 165 companies have joined the project, from startups to multinational giants. And they’re not just lurking and watching. They’re contributing code. In fact, more than 200 Stackers from 55 companies contributed to Essex, the release announced last week. Want more diversity? There are more than 20 global user groups, and there are 2,600 members of the technical community.

But is OpenStack becoming ‘an important tool for service providers and large telcos to compete at scale’?

There’s no doubt about it. Companies from KT and Internap to Deutsche Telekom and HP have launched production-grade deployments on OpenStack. Beyond these marquee deployments, consider the 100,000 downloads to date.

And remember, it’s not even two years old yet.

Today, the OpenStack community is taking the next step toward becoming the most profound open source movement since Linux. Eighteen companies have stepped forward as platinum or gold members of the OpenStack Foundation. These companies are making a financial commitment to help assure the long-term, independent success of the community. Each of them committed code to Essex. They’re vested.

One of the things that makes OpenStack work is its open development process where technical  meritocracy drives the code. The community is simply too diverse for one company to impose its will. With the formation of the foundation, this philosophy becomes codified into the DNA of how OpenStack functions.

Credit Where It’s Due
I’d be remiss if I didn’t call out Rackspace for their thoughtful and balanced stewardship of the project to this point. Jim Curry, Mark Collier and their team have guided OpenStack toward today’s foundation announcement. Rackspace, and the entire OpenStack community know that the formation of the OpenStack Foundation is the correct next step to move the mantle of leadership to the community itself.

Getting on With What’s Next
It’s as true today as it was in July of 2010. OpenStack will succeed because of the diversity, engagement and energy of the community building it. And we’re not done building that community. There are tough questions to answer about governance and competition. But as the community takes care of its internal business, the market will take care of the competitive issues.

To my fellow Stackers, we’ll see you next week at the Summit to get on with the business of self governance. And join us on Monday night for a party with our co-hosts SolidFire and RightScale. There’s plenty to celebrate.

Posted in Cloud Computing, Technology | Tagged | 2 Comments ← Older posts

Required Reading

Recent Posts

Categories

Discussion


Tags

Cloudscaling Successes

Cloudscaling delivers on open cloud solutions that meet our customers business needs

Open clouds for cloud storage solutions
Open clouds provide cost-competitive public cloud offerings

Cloudscaling Careers

Open clouds are changing the game. You can too, by joining the world's most innovative cloud engineering team. Hack on OpenStack, work with other brilliant minds, and have fun while doing it!
Take a look at our career openings.
© 2012 Cloudscaling   |  
Simplicity scales.