In this post, I discuss what OpenStack is by examining its history, community, and a few of the core projects that are most frequently installed. I'm not diving into things too deeply as the intent is to do more in-depth articles on each of the services (projects) mentioned here in the future.
The simplest way to describe OpenStack is that it is an Infrastructure as a Service (IaaS) offering that's used for both public and private clouds to manage compute resources. In this article, I review the history behind OpenStack and review some of the larger projects (services) that make it up.
[ You might also enjoy: Deploying a virtual TripleO standalone OpenStack system ]
History
OpenStack officially came into being in July 2010 when NASA's compute project platform, now known as Nova, was combined with Rackspace's Cloud Files platform, which became Swift when open-sourced. In October 2010, OpenStack's first official version containing only these two projects was presented as the Austin release. In February 2011, the second OpenStack incarnation, Bexar (pronounced Bear), was released and included the image project Glance.
With the fifth release, Essex, in April 2012, more projects began to be added to OpenStack, starting with Horizon (Dashboard) and Keystone (Identity). Cinder (Block Storage) and Quantum (Networking), which later was renamed to Neutron, were added in the next release, with more projects added in the Havana release and beyond until the maximum number of projects (44) were included in Stein.
The services (projects)
While Swift and Nova were the first projects within OpenStack, this article explores the various services in the order that you manually install them. I also discuss both block and object storage. Covering the topics in this order helps to clarify how the services all work together.
The following diagram visualizes how these projects fit together in the larger picture of OpenStack. For example, the diagram shows how the Dashboard (Horizon) provides the user interface (UI) for the other services shown except for the Identity (Keystone) service. The Identity service provides the authentication for the Dashboard and other services.
Identity (Keystone)
The first service to be deployed is the Identity service, installed on the Controller node(s). The Identity service provides a single point of integration for managing authentication, as mentioned, and also authorization and the service catalog. The service catalog lists installed services within the OpenStack deployment and the endpoint locations for the public, internal, and admin APIs.
Image (Glance)
The next service that you need to install is the Image (Glance) service. The Image service allows users to find, register, and retrieve images to create virtual machines (VMs). The Image service stores not only the images but the metadata information needed by users and other services. As the above image displays, the Image service can store the images locally or in different storage types such as OpenStack's Object Storage service (Swift).
Compute (Nova)
The Compute service is the heart of OpenStack in many ways as it is the service that decides where your virtual machine is launched. The Compute service is also responsible for creating and maintaining Flavors (sizes of VMs) and Quotas (what resources a project and user has access to). The Compute service is installed on the Controller node(s) and the Compute nodes themselves, which provide the Hypervisors.
Networking (Neutron)
The Networking service is ultimately responsible for both the internal and external networking for your OpenStack deployment. When configuring your OpenStack deployment's networking layout, there are two basic options: Provider and Self-Service.
The Provider Network option is Layer 2 (Data Link) networking which then bridges virtually to physical networks for the Layer 3 (Network) routing.
The Self-Service Network options provide the same Layer 2 networking as the Provider Network and do the Layer 3 routing within OpenStack before connecting to physical networks.
Dashboard (Horizon)
The Dashboard is an optional service for OpenStack and only requires the Identity service to be installed. The Dashboard provides a frontend to the other OpenStack services allowing users to launch VMs, configure networks, etc. if they have the correct access without needing the command line or using the APIs directly.
Block Storage (Cinder)
Another optional service for OpenStack is the Block Storage service which can be used to provide, as the name implies, block storage devices for the VM or add additional space to a VM. The Block Storage service can be configured to use LVM or drivers from contributing companies to connect to their hardware.
Object Storage (Swift)
While Swift was part of the original release, Object Storage is optional and is not required to be deployed. In addition, Swift can be installed as a standalone service. The Object Storage service provides scalability and is optimized for high availability, durability, and concurrency across the data set.
[ Take this free course: Red Hat OpenStack Technical Overview. ]
Wrap up
As mentioned, this is a relatively high overview of what OpenStack is, how it came to be, and the most commonly installed services. My goal is to publish more detailed articles on individual services as well as how to perform tasks within OpenStack in future articles.
About the author
Amy Marrich is a Principal Technical Marketing Manager at Red Hat. She previously worked at a small Open Source e-assessment company in Luxembourg where she was the Open Source Community and Global Training Manager. Previously she was the OpenStack Instructor at Linux Academy and a Linux System Engineer on the Platform Engineering Cloud Operations team at Rackspace. She currently serves on the OpenStack Board, is an active member of the Openstack Ansible project, chair of the OSF Diversity and Inclusion Working Group, and previously the chair of the OpenStack User Committee. Amy spends her free time competing in performance events (agility, FASt Cat, and dock diving) with her Dalmatians and competing in Dressage with her Connemara pony.
Browse by channel
Automation
The latest on IT automation for tech, teams, and environments
Artificial intelligence
Updates on the platforms that free customers to run AI workloads anywhere
Open hybrid cloud
Explore how we build a more flexible future with hybrid cloud
Security
The latest on how we reduce risks across environments and technologies
Edge computing
Updates on the platforms that simplify operations at the edge
Infrastructure
The latest on the world’s leading enterprise Linux platform
Applications
Inside our solutions to the toughest application challenges
Original shows
Entertaining stories from the makers and leaders in enterprise tech
Products
- Red Hat Enterprise Linux
- Red Hat OpenShift
- Red Hat Ansible Automation Platform
- Cloud services
- See all products
Tools
- Training and certification
- My account
- Customer support
- Developer resources
- Find a partner
- Red Hat Ecosystem Catalog
- Red Hat value calculator
- Documentation
Try, buy, & sell
Communicate
About Red Hat
We’re the world’s leading provider of enterprise open source solutions—including Linux, cloud, container, and Kubernetes. We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.
Select a language
Red Hat legal and privacy links
- About Red Hat
- Jobs
- Events
- Locations
- Contact Red Hat
- Red Hat Blog
- Diversity, equity, and inclusion
- Cool Stuff Store
- Red Hat Summit