In part one of “What is OpenStack? The Basics,” my aim was to get you from zero to 60 on, well, the basics of this open source cloud platform, to see if it’s right for your organization.
For part two, I want to cover the high level pros and cons of using OpenStack; while I’d love to say OpenStack is just pure magic, the truth is, every piece of software or tool has its shortcomings. The trick is knowing whether the benefits outweigh those shortcomings.
I’ll start off with the cons, then conclude with the pros. I find that visual aids helps paint a clearer picture, so please follow along with me as I recap the slide below:
The cons of OpenStack
Initial install/implementation can be painful. If you’ve tried to deploy OpenStack in the past, you can likely understand the feeling of wanting to hit your monitor with the keyboard like the gentleman in the picture above left.
I will openly admit that early on, deploying OpenStack was just plain hard. Really really hard. The good news is, deployment has gotten increasingly easier — but it’s still not easy. It will be important to carve out extra time for your deployments, in case you encounter speed bumps. It’s also important to go in with a high-level design for your OpenStack cloud. Using a managed service provider, like Rackspace, can remove this pain point all together. We’re big believers in OpenStack as a service.
Services mature over time — aka don’t jump the gun. It’s easy to get caught up in the excitement of adopting a brand-new OpenStack project. But just like with most technologies, OpenStack projects mature over time. The rule of thumb that has always kept me in a safe zone was to wait 1-2 releases before considering a new project production ready.
You can also use the OpenStack Foundation’s Project Navigator as your guide. Just do your research, test and put in the due diligence before blindly rolling out that fancy new project. (Again, Rackspace handles this piece of the puzzle for you as a customer. We make sure that every project running on your cloud is production ready and fully supported.)
You have to tell OpenStack what you want it to do. Unlike virtualization platforms that have had years to orchestrate operator type functions, OpenStack is not there yet. If you need your instances to be spread across compute nodes for fault tolerance purposes, you have to tell OpenStack to do that. I wouldn’t rate this has a huge con, more just something to be aware of. All the capability you need is there, you just have to plan for it and automate it when possible.
The pros of OpenStack
On to all the pros OpenStack can bring to your organization, right out of the box! Keep in mind the list below is just a few of the features and benefits OpenStack as a private cloud offers.
Fully distributed architecture. While this may seem like a trivial thing, not having all your systems or components running on a single set of machines is a huge technology advantage. OpenStack allows you to break up the services, backend components and data plane in almost in way you wish. Rackspace Private Cloud powered by OpenStack reference architecture calls for four infrastructure nodes (control plane) and separate nodes to run either compute or storage.
Because of the fully distributed nature of OpenStack, we are able to run an active-active-active configuration for the control plane, each running all the OpenStack services and backend components independently, tied together through clustering software and a load balancer. This also allows for easily being able to add additional control plane capacity when needed.
Scale horizontally. The traditional approach was to scale your hardware vertically, adding more CPU’s, memory or disks. But that approach not only forced downtime, it was just plain unpredictable in too many ways. OpenStack changes the overall scaling approach to a horizontal model. Need more capacity? Just add another server, join it to your cloud and start consuming resources, just like that.
You can also add any commodity hardware to your cloud, and the hardware doesn’t have to all match up — it can be different hardware types and specs. The key is understanding the resources you’ll be adding and try to group them together, if possible, for resource tracking.
High availability. Yes, OpenStack does meet industry documented high availability requirements for the control plane services and processes. Core OpenStack services will meet or exceed uptime of 99.9 percent.
Multi data center support. Out of the box OpenStack has the ability to span multiple data centers, giving your cloud one big cloud footprint, known as cells, or independent datacenter ecosystems still aware of each other, known as regions. This allows for active-active cloud footprints, removing the need to create disaster recovery sites (which sit cold, not in sync or updated, waiting for a disaster).
Outside of supporting cross data center support, you can also isolate different types of compute nodes into what are called availability zones and host aggregates. This is a practice of grouping the same types of compute nodes, maybe from resources, security (dedicating compute nodes to BUs) or system perspective (such as compute nodes running containers).
API enabled. One of the most important features and one of my favorite parts of OpenStack is that it was created as an API enabled cloud platform. A great deal of effort was put into making sure APIs were able to control every function of the cloud. This becomes increasingly important once you start automating tasks on your cloud. APIs provides a uniform way of communicating with the cloud and then simplifies how you write automation code (you will be able to create code that will be reusable for multiple purposes).
So there you go, a high level overview of pros and cons. Want to learn even more? Sign up for a free strategy session with a Rackspace expert. We have successfully scaled OpenStack to thousands of nodes and operate OpenStack clouds for some of the largest companies in the world. Talk to our experts about your business objectives and we’ll strategize with you the solutions needed to achieve them — no strings attached. SIGN UP NOW.