Introduction to the Eleven Key Components of OpenStack – Part 1

June 18, 2015 / Cloud Server Hosting

What is this OpenStack? Does that mean opening the stack of applications? No no that’s a set of software tools in order to build and manage cloud computing platforms for both public as well as private clouds.

OpenStack basically, helps in managing the pool of resources in any data center by turning all the sets of these software tools into a pool of resources. That managed from a single place.

Understanding the Terms in OpenStack –

Since OpenStack is a set of software tools for constructing and managing cloud computing platforms for all three types of clouds. It’s made of several parts that move. Being an open source, there’s the freedom to add additional components to OpenStack to meet the needs of the users.

According to its community, there are nine key components. They are a part of the “core” of it, distributed as a part of any OpenStack system and officially maintained by the community. Two more have been added to the list in the last Icehouse release, improving the figure to eleven from nine.

OpenStack Compute (Nova) –

Nova the name of the project given to compute service. That offers and manages large networks of virtual machines that create a scalable and redundant cloud computing platform. In simple terms, it can say that Nova is the brain of the Cloud.

Different components like disk space, memory, and CPU contribute to Compute Servers and provisioned in minutes. Users can interact with the Compute Servers in the form of programs through the OpenStack Compute API or the Dashboard.

Object Storage (Swift) –

Swift is actually the code name for OpenStack Object Storage. That uses commodity server clusters, particularly for static data storage – documents and photo images for a long period.

Excels in storing web content, and backups, and in handling massive concurrency. Used internally by many companies. For instance – all media files in Wikipedia served by the Wikimedia Foundation’s Swift cluster.

Swift was open-sourced in 2010 under the Apache 2.0 license. It stores and recovers unstructured data objects via HTTP-based APIs. It is fault-tolerant due to its architecture that enables data replication and scalability.

Identity Service (Keystone) –

Keystone is an integrated identity management system for OpenStack that offers authentication and authorization for all its relative services. This leads to the formation of a central directory of users plotted to the services of OpenStack.

Block Storage (Cinder) –

Cinder is the code name referring to the open-source project to develop OpenStack Block Storage. Block Storage gives exposure to block devices and connects them to compute instances for expanded storage, integration with enterprise storage platforms, and better performance.

Creating block devices, and attaching and detaching them to servers is the major role of the block storage system. Cloud users can manage their own storage requirements with the fully integrated block storage volumes into OpenStack Compute and the Dashboard.

Cinder helps in separating the block storage functionality that was a part of OpenStack Compute into its own service.

OpenStack Image Service (Glance) –

Glance is the project name given to OpenStack Image Service where it’s possible to upload and discover data assets that are used with other services. Currently, it only includes images and metadata definitions.

Users can discover, register and retrieve virtual machines’ images with a glance image service. Querying of VM image metadata and retrieval of the actual image allowed by the RESTful API. The VM images stored in several locations – from simple files to object-storage systems like the OpenStack Swift project.

OpenStack actually built in the form of modular architecture consisting of eleven components. Only five of them listed here, the other six will include in the next part.