OpenStack

It is mostly deployed as infrastructure-as-a-service (IaaS) in both public and private clouds where virtual servers and other resources are made available to users.

[2] The software platform consists of interrelated components that control diverse, multi-vendor hardware pools of processing, storage, and networking resources throughout a data center.

[9] The project intended to help organizations offer cloud-computing services running on standard hardware.

[16] In August 2012, SUSE announced its commercially supported enterprise OpenStack distribution based on the "Essex" release.

[21] In July 2013, NASA released an internal audit citing lack of technical progress and other factors as the agency's primary reason for dropping out as an active developer of the project and instead focus on the use of public clouds.

[22] This report is contradicted in part by remarks made by Ames Research Center CIO, Ray O'Brien.

[23] As of Nov 2021, NASA continues to utilize OpenStack in IAAS and PAAS support of the Discover supercomputer cluster.

[30] At the 2014 Interop and Tech Field Day, software-defined networking was demonstrated by Avaya using Shortest path bridging and OpenStack as an automated campus, extending automation from the data center to the end device, and removing manual provisioning from service delivery.

[31][32] As of November 2021[update], NASA hosts the Explore OpenStack private cloud in support of the Discover HPC.

[40] Nova is the OpenStack project that provides a way to provision compute instances as virtual machines, real hardware servers (through the use of ironic), and has limited support for system containers.

[91] Cinder is the OpenStack Block Storage service for providing volumes to Nova virtual machines, Ironic bare metal hosts, containers and more.

It supports standard username and password credentials, token-based systems and AWS-style (i.e. Amazon Web Services) logins.

VM images made available through Glance can be stored in a variety of locations from simple filesystems to object-storage systems like the OpenStack Swift project.

[98] In August 2009, Rackspace started the development of the precursor to OpenStack Object Storage, as a complete replacement for the Cloud Files product.

[99] SwiftStack, an object storage software company, is currently the leading developer for Swift with significant contributions from Intel, Red Hat, NTT, HP, IBM, and more.

Using these abstractions, developers working on Horizon don't need to be intimately familiar with the APIs of each OpenStack project.

Users will specify several parameters like the Hadoop version number, the cluster topology type, node flavor details (defining disk space, CPU and RAM settings), and others.

Sahara also provides means to scale a preexisting Hadoop cluster by adding and removing worker nodes on demand.

By default, it will use PXE and IPMI or Redfish[108] in concert to provision and manage physical machines, but Ironic supports and can be extended with vendor-specific plugins to implement additional functionality.

The service features a fully RESTful API, which developers can use to send messages between various components of their SaaS and mobile applications by using a variety of communication patterns.

Other OpenStack components can integrate with Zaqar to surface events to end users and to communicate with guest agents that run in the "over-cloud" layer.

Standard primitives include the ability to create, delete, and give/deny access to a share and can be used standalone or in a variety of different network environments.

Commercial storage appliances from EMC, NetApp, HP, IBM, Oracle, Quobyte, INFINIDAT and Hitachi Data Systems are supported as well as filesystem technologies such as Red Hat GlusterFS[116] or Ceph.

It accomplishes this by offloading user search queries from other OpenStack API servers by indexing their data into Elasticsearch.

[123] This alarming service enables the ability to trigger actions based on defined rules against metric or event data collected by Ceilometer or Gnocchi.

Therefore, a strict definition might be: an application that is designed to offer OpenStack capability without the necessity of an underlying operating system.

Vendors have been heavily involved in OpenStack since its inception, and have since developed and are marketing a wide range of appliances, applications and distributions.

[139] In an article on The New Stack, Atul Jha identifies five challenges any organization wishing to deploy OpenStack will face.

One obvious solution would be to take a complete vendor supplied package containing hardware and software, although due diligence is essential.

[145] Due to OpenStack's multi-project development approach, the complexity involved in synchronising the different projects during an upgrade may mean that downtime is unavoidable.

NASA's Nebula platform
Lew Tucker, VP & CTO, Cloud Computing of Cisco in 2012
OpenStack is broken up into services to allow you to plug and play components depending on your needs. The OpenStack map gives you an "at a glance" view of the OpenStack landscape to see where those services fit and how they can work together.