Openstack Architecture

Openstack is open-source cloud provider solution which is deployed as IaaS(Infrastructure as a Service). It controls large pools of compute, storage and networking resources. At higher level, with Openstack , user can create/delete virtual machines, attach/detach storage and network ports to virtual-machines. Apart from those basic functionalities some advanced features like identity management, dashboard, cluster orchestration, container management are also supported by Openstack.

Openstack components

Openstack in a nutshell, consist multiple services each dedicated to specific are of cloud infrastructure. Few essential service components are mentioned below :

1. Nova (Compute service):
Nova service manages the compute resources and allows creating, deleting, updating the virtual machines. It supports various hypervisor like KVM, VMware ESXi, HyperV. In addition it allows attach/detach of other resources like storage and network with the help of other services like Cinder, Neutron, Placement etc.

2. Neutron (Networking service):
It is responsible for managing private and public network within Openstack cluster. It also offers security features related to networking.

3. Cinder (Block storage):
It is responsible for providing persistent block storage which will be attached to virtual-machine. Cinder offers advanced features related to storage e.g. snapshot as well as backup of volume.

4. Keystone (Identity service):
It is responsible for all types of authentications and authorisations in the OpenStack services.  User credentials are first validated by keystone before passing request to respective service.

5. Glance (Image service):
It is responsible for registering, storing, and retrieving virtual disk images. It is possible to upload images to Swift at various backends.

6. Horizon (Dashboard):
It is responsible for providing a web-based interface(UI) for OpenStack services. It is designed to provide users, administrators, and developers with an intuitive and accessible way to manage their cloud resources.

7. Manila (Shared file system):
It is responsible to create share and provide export location. Advanced features like share replica, snapshot etc are also provided. The user then can mount the (NFS/CIFS) share and use it.

8. Swift (Object storage):
It is an object storage service used to store and retrieve unstructured data objects. This is similar to Amazon S3 service which allows to store objects within containers.

9. Ceilometer (Telemetry):
It is responsible for metering and billing of services and keep track of resources within cloud.

10. Heat (Orchestration):
It is used for on-demand service provisioning with auto-scaling of cloud resources. User need to create heat resource called ‘stack’ and launch it.

11. Zun (Container):
Zun service is used to create/delete/update containers. User can also attach PCI and Network devices to containers using Zun REST-API.

12. Octavia(Load balancer):
OpenStack Octavia is an open-source, scalable load-balancing-as-a-service (LBaaS) solution for the OpenStack cloud computing platform. It provides load balancing services to distribute incoming network traffic across multiple servers or virtual machines, improving the availability and performance of applications.

Scroll to Top