As far as open source pedigree goes, OpenStack is of a pretty high calibre. Born out of a joint initiative between NASA and Rackspace in July 2010, its main goal was to simplify the management of both private and public cloud computing services deployed on traditional computer hardware. Since then it has attracted the support of many high-profile corporate partners such as Intel, IBM, HP, Cisco, Dell, EMC and Red Hat. Under the guidance of the OpenStack Foundation, a non-profit corporate entity formed in September 2012, the platform has steadily matured into a fully-featured cloud-building platform. OpenStack’s current stable version (codenamed "Icehouse") is the ninth release to date.
Integrating OpenStack into a corporate IT strategy can provide several key benefits. By removing the complexity behind managing and deploying on-demand infrastructure, the platform can dramatically reduce the time required to build applications and bring new products to market. OpenStack’s flexible and open design allows seamless integration with existing third-party and in-house business systems. As open source software, OpenStack helps business to avoid the pitfalls of vendor lock-in while at the same time providing compatibility with private cloud providers such as Amazon AWS and facilitate the creation of hybrid clouds.
OpenStack's modular architecture allows great flexibility and the ability to tailor specific Infrastructure-as-a-Service (IaaS) solutions. There are currently ten individual components offered in the OpenStack ecosystem which can be used to build public or private clouds. While major components implement core functionality such as compute, storage and networking, some of the newer, lesser-known components provide key enterprise features previously available only in proprietary cloud computing software.
Here's a quick overview of the OpenStack components and what they do.
Nova, also known as OpenStack Compute, is the control centre of the cloud computing platform. It interfaces with system virtualization software to allow businesses to rapidly provision and manage large networks of virtual machines. Nova is hardware-agnostic and supports a wide variety of standard hardware configurations. It has been part of OpenStack since the first release and is analogous to Amazon EC2 and Microsoft Azure Virtual Machines.
Swift (Object Storage)
Swift implements a distributed, API-driven object storage system for storing and retrieving static files such as photos, videos, emails, disk images or backup archives. It provides a cost effective, scalable storage platform that can be used for backup, archiving and data retention. Swift’s API is compatible with Amazon S3, allowing it to be integrated with many third-party applications already developed.
Cinder (Block Storage)
Cinder provides persistent block storage devices used as virtual disks attached to compute instances managed by Nova. It allows integration with third-party enterprise storage solutions such as Ceph, NetApp, Nexenta, SolidFire, and Zadara. This service is functionally equivalent to Amazon's Elastic Block Storage (EBS).
Neutron is often described as "Networking-as-a-Service" and provides interfaces to configure software-defined networking and address management within the OpenStack platform. It overseas the creation and management of advanced virtual network topologies, such as virtual private networks (VPN) and per-tenant networking. Neutron is a relatively new component having been released as part of OpenStack’s eighth version (codenamed “Havana”) in October 2013.
The second part of this article examines some of the newer, less mature components included in the OpenStack suite providing powerful additional enterprise-ready functionality.