The OpenStack Summit took place a couple weeks ago in Portland to announce the “Grizzly” (G) release and to begin the design activities for the “Havana” (H) release (due in Fall 2013). Much has been written about the technology and vendor trends, including a few from my colleagues Aaron Delp and Jeramiah Dooley, which I believe do a good job of highlighting the transition that’s happening in the community and the technology.
Since then, I’ve had a number of business leaders and financial analysis reach out to ask, “What is OpenStack?”. My first reaction is to give them a little bit of history and overview of the technology landscape. But then I’ve quickly come to realize that this isn’t what they are looking for. From their perspective, they want to really understand where OpenStack fits into the broader IT hierarchy and if it should become part of their strategic thinking. Here’s a sampling of the follow-up questions they tend to ask:
What does OpenStack actually do?
In the most basic sense, OpenStack is a software framework that coordinates the services needed to provide on-demand computing/storage resources for applications. Those services include computing, hypervisors, storage, networking and security. From a user perspective, if OpenStack is implemented correctly, it should just look like a few menus and clicks that let the application owner say, “I need this many resources to start, then I’ll want to grow or shrink that number over time, and I’d also like a few other services to augment my application (backup, geographic resiliency, load-balancing, etc.” If OpenStack is used as part of a more complex system, those menu items would be replaced with programmable APIs. [NOTE: This same description could be used for almost all "cloud management platforms" in the market today.]
OpenStack is not a company (eg. Rackspace), although some companies are using OpenStack as part of their commercial services, and some companies are trying to sell packaged version of OpenStack.
Removing some of the semantics (open vs. closed, etc.), OpenStack is most frequently thought of as being similar to Amazon Web Services. Like AWS, it has the goal of being a services-oriented framework for providing on-demand computing/storage resources for applications. Beyond that, OpenStack by the nature of it being open source, has the goal of allowing interoperability and application portability between multiple clouds running OpenStack. As OpenStack thought leaders like Joshua McKenty point out, OpenStack is probably better suited to be a framework for modern, scale-out applications.
To a lesser extend, OpenStack is somewhat similar to VMware’s vCloud Director or other cloud management platforms that tend to be more focused on virtualizing and automating legacy applications. VMware is typically better suited for virtualizing traditional applications, and they have a broad ecosystem of partners who have built tools to handle additional functionality (backup, replication, management, etc.).
If Amazon Web Services works today and is growing, why do people care about OpenStack?
AWS created a new market segment which is focused on delivering services to the application developers that either could not afford to purchase/operate the underlying equipment themselves, didn’t desire to operate those system (core vs. context of their business), or who were unable to obtain those resources from their IT department in the required timeframe or price point. Some people call this “Shadow IT”, but it’s really just a mismatch between IT Demand and IT Supply (Economics 101). With that in mind, some people see short-comings in the AWS offering that they believed could be solved using an alternative approach. Some of these approaches are alternative offerings in the marketplace by other public cloud providers (eg. Google Compute Engine, Microsoft Azure, etc.). The OpenStack projects approach is attempting to offer an open source alternative for anyone that wants to build their own cloud to either compete in the market (eg. Service Providers) or for companies that want to build/own/operate cloud services for their business.
Why does it matter than OpenStack is open source?
For an in-depth understanding of the impact that open source can have on technology (strategy, competition, business models, etc.), I’ll defer people to Simon Wardley’s excellent blog. From the perspective of OpenStack, the use of open source is important for a few reasons:
- # of Developers – By using the community model of open source, OpenStack has the ability to attract more developers to the projects than proprietary software, and more developers offers a better chance to catch up to the capabilities of services such as AWS. Now, it’s important to note that just because a project is open source doesn’t necessarily mean it will attract the most developers. Microsoft has 1000s of ISVs that create applications and tools around their SDKs. AWS has 1000s of developers that write tools and create services around their APIs. Developers are attracted to opportunities to have their software make an impact (generate revenue, showcase their talents, leverage other software to solve a problem, etc.).
- # of Clouds – One of the core pillars of OpenStack is that it will help create the foundation for 1000s of clouds to be created, hopefully all being interoperable, and allowing different segments of the market to customize those clouds to meeting their specific needs (low-cost, high-performance, industry-specific, etc.). It’s important to note that interoperability isn’t a given, as vendors are already adding proprietary extensions to OpenStack that aren’t being contributed back to the community projects. Over time, the OpenStack Foundation will have to determine how it manages OpenStack compatibility issues.
Who wins if OpenStack is successful?
Unfortunately this question always comes up, because that’s the nature of our industry. Something has to win, something has to die, etc. In reality, it’s not an easy question to answer. But here are a few answers that are generally applicable:
- OpenStack is part of a broader movement where the Economic 101 of technology are shifting (on-demand, experimentation vs. ROI, etc.), but the application landscape is shifting (web-scale apps, mobile apps, data analytics). OpenStack is trying to be the toolbox for DIY cloud builders hoping to be at that economic and application crossroads. There are other DIY toolkits in the marketplace as well (Apache CloudStack, Eucalyptus, VMware vCloud, OpenNebula, Virtustream xStream, Joyent SmartOS, etc.)
- OpenStack is playing catchup to AWS, but so are many other efforts. From purely a technology perspective it’s behind, but we all know that technology isn’t the sole decision-making criteria in our industry. OpenStack has the backing of many industry giants (IBM, RedHat, HP, Cisco, Dell, etc.) who have huge customer installed-base and sales channels. AWS might be a $2.5-3B business today, but IT is a $4T market. There are lots of businesses and IT groups that like to have their own systems to build/operate.
- OpenStack is a software-centric offering. Software is a different business than hardware, and especially open source software vs. traditionally proprietary software. Companies that will be successful with OpenStack will have to evolve to this new model.
- Even if OpenStack fails to grow in the market place going forward (for whatever reason), the market as a whole should continue to win because this will drive greater competition for new services and drive down pricing for new units of cloud computing consumption.
I know that’s not really a list of winners, but the reality is that cloud computing is in such a nacent stage that it’s better to highlight trends than pick winners. There’s too much cultural change that has to happen and too much money at stake to bet the mortgage just yet.