What is OpenStack?

Where is the image?

Contents:


In fact, what is OpenStack ?

OpenStack is an all of open source software offering the possibility to create Public cloud, the distribution of Private cloud, the virtualization of network functions and the deployment of containers.

OpenStack provide an Infrastructure-as-a-Service solution (IaaS) thanks to a variety of complementary services. Each services offer an Application Programming Interface (API) which ease its integration. OpenStack is writing in Python and Apache 2.0 license.

An API is a programing interface to access a service (data/functions) provided thanks to a another system. It allows to ease the applications development, offers a benefit of time and money.

OpenStack is adapted to the virtualization with an all of servers (an all of servers is called cluster).

OpenStack is developed and supported by a large public and private contributors, as well as big companys. For example we can quote Red Hat, Cisco, Dell, Orange, IBM, VMware etc...


How OpenStack works ?

The cloud computing services given by OpenStack are provided thanks to virtual resources. The virtual resources are managed and allocated by a hypervisor (like KVM) according to the needs.

OpenStack requests these resources for its cloud computing services by using an API.

This API permits also to pilot the tools of cloud computing on which the administrators and users interact directly.

The software's that compose OpenStack are in fact an all of commands which forms scripts.

These scripts are grouped in packets also called projects which send tasks and allow to create cloud computing environments. For this, it based on two components, a hypervisor which distributes the resources and an operating system which executes the commands.

OpenStack is not a virtualization platform. Admittedly OpenStack and virtualization platforms allow to supervise resources, however OpenStack exploits really the necessary resources for the set up of cloud computing services in the aim to form a cloud environment.

The OpenStack architecture is, as mentioned above, an all of software's - projects that are open source.

These projects are used to configure an Undercloud environment addressed to administrators and an Overcloud addressed to users.

The Undercloud environment permits to create and configure Overcloud environment. It allows also to deploy and administrate nodes with components that offers cloud services.


What an OpenStack environment is compose of ?

An Undercloud and Overcloud environment are composed of six projects that are essentials for the creation of a cloud environment and infrastructure.

These six projects are NOVA, NEUTRON, SWIFT, CINDER, KEYSTONE and GLANCE.

NOVA: Responsible for the provision of instances on demand, Nova is at the heart of Openstack. It is used to spawn, manage and scale instances on the platform.

NEUTRON: Neutron is a SDN service creating and managing the connectivity between instances and with the exterior. It is also in charge of more advanced network functions such as firewalls and VPNs.

SWIFT: Another storage service providing scalable and failure-proof Object Storage.

CINDER: Cinder's goal is to provide persistent block storage for instances. Its functionnalities include snapshotting as well as creating and managing storage volumes.

KEYSTONE: The second most important element of Openstack, keystone manages authentication and authorization between services of the platform. It also provides a central catalog of services and their associated endpoints. It is also responsible for the creation and management of users, roles and projects.

GLANCE: Glance manages instances images used to spawn VMs.

Thanks to these six projects, the others projects can manage the dashboard (HORIZON), the orchestration (HEAT), the bare metal provisioning (IRONIC), the messaging (ZAQAR), the containers (ZUN) and the governance.


How I can interact with OpenStack ?

The OpenStack users can interact with it thanks to a web interface or in command line.


Conclusion

I hope you have enjoyed this articles about OpenStack. If you want to learn more about OpenStack you can look the official website of OpenStack here.