Openstack

Openstack Logo
OpenStack is an Infrastructure as a Service (IaaS) cloud computing project that is free open source software released under the terms of the Apache License.

OpenStack has a modular architecture that encompasses following components:

Openstack layers

OpenStack Compute (code-name Nova)

Nova is a python-based software used to orchestrate cloud and manage virtual machines and networks. Nova allows us to create and manage virtual servers using machine images. Nova's architecture is designed to scale horizontally on standard hardware with no proprietary hardware or software requirements and the ability to integrate with legacy systems and third party technologies.

OpenStack Object Storage (code-name Swift)

Swift is roughly similar to Amazon S3. Swift allows us to store objects in massively scalable infrastructure with in-built redundancy and fail-over. It can be used to store static data (like Images and Videos), make back-ups, archive data, and so on. Swift will write copies of data to multiple redundant servers which are logically grouped into Zones. Zones are isolated from each other to safeguard from failures. We can configure Swift and decide the number of Zones and replicas we need to have in the system.

OpenStack Image Service (code-name Glance)

Glance is responsible for storage, discovery, and retrieval of virtual machine images. Glance can be configured to store VM images in Object Storage, Amazon S3, or simple file-system. Glance-registry and Glance-api are the two important components of Image Service. Glance-registry stores and retrieves metadata about images.
A multi-format image registry, Glance allows uploads of private and public images in a variety of formats, including:


  • Raw
  • Machine (kernel/ramdisk outside of image, a.k.a. AMI)
  • VHD (Hyper-V)
  • VDI (VirtualBox)
  • qcow2 (Qemu/KVM)
  • VMDK (VMWare)
  • OVF (VMware, others)

OpenStack Identity (code-name Keystone)

Keystone provides a central directory of users mapped to the OpenStack services they can access. It acts as a common authentication system across the cloud operating system and can integrate with existing backend directory services like LDAP. It supports multiple forms of authentication including standard username and password credentials, token-based systems and AWS-style logins.

OpenStack Dashboard (code-name Horizon)

Horizon provides administrators and users a graphical interface to access, provision and automate cloud-based resources. The extensible design makes it easy to plug in and expose third party products and services, such as billing, monitoring and additional management tools.

OpenStack Networking (code-name Quantum)

Quantum is a pluggable, scalable and API-driven system for managing networks and IP addresses.

OpenStack Block Storage (code-name Cinder)

Cinder provides persistent block level storage devices for use with OpenStack compute instances. The block storage system manages the creation, attaching and detaching of the block devices to servers. Block storage volumes are fully integrated into OpenStack Compute and the Dashboard allowing for cloud users to manage their own storage needs.

The current release is called as Folsom contains all the above mentioned components.
Several components have been added for the next release codenamed “Grizzly’:

Metering (Ceilometer) - http://wiki.openstack.org/Ceilometer
Basic Cloud Orchestration & Service Definition (Heat) - http://wiki.openstack.org/Heat

NOTE: Grizzly release date is set for 4 April 2013.


Getting Started with Openstack