At one time, OpenStack was going to be the open source answer to proprietary cloud computing. OpenStack clouds would proliferate – didn't Rackspace and HP already offer public versions – and undercut the offerings of Amazon Web Services, Microsoft Azure and Google App Engine?
It never happened. Cloud computing, it turns out, is complex and offering it on an endlessly scalable basis to thousands of customers proved beyond capabilities of the early OpenStack practitioners. Rackspace saw the handwriting on the wall and moved away from public OpenStack into managed services and helping customers set up private OpenStack clouds. HP offered Helion as a set of public OpenStack services, then suddenly early last year it didn't any more.
The fact is, OpenStack software was a hugely ambitious project that's borne a cornucopia of fruit. It's just that as the public cloud providers were maturing and showing a lot of moxie, OpenStack was still an immature, complex set of moving parts. If its development was proceeding at a rapid pace, that wasn't a totally reassuring prospect for those trying to pick a particular release of OpenStack and follow through with an implementation.
In listening to Julio Villarreal-Pelegrino, Red Hat's principal cloud architect at Interop ITX, I was impressed with how this kaleidoscopic picture of OpenStack has settled into a more practical combination of parts. His May 17 session was, Things to Consider When Building An OpenStack Cloud. Villarreal-Pelegrino must spend a lot of time on the road because he noted he has consulted on the implementation of many OpenStack clouds in both North America and South America. Red Hat has helped with a total of 500 OpenStack deployments, he said.
Want to learn more about implementing OpenStack? See What You Need to Know about OpenStack.
Villarreal-Pelegrino previously warned OpenStack newcomers to define a business goal that solves a problem, then implement a version of OpenStack that addresses it. He sounded that theme in an InformationWeek preview story in March, and at the show, he continued to emphasize the business use case: "Don't do it because it's cool. Do it because you're fixing a problem in your enterprise."
That can include asking the question, "Who are we? and, "Where do we want to be?"
The biggest single use case for deploying OpenStack is to allow end users to self-provision the servers they need. Whether product designers in a line of business or an application development team, the enterprise gains agility when end users can self-provision what they need.
Beyond that, there are many additional reasons to push the enterprise data center toward a more cloud-like operation. Setting up OpenStack for one of them, however, gives its advocates a way to measure business value, cite savings and use them as a jumping off point for the next phase of OpenStack implementation that seeks additional gains.
Generate a deployment plan and stick to it. Try not to let project drift muddy the outcome by trying to do too many things. Once you've built the OpenStack cloud the business was asking for, test it for function and performance. Then test it again. Don't forget about failover. Make use of the Chaos Monkey type of tools that Netflix invented to randomly unplug virtual servers and see if they could be recovered on new servers.
Once initial services are established, many end users are going to want more. "OpenStack is super-rich feature-wise," he said. It supports a wide variety of virtual machine hypervisors and has a leading edge set of software-defined networking features.
And don't pull your hair out worrying that you don't have the skills on staff to implement something as complex as a private cloud platform. You don't need an IT staff that knows OpenStack at the start. "What you do need are people who understand Linux. We don't care if they don't understand OpenStack," he said.
That's because people who understand Linux already have a basic grasp of how to adopt open source code, when to implement the updates, how to go about making sure they have the right version of the code. Linux itself was once viewed as too complex compared to Windows, but it's managed to stake out a substantial share of the data center and Web operations in spite of that.
"Lack of readiness and preparation are the biggest contributors to OpenStack implementation failure," said Villarreal-Pelegrino. Define "what the platform is going to be used for," he said. Then let those who have a knack for managing open source undertake the project. As with Linux, mastering the basics will tend to lead to one gain, followed by another.