When we designed our our public and private cloud products, we needed to choose from several competing “cloud platforms” — the software that runs on top of our bare metal servers and ties them together into a single platform. We had a couple of requirements: it had to be flexible enough for us to use as a foundation for creating our vision of a cloud platform, and it had to be widely used and actively developed.
We chose OpenStack, an open source cloud platform developed by some of the biggest hitters in the open source and cloud industry, including Red Hat, NASA, IBM, Intel and dozens of other companies. OpenStack is as close to a standard as exists in the cloud space, and it offered just the functionality we needed.
We’ve done a lot of work on top of OpenStack so that our cloud platform is optimized for hosting business-critical enterprise applications and services, but to understand how ServerMania’s cloud works, it’s useful to have an understanding of what OpenStack is.
What Is OpenStack?
OpenStack is not a monolithic application; it’s a collection of applications, each of which has responsibility for handling a particular function or service within a cloud platform.
To take one example, Nova is OpenStack’s “cloud computing fabric controller.” It is capable of managing and automating the use of compute resources across a huge number of compute nodes (physical servers). Nova is great because it makes it relatively easy to scale a cloud platform horizontally — new nodes can be added at will and Nova will handle the integration seamlessly.
OpenStack includes other components for network management (Neutron), storage (Cinder), and almost everything else a full-fledged cloud platform needs.
The Power Of Standardization
One of the major benefits of OpenStack is that it’s a de facto standard in the cloud industry. That’s important to large organizations that don’t want to be locked into a particular vendor’s platform. Enterprise organizations can create tools that interface with one OpenStack cloud’s API and they’ll be useable on any OpenStack platform.
As Red Hat CEO Jim Whitehurst expressed it:
“The promise of the cloud has greatly eliminated the days when large technology providers tried to one up each other with giant, closed systems. But that promise is dependent on standardization. Thus, the more than 200 companies supporting OpenStack are striving toward a flexible, standardized platform that works interchangeably with any infrastructure. This is extremely important, especially since many financial companies have spent years investing millions of dollars in IT.”
Standardization is powerful, but it doesn’t mean every OpenStack cloud platform is identical. The specific implementation is crucial.
OpenStack As A Foundation
OpenStack is a standard platform with which it’s possible to build many different specific platforms. In the case of ServerMania, we focused on high-availability, something that isn’t readily available on every OpenStack-based platform. High-availability means that we engineered our platform to be fault tolerant and resilient to failures in any particular node.
The result is a cloud platform suitable for hosting the most critical applications: if a specific compute or storage node develops a fault, we can quickly fail over to an alternative node and the application will continue to function at peak performance.
Our OpenStack implementation also makes it much easier to scale private cloud platforms, and our bespoke interface offers an intuitive and straightforward cloud management experience.
OpenStack is the tool we use to build solutions to the real-world requirements of enterprise organizations.