There are several moving parts that make an OpenStack. Owing to it being open natured, any developer can add any amount of additional components to an OpenStack in order to fulfill their needs. The users of OpenStack though have come together and identified 9 broad categories of components that form the basis of OpenStack. These are distributed as a portion of any OpenStack system and whose maintenance is done by the OpenStack community. Here is the list:
- Nova: OpenStack has this primary computing engine backing it. This is used to deploy and manage huge virtual machines and many other instances for handling computing tasks.
- Cinder: This is a block storage component that is more of an analogous nature than a traditional computer that can access specific locations from a disk drive. This is used when speed of accessing data is of highest priority.
- Swift: This is a popular system of storage for files and objects. Instead of using the traditional method of referring to files with their location on the disk drive, developers can now refer to a unique identifier referring to piece of information or file and allow the OpenStack to make the decision on where the information needs to be stored. This allows for easy scaling in the future, since developers will not have to worry about the capacity on a single system backing the software. This allows the system, instead of the developer to worry about how to best make sure that data can be backed up if there is a machine or network connection failure.
- Horizon: OpenStack’s dashboard is the Horizon. This component is the sole graphical interface of the OpenStack. Users who want to try out OpenStack for the first time will be encountered with the Horizon first. All components of an OpenStack can be separately accessed via the API or Application Programming Interface, but the dashboard allows for system administrators to get a glimpse at what is going on in the cloud and carry out the management as required.
- Neutron: This component empowers the OpenStack with networking capability. It helps ensure that all of the components in an OpenStack deployment can efficiently and quickly communicate with one another.
- Keystone: This component provides OpenStack with identity services. It is a central list of all OpenStack cloud users, who are all mapped against the services the cloud provides that they are permitted to use. This gives multiple ways of access – developers can map their current user access methods against Keystone easily.
- Ceilometer: This component gives telemetry services – allowing the cloud to carry out billing services to users of the cloud individually. It also tracks usage of every user’s system usage of all the various components of the OpenStack Cloud in a verifiable way. It is used like a metering and reporting system.
- Heat: This is an orchestration component that allows developers to store cloud application requirements in a file that defines all the necessary resources for that application. In this way, it allows one to manage the infrastructure that is required to run the cloud service.
- Glance: This image providing service to OpenStack allows virtual copies of images of hard disks to be used like templates when virtual machine instances are deployed.
The world is quickly moving to applications running on OpenStack backend at a really fast pace and the career opportunities in this field are immense! IIHT’s unique cloud stack course trains students in depth in all the above components with hands on experience. Log on to iiht.com for more details.