Openstack is a stack of feature rich cloud computing technologies. Within a short period of its launch Openstack has attained a significant status in the field of cloud computing. Openstack have series of technical projects to leverage the growth of various parts of cloud infrastructure. Even though Openstack was found by Rackspace and NASA, global open source community have a large contribution to the present Openstack which is massively scalable and have a stack of standard cloud technologies. Openstack falls under Apache.2.0 licence, that means it have all the benefits of an opensource product. So you won’t be under the arms of any proprietary vendors and you can extend the code for your business needs. An open source cloud solution that is hardware agnostic like Openstack can save you money, energy and time.

  • Openstack currently have three core projects:
  • Openstack compute (Nova)
  • Openstack object storage (Swift)
  • Openstack image service (Glance).

Openstack COMPUTE

Nova consists of seven main components. The Cloud Controller component will interact with all other components. API Server provides the Web services front end for the cloud controller. Compute Controller provides compute server resources, and the Object Store component provides storage services. Auth Manager provides authentication and authorization services. Volume Controller provides fast and permanent block-level storage for the compute servers. Network Controller provides virtual networks to enable compute servers to interact with each other and with the public network. Scheduler selects the most suitable compute controller to host an instance.


  • Django based web control panel is available along with Openstack Compute which can be used as a customer facing control panel. Effective Virtualization of server resources like CPU, memory, disk space and Network interfaces which ensures improved utilization and automation of resources for greater cost efficiencies.
  • It supports almost all popular Hypervisors as the back-end core virtualization technology such as Xen/XenServer KVM Hyper-V VMWare/ESX Linux Containers (LXC) QEMU UML
  • Manage LAN, DHCP, VLAN, provisioning of IPs. Virtual machines can be grouped with VLAN and can be isolated when the security is a factor.
  • Highly scalable and reliable ensuring increased system uptime.
  • Improved VM image management. Store, import, share and create images.
  • Security Groups control access to VM instances by creating separation between resource pools and also ensure security by user, role and project
  • Virtual machines CLI can be accessed through web using VNC proxy.
  • Advanced Scheduler for VM provisioning.
  • Allocate, track and limit resources.
  • Live VM management (Instance). Run, reboot, suspend, resize, and terminate instances standard API s for connecting Compute with custom applications.
  • EC2 APIs allows end user continue to use legacy EC2 APIs to manage their setup.
  • Number of Block Storage options are available for add-on storages (non bootable) like AoE(ATA over Ethernet, IET iSCSI, LVM volume RBD, SheepDog, HP SAN
  • Openstack comes under OSI Apache 2 licence. It’s fully opensource and there isn’t any viral licencing for Openstack.

Openstack Object Storage(Swift)

Openstack object storage is openstack software for creating scalable, redundant and reliable storage using standard hardwares. By clustering hardwares, storage can be made to petabyte size. It’s not a file system like storage or realtime data storage but can be used as long term storage for huge static data like virtual images, photo libraries email storage and backup archiving. Swift doesn’t have any central control, it uses a distributed architecture which provides more stability scalability and redundancy.

A storage cluster can be made with Object storage with multiple hardwares. Cluster can be elaborated by adding nodes horizontally or vertically. Data can be written to multiple hardwares, and object storage software ensures the data replication and integrity across the cluster. Object storage can make the data ‘Highly available’ across the node failures. If a node fails object storage will replicate the highly available data stored on other node.


  • File storage and management can be done through APIs, which can be customized to suit end user environment.
  • Data control through private and public containers.
  • Highly scalable read/write access .Content can be directly served from storage.
  • Built in replication and high availability. Data object are stored on multiple hardwares for redundancy.
  • Easily scalable storage architecture. Multi-dimensional storage scalability. Scale storage vertically and horizontally.
  • Works along with standard hardwares. Lower cost per GB.
  • Allow efficient random read/write even without RAID.
  • Built-in management utilities like Acct. Management: Create, add, verify, delete users, Container Management: upload, download, verify Monitoring: Capacity, Host, Network, Log trawling, cluster health
  • Easy CLI administration through VNC proxy.

Openstack Image Service (Glance)

The function of glance is to store, retrieve, register and deliver services for virtual images. Glance API server and Glance Registry server are the main components in glance architecture. API server have a standard REST interface for querying details and metadata of the virtual images stored in different types backend storages. The backend stores that Glance can work with are Openstack storage service (Swift), File system, Amazon’s S3 service and HTTP(images that are available via HTTP somewhere on the Internet).With Image service ,users can register new virtual disk images , fetch the details of publicly available virtual disk images and use image library for listing the virtual image disks. Image metadata made available through Glance can be stored in image registries. A registry server is any service that publishes image metadata that belongs to the Glance Registry.

Openstack supports large variety of virtual disks like.


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

It also has built in management utilities like

  • Account management: Used to Create, add, verify, and delete users
  • Container Management: Used to upload, download, verify
  • Monitoring: used for monitoring Capacity, Host, Network, Log trawling, cluster health.