OpenStack is an open source cloud computing platform. Designed as an Infrastructure as a Service (IaaS) environment, this project describes itself as seeking to produce a "ubiquitous open source cloud computing platform for public and private clouds." OpenStack is also something of a computing industry phenomenon, as more than 200 software, hardware and service companies are involved.
OpenStack emerged from a joint initiative undertaken by Rackspace Hosting and NASA in mid-2010, with a primary aim to permit organizations to offer (or consume) cloud computing services running on standard hardware elements. Early code was a combination of the NASA Nebula cloud computing platform and the Cloud Files platform from Rackspace.
Since mid-2010, the project has maintained a regular six-month release cycle and a detailed schedule of release milestones, orchestrated through a semi-annual planning meeting called the OpenStack Design Summit. The most recent such summit concluded, in Hong Kong, involved more than 3,000 attendees.
OpenStack received a big boost in 2011 when the creators of the Ubuntu Linux distribution adopted OpenStack as part of their systems architecture. Since then, other Linux players — including Red Hat (which offers a specific OpenStack distribution) and Debian (through its Sid distribution) — have followed suit with OpenStack distributions of their own.
Getting to Know the OpenStack Architecture
A diagram of the OpenStack architecture (below) represents the major building blocks of it components. Layers related to applications and management access sit on top of the stack, with standard resource elements for computation, networking, and storage immediately beneath. All rest on shared services and, ultimately, on standard open source specified hardware platforms. Buyers need not feel or find themselves wedded to particular proprietary server, appliance, or networking hardware components.
The OpenStack architecture. (Diagram courtesy of OpenStack.org.)
Technologist Ken Pepple describes the OpenStack architecture as being composed of various sub-projects:
- Swift provides object or blob storage for data, content and other materials. This originates from RackSpace Cloud Files and is roughly analogous to the Amazon Simple Storage Service (S3) within its Amazon Web Services environment. Swift maps to the Storage item in Figure 1.
- Glance provides a means to discover, store and retrieve virtual machines for OpenStack Nova (see below). Glance maps to elements of the dashboard, compute, networking and storage items in Figure 1.
- Nova provides virtual servers on demand, much like Rackspace Cloud Servers or the Amazon Elastic Compute Cloud in the AWS environment. Nova maps to the compute element in Figure 1.
- Heat delivers orchestration for launching OpenStack templates. These include server and services definitions for, say, a multi-server WordPress website set-up with front end/Web and database elements.
- Horizon supplies a dashboard and control mechanisms for managing OpenStack templates, instances and resources, and for monitoring status, events and troubleshooting capabilities.
Sign up for Computerworld eNewsletters.