Most Frequently Asked OpenStack Interview Questions and Answers for Freshers
1. Describe OpenStack.
OpenStack is designed as the future of cloud computing and developed as free and open-source software that facilitates a cloud computing platform to build and manage both the public and private clouds infrastructure.
It is managed by one of the biggest communities:
OpenStack Foundation as a non-profit organization that oversees both development and community. It works by creating multiple virtual machines so that the use of physical resources can be minimized.
2. What is the main objective of OpenStack?
Its main
objective is to deliver solutions for all types of clouds by being simple to implement, massively scalable, and feature rich.
3. What are the core principles of OpenStack?
These are the
core principles of OpenStack as follows:
Open Source: OpenStack is coded and released under the Apache 2.0 License and permits the community to use it freely.
Open Design: For the upcoming release, the development community holds a Design Summit every six months.
Open Development: The developers maintain a publicly available source code repository through the entig100s of projects including the Ubuntu Linux distribution.
Open Community: OpenStack aims to produce a healthy, vibrant development and user community under the process of open and transparent documentation.
4. Describe the modular architecture of OpenStack.
OpenStack is designed by using the modular architecture components as follows:
Horizon- OpenStack Dashboard
Horizon is the dashboard of OpenStack and the only graphical interface (web UI) that provides a web interface for all OpenStack services including Nova, Swift, and Keystone, etc.
Nova- OpenStack Compute
Nova is a cloud computing fabric controller designed to manage and automate pools of computer resources. It is a distributed component interacts with keystones for authentication, glances to capture images, and communications with the web interfaces horizon.
Neutron- OpenStack Network
Neutron manages the virtual network infrastructure and IP addresses. It provides network capability.
Swift – OpenStack Object storage
It is a scalable, redundant storage system for objects and files.
Cinder – OpenStack Block Storage
Cinder is a block storage service that provides persistent block level storage devices for use with OpenStack compute instances and organizes volume storage management for virtual machines.
Keystone – OpenStack Identity
This component provides a centralized identity and acts as a common authentication system across the cloud operating system. Keystone supports multiple authorization services that include a standard username and password credentials and also provides token-based systems, AWS logins.
Glance – OpenStack image
Glance is a registry or container of virtual machine images that provides image services to the OpenStack.
Ceilometer – OpenStack Telemetry (Metering and Monitoring)
Ceilometer serves the monitoring resources on the OpenStack for monitoring and metering the data. Using Ceilometer, the administrator can create customer billing across all current and future OpenStack components.
Heat – OpenStack Orchestration Engine
Heat is a service used to orchestrate/compile/collaborate multiple composite cloud applications using templates, through both an OpenStack-native REST API and Cloud Formation- compatible Query API.
Trove – OpenStack Database
Trove is the OpenStack database designed to run entirely on OpenStack and to provide the quick and easy utilization of relational database features without the burden of handling complex administrative tasks.
5. What are the key benefits of OpenStack?
OpenStack is a modern, robust cloud computing solution used by many large enterprises such as eBay, PayPal, Yahoo, etc. and provides a large voluminous benefit to all kinds of business (small to mid-scale business or even very large enterprises) to run their Infrastructure as a Service (IaaS) cloud platform. Some of those top five benefits are as follows:
Strong Security
OpenStack provides outstanding security features to the users as it keeps the data always secure without any fear of loss if the business owner wants to move his IT infrastructure to the cloud. Behind this strong security feature, there is a team of security experts to strengthen security by finding and fixing the security issues and security holes in the OpenStack software.
Open-Source
Being Open-Source, OpenStack is the favorite cloud software of the developers and entrepreneurs. Its Source Code can be found at
www.github.com/openstack/. OpenStack is the flexible software by which the developers can modify it according to their growing needs by adding extra features. It is free of cost without any restrictions as can be used anywhere, in any way, for any purpose, and how long.
Development Support
OpenStack development support from the reputed organizations (Intel, IBM, AT&T, Cisco, Red Hat, Dell, Ubuntu, and so on) that improves leaps and bounds. The community of top developers of IT industry also supports OpenStack by working hard for its enhancement and make it better by giving efforts always.
An Array of Services
OpenStack is on a growth of services (Horizon for managing the dashboard, Nova for computing, Neutron for networking, Cinder for storage, and many as discussed above) that meet the needs of public and private clouds.
Easy to Access and manage
It is easy to access and manage in different manners as can be used by using command-line tools, can be managed by the RESTful APIs, and also the administrator can easily access and manage the various aspects of GUI-based Dashboard.
6. What is cloud computing?
Cloud computing is the on-demand delivery of computer resources through the internet. These resources consist of tools and applications like data storage, computing power, servers, databases, etc. In
cloud computing, the information to be accessed is found remotely in the cloud, or virtual space and this term is generally used to represent data centers available for many users over the internet. It is very beneficial in terms of productivity, cost savings, speed and efficiency, performance, and security for the peoples and businesses.
7. What is Hypervisor?
Hypervisor is generally a term that defines Virtual Machine Monitor (VMM) consisting of software, hardware, and firmware components which create and run virtual machines. It is used to manage virtual machine access to the underlying hardware. One of a system named as
Host machine contains hypervisor with multiple virtual machines.
8. List the types of hypervisors that OpenStack Compute supports.
There are many hypervisors that OpenStack Compute (Nova) supports to various degrees and use according to its specific purposes as follows:
- KVM (Kernel based Virtual Machine) - completely open-source and used to manage VMs.
- LXC (Linux Containers using libvirt) - Used to run Linux-based virtual machines.
- QEMU (Quick EMUlator) - Used for development purposes only.
- UML (User Mode Linux) - Used for development purposes only.
- VMware vSphere – Runs VMware-based Linux and Windows images connecting with vCenter server.
9. Explain the storage architecture of OpenStack?
There exist mainly two types of storage architectures while designing OpenStack. First one is
ephemeral storage architecture, and the other one is
persistent storage architecture.
- Ephemeral Storage
Ephemeral storage is temporary or short-lived storage. It is associated only with a specific Compute instance (virtual machine) and persists until the instance not terminated. Once the VM is terminated it is disappeared. It is primarily used for the root file system and storing the instance of the operating system. Its size is determined by the instance flavor and the image used.
- Persistent Storage
Persistent storage is manually created by the user and persists independent of any running instance. It can be used for any data that needs to be reused.
There are three types of Persistent storage as follows:
The OpenStack Block Storage service (
OpenStack-cinder) considers
Volumes by which users can access block storage devices. Volumes provide inherent redundancy and anyone can recover data through backups and snapshots. Volumes can also be encrypted for security purpose.
The OpenStack Object Storage service (
OpenStack-swift) offers a fully-distributed storage solution to store any static data or binary object like media files, instance images, and large datasets through
Containers. Any user can easily access files via API or URL.
- Shared File System Storage
Users have a mean to provision remote, shareable file systems, or shares using the OpenStack Shared File System Service (
OpenStack-manila). The tenants can openly share storage within the cloud through
Shares.
10. What is Flavor?
Flavors are the virtual hardware templates exhibit in OpenStack that specify the compute, memory, and storage capacity of an instance. Simply, Flavor is an available hardware configuration for a server which defines the size of a virtual server that can be launched.
Flavors can be created and managed by using the Horizon GUI or the OpenStack nova
flavor-* commands provided by the
python-novaclient package. Flavors can be modified. Flavors illustrate various parameters like ID, Name, Memory_MB, Root Disk GB, etc.
11. Define the main components of identity user management.
These are the main components of Identity User Management as follows:
Users - It is the digital representation of a person, system or service who uses the cloud services of OpenStack.
Roles - A role represents the authorization level of the users with a set of rights and privileges.
Tenants - A tenant refers to a group of clients or an elective term for projects/accounts. In OpenStack, a tenant shares common access with specific privileges to the software instance.
12. Mention the network options in OpenStack.
These are the network options used in OpenStack as follows:
Flat DHCP Network Manager fetches IP addresses for VM instances assigned from a subnet specified by the network administrator.
Flat Network Manager fetches IP addresses from the subnet for VM instances and then injected into the image on launch.
VLAN Network Manager is the default mode for OpenStack compute in which compute creates a VLAN and bridge for each project. It is a secured and separated network for VMs.
13. Define OpenStack API.
OpenStack Compute API is a RESTful HTTP service in nova project that provides massively scalable, on-demand, self-service access to compute resources. Those compute resources might be VMs, Physical Machines or Containers depending on the deployment.
14. Mention the segments of OpenStack Compute.
OpenStack Compute includes the following segments as:
- API Server
- Message Queue (Rabbit-MQ Server)
- Compute Workers (Nova-Compute)
- Network Controller (Nova-Network)
- Volume Worker
- Scheduler
15. What is token in OpenStack?
In OpenStack, a token is an alpha-numeric string used as a type of authentication like a password based validation. A token is generated for authorization when the user inserts the credentials and authenticates as a keystone user. Then it allows access to an OpenStack environment without any revalidation. It is active for a limited period and must be renewed after regular intervals. To generate a token, the users have to authenticate their keystone credentials.
16. Define the role of API server in OpenStack.
API server in OpenStack provides an interface for the external world to interact with the cloud infrastructure.