Awesome OpenStack Cloud Awesome

šŸ˜Ž Awesome lists about OpenStack: Open Source Cloud Computing Infrastructure

Contents

Documentation

OpenStack Documentation is a collection of documents that explain how to install, configure and use each OpenStack service. The documentation is written by the OpenStack community.

Services

OpenStack is a bunch of services that work together depending on your cloud needs. OpenStack is broken up into services to allow you to plug and play components depending on your needs. OpenStack services each have their own APIs.

Compute

  • Nova - Compute Service
  • Zun - Container Service

Networking

Storage

  • Cinder - Block Storage Service
  • Swift - Object Storage Service
  • Manila - Shared File Systems Service

Identity

Image, Snapshot and Backup

Hardware Lifecycle

  • Ironic - Bare Metal Service
  • Cyborg - Accelerator Management Service

Key Management

Orchestration

  • Heat - Orchestration Service
  • Senlin - Clustering Service
  • Mistral - Workflow Service
  • Zaqar - Messaging Service
  • Blazar - Resource Reservation Service

Workload Provisioning

  • Magnum - Container Orchestration Engine Provisioning (Kubernetes, Docker Swarm, Mesos, etc.)
  • Sahara - Data Processing Service
  • Trove - Database Service

Telemetry

  • Watcher - Resource Optimization Service
  • Placement - Resource Inventory Service
  • Aodh - Telemetry Alarming Service

Application Lifecycle

  • Masakari - High Availability Service
  • Murano - Application Catalog Service
  • Solum - Application Lifecycle Management Service

API Proxies

  • EC2API - EC2 Compatibility API Service

Dashboard

Keystone - Identity Service

OpenStack Keystone provides authentication, authorization and service discovery mechanisms via HTTP primarily for use by projects in the OpenStack family. It is most commonly deployed as an HTTP interface to existing identity systems, such as LDAP.

Nova - Compute Service

OpenStack Nova provides a cloud computing fabric controller, supporting a wide variety of compute technologies, including: libvirt (KVM, Xen, LXC and more), Hyper-V, VMware and OpenStack Ironic.

Neutron - Networking Service

Neutron is an OpenStack project to provide ā€œnetwork connectivity as a serviceā€ between interface devices (e.g., vNICs) managed by other OpenStack services (e.g., Nova).

Cinder - Block Storage Service

Cinder is the block storage service for OpenStack. It’s designed to present storage resources to end users that can be consumed by the OpenStack Compute Project (Nova).

Glance - Image Service

Glance is an OpenStack project that provides services and associated libraries to store, browse, share, distribute and manage bootable disk images, other data closely associated with initializing compute resources, and metadata definitions.

Swift - Object Storage Service

OpenStack Swift is a distributed object storage system designed to scale from a single machine to thousands of servers. Swift is optimized for multi-tenancy and high concurrency. Swift is ideal for backups, web and mobile content, and any other unstructured data that can grow without bound.

Horizon - Dashboard Service

Horizon is the canonical implementation of OpenStack’s Dashboard, which provides a web based user interface to OpenStack services including Nova, Swift, Keystone, etc.

Heat - Orchestration Service

Heat is a service to orchestrate multiple composite cloud applications using templates, through both an OpenStack-native REST API and a CloudFormation-compatible Query API.

Designate - DNS Service

Designate provides DNS-as-a-Service for OpenStack. It provides a multi-tenant REST API for domain & record management, and provides a framework for integration with existing DNS services.

Magnum - Container Orchestration Engine Provisioning

Magnum is an OpenStack project which offers container orchestration engines for deploying and managing containers as first class resources in OpenStack. (Kubernetes, Docker Swarm, Mesos, etc.)

Manila - Shared File Systems Service

Manila provides an open, vendor-neutral API for managing shares in a cloud environment. The project aims to deliver a set of services for management of file shares (such as NFS and CIFS) as well as an open framework for integration with traditional storage vendors and emerging solutions like hyper-convergence and software-defined storage.

Octavia - Load Balancing Service

Octavia provides the load balancing API for OpenStack. It supports multiple ā€œprovider driversā€ that implement load balancing, including the ā€œamphoraā€ reference driver included with Octavia.

Sahara - Data Processing Service

Sahara provides a simple means to provision data processing frameworks (such as Apache Hadoop, Apache Spark and Apache Storm) on OpenStack.

Trove - Database Service

Trove provides scalable and reliable Cloud Database as a Service functionality for both relational and non-relational database engines, and a single management interface for all of them.

Zun - Container Service

Zun is an OpenStack project which aims to provide an API service for running application containers without the need to manage servers or clusters.

Ironic - Bare Metal Service

Ironic is an OpenStack project which provisions bare metal (as opposed to virtual) machines. It is best thought of as a bare metal hypervisor API and a set of plugins which interact with the bare metal hypervisors. By default, it will use PXE and IPMI in concert to provision and turn on/off machines, but Ironic also supports vendor-specific plugins which may implement additional functionality.

Cyborg - Accelerator Management Service

Cyborg is an OpenStack project which aims to provide a general purpose management framework for acceleration resources (i.e. various types of accelerators, such as GPU, FPGA, ASIC, DPDK/SPDK, SSD, NVMe and so on).

Watcher - Resource Optimization Service

Watcher is an OpenStack project which aims to provide a flexible and scalable resource optimization service for multi-tenant OpenStack-based clouds. Watcher provides a robust framework to realize complex cloud optimization algorithms, which typically require a holistic view on the cloud.

Placement - Resource Inventory Service

Placement is an OpenStack project which aims to provide a central repository for resource provider inventories. It is a standalone service that interacts with the OpenStack Compute service (Nova) to provide information about resource providers in the OpenStack cloud. It is also used by other OpenStack services to query for resource provider information.

Barbican - Key Manager Service

Barbican is an OpenStack project which aims to provide a secure and reliable solution for the management of secret information, such as passwords, encryption keys, and X.509 certificates.

Senlin - Clustering Service

Senlin is an OpenStack project which aims to provide a generic clustering service for OpenStack clouds. It is capable of managing homogeneous objects exposed by other OpenStack components, such as Nova, Heat, Cinder, and Neutron.

Mistral - Workflow Service

Mistral is an OpenStack project which aims to provide a generic workflow service for OpenStack clouds. It defines a domain-specific language (DSL) for writing workflows and provides a set of workflow patterns that can be used out of the box.

Zaqar - Messaging Service

Zaqar is an OpenStack project which aims to provide a multi-tenant cloud messaging service for web developers. It features a REST API, which developers can use to send and receive messages via common web programming languages.

Blazar - Resource Reservation Service

Blazar is an OpenStack project which aims to provide resource reservation service for OpenStack clouds. It defines an efficient resource reservation model and provides a set of APIs that enables users to reserve resources (physical machines, virtual machines, network, etc.) in advance.

Aodh - Telemetry Alarming Service

Aodh is an OpenStack project which aims to provide a service for monitoring and metering OpenStack clouds. It defines a set of APIs that enables users to trigger actions based on defined rules against metric or event data collected by Ceilometer.

Masakari - High Availability Service

Masakari is an OpenStack project which aims to provide high availability for OpenStack services. It provides a framework for monitoring VMs and hosts, and launching recovery actions when failures are detected.

Murano - Application Catalog Service

Murano is an OpenStack project which aims to provide an application catalog service for OpenStack clouds. It defines a set of APIs that enable developers to register their applications in the catalog, as well as deploy and manage them in the cloud.

Solum - Application Lifecycle Management Service

Solum is an OpenStack project which aims to provide an application lifecycle management service for OpenStack clouds. It defines a set of APIs that enable developers to build, deploy, and manage their applications in the cloud.

Freezer - Backup and Restore Service

Freezer is an OpenStack project which aims to provide a backup and restore service for OpenStack clouds. It defines a set of APIs that enable users to back up and restore their OpenStack resources (e.g. Nova instances, Cinder volumes, etc.).

EC2API - EC2 Compatibility API Service

EC2API is an OpenStack project which aims to provide an EC2 compatibility API service for OpenStack clouds. It defines a set of APIs that enable users to launch and manage EC2-compatible instances in OpenStack clouds.

Skyline - Dashboard Service

Skyline is an OpenStack project which aims to provide a dashboard service for OpenStack clouds. It defines a set of APIs that enable users to manage their OpenStack resources (e.g. Nova instances, Cinder volumes, etc.) via a web-based user interface.

Community

There are several ways to get in touch with the OpenStack community:

Books

A list of books about OpenStack

Cloud Provider

A list of cloud providers that offer OpenStack-based public cloud services

  • Cloudify.ro - Cloudify.ro is a Romanian cloud provider that offers OpenStack-based public cloud services.
  • Rackspace - Rackspace is a leading provider of expertise and managed services across all the major public and private cloud technologies.
  • OVH - OVH is a French cloud provider that offers OpenStack-based public cloud services.
  • Cleura - City Network is a Swedish cloud provider that offers OpenStack-based public cloud services.
  • VEXXHOST - VEXXHOST is a Canadian cloud provider that offers OpenStack-based public cloud services.
  • Internap - Internap is a leading provider of high-performance data center services including colocation, managed hosting, cloud and network services.
  • CloudVPS - CloudVPS is a Dutch cloud provider that offers OpenStack-based public cloud services.
  • IntoVPS - IntoVPS is a Romanian cloud provider that offers unmanaged VPS hosting.
  • Virtuozzo - Virtuozzo Cloud gives MSPs and CSPs a self-service OpenStack-based cloud platform they can use to sell cost-effective cloud services to end users.
  • Fuga Cloud - Fuga Cloud is a Dutch cloud provider that offers OpenStack-based public cloud services.
  • OpenMetal - OpenMetal provides Cloud as a Service (CaaS) and Bare Metal as a Service (BMaaS) solutions.
  • REGIO.cloud - REGIO.cloud is a German cloud provider that offers OpenStack-based public cloud services and Managed Kubernetes as a Service
  • Kepler Cloud - We at Kepler Cloud believe in providing a wide range of hosting solutions that are reliable, scalable, and cost-effective OpenStack-based public cloud for our customers.

If you want to add a cloud provider to this list, please open a pull request.

Consulting

A list of companies that offer OpenStack-related consulting services

  • Mirantis - Mirantis is the pure play OpenStack company, delivering all the software, services, training, and support needed for running OpenStack.
  • Red Hat - Red Hat is the world’s leading provider of enterprise open source solutions, including high-performing Linux, cloud, container, and Kubernetes technologies.
  • SUSE - SUSE is a German multinational open-source software company that develops and sells Linux products to business customers.
  • Cleura - Cleura is a Swedish company that offers OpenStack-related consulting services.
  • VEXXHOST - VEXXHOST is a Canadian company that offers OpenStack-related consulting services.
  • CLOUDIFICATION CONSULTING - CLOUDIFICATION CONSULTING is a German company that offers OpenStack-related consulting services.
  • ULTIMUM SERVICES - ULTIMUM SERVICES is Czech company that offers OpenStack-related consulting services.
  • EasyStack - EasyStack is a Chinese company that offers OpenStack-related consulting services.
  • Dell Consulting - Dell Technologies Consulting Services help you realize transformational business outcomes by leveraging proven processes, tools and methodologies.
  • NEC - NEC is a Japanese company that offers OpenStack-related consulting services.
  • 99Cloud Consulting - 99Cloud is a Chinese company that offers OpenStack-related consulting services.
  • C-DAC - C-DAC is an Indian company that offers OpenStack-related consulting services.
  • StackHPC - StackHPC is a UK company that offers OpenStack-related consulting services.
  • Storware - Storware is a Polish company that offers OpenStack-related consulting services.
  • OSISM - OSISM is a German company that offers OpenStack-related consulting services.

If you want to add a company to this list, please open a pull request.

Deployment Tools

Tools to install, manage and operate OpenStack deployments

  • OpenStack Helm - OpenStack Helm is a collection of Helm charts that make it easier to deploy OpenStack on Kubernetes.
  • Kolla Ansible - Kolla Ansible is a set of Ansible playbooks to deploy OpenStack.
  • TripleO - TripleO is a project aimed at installing, upgrading and operating OpenStack clouds
  • Kayobe - Kayobe enables deployment of containerised OpenStack to bare metal.
  • OpenStack Ansible - OpenStack Ansible is an official OpenStack project which aims to deploy production environments from source in a way that makes it scalable while also being simple to operate, upgrade, and grow.
  • OpenStack Charms - OpenStack Charms is an official OpenStack project which aims to deploy production environments from source in a way that makes it scalable while also being simple to operate, upgrade, and grow.
  • Bifrost - Bifrost is an official OpenStack project which aims to deploy production environments from source in a way that makes it scalable while also being simple to operate, upgrade, and grow.
  • Openstack Chef - OpenStack Chef is an official OpenStack project which aims to deploy production environments from source in a way that makes it scalable while also being simple to operate, upgrade, and grow.
  • OpenStack Puppet - Puppet OpenStack modules bring scalable and reliable IT automation to OpenStack cloud deployments.
  • Vexxhost Atmosphere - Simple & easy private cloud platform featuring VMs, Kubernetes & bare-metal.
  • OSISM - OSISM provides production-grade cloud infrastructure based on OpenStack for enterprises, service providers & ISVs

Software Development Kits

Software Development Kits (SDKs) for OpenStack that allow you to interact with OpenStack APIs programmatically

Go

  • gophercloud - Gophercloud is a Go SDK for OpenStack clouds.
  • swift-client - Go language interface to Swift / Openstack Object Storage / Rackspace cloud files

Java

  • openstack4j - Fluent OpenStack SDK for Java
  • openstack-java-sdk - OpenStack SDK for Java
  • jclouds - jclouds is an open source multi-cloud toolkit for the Java platform that gives you the freedom to create applications that are portable across clouds while giving you full control to use cloud-specific features.
  • joss - Java library for OpenStack Storage, aka Swift

JavaScript

  • pkgcloud - pkgcloud is a standard library for node.js that abstracts away differences among multiple cloud providers.
  • js-openclient - An opinionated client for dealing with RESTful APIs (particularly OpenStack’s).
  • node-openstack-wrapper - A node.js wrapper for the OpenStack API.

.NET

PHP

  • php-opencloud - s an SDK which allows PHP developers to easily connect to OpenStack APIs in a simple and idiomatic way

Python

  • shade - Shade was a simple client library for interacting with OpenStack clouds. Shade has been superceded by openstacksdk and should not be used today.
  • openstacksdk - OpenStack SDK for Python
  • OpenStackClients - OpenStackClients is a set of command line clients for OpenStack services.
  • libcloud - Apache Libcloud is a Python library which hides differences between different cloud provider APIs and allows you to manage different cloud resources through a unified and easy to use API.

Ruby

  • fog-openstack - The Ruby cloud services library.
  • mistry - A Ruby library for OpenStack clouds.
  • aviator - A framework for building OpenStack CLI plugins.

Certification

A list of OpenStack certification programs

  • Certified OpenStack Administrator - The Certified OpenStack Administrator (COA) exam is the first professional certification offered by the OpenStack Foundation.
  • Red Hat Certified System Administrator in Red Hat OpenStack - The Red Hat Certified System Administrator in Red Hat OpenStack exam (EX210) tests candidates skills, knowledge and abilities needed to create, configure, and manage private clouds using the Red Hat Enterprise Linux OpenStack Platform.

Blogs

A list of blogs that write about OpenStack

  • OpenStack Blog - Official OpenStack Blog
  • OpenStack Superuser - OpenStack Superuser is a publication built to chronicle the work of superusers, giving them a platform to share their knowledge and experiences.
  • Adam Young’s Web Log - Adam Young is a Principal Software Engineer at Red Hat, working on the OpenStack project.
  • Flavio’s Blog - Flavio Percoco is a Principal Software Engineer at Red Hat, working on the OpenStack project.
  • The RDO Blog - The RDO Blog is a community blog about RDO and OpenStack.
  • The Stack - The Stack is a leading online publication for news, blogs and reviews covering cloud computing technology, including OpenStack.
  • It’s always more complicated - Sean Dague is Cloud Architect at IBM Quantum
  • The OpenStack Blog - The OpenStack Blog is a community blog about OpenStack.
  • Julios Blog - A blog about open-source, cloud computing, digital transformation, and other emerging technologies
  • Doug Hellmann - Doug Hellmann is a software developer with a wide range of experience in application areas and types. He is currently employed by Red Hat to work on OpenStack full time
  • thePub - OpenStack - NetApp is the leader in data insight, access and control for hybrid cloud environments.
  • Rob Hirschfeld - Rob Hirschfeld is CEO and co-founder of RackN, leaders in physical and hybrid DevOps software.
  • jpichon.net - A blog about open-source, technology and OpenStack
  • OpenStack in production - Follow this blog for hints, tips and tricks from the CERN OpenStack cloud team.
  • Assaf Muller - Assaf Muller is associate manager of the Red Hat OpenStack Networking engineering team. He was formerly a neutron core reviewer, member of the drivers team and responsible for the project’s testing
  • JavaCruft - James Page is a Technical Architect of the Ubuntu Server Team. Follow this blog for resources and articles on Ubuntu OpenStack.
  • Steve Hardy - Steve Hardy is a software engineer working for Red Hat, currently he is primarily involved with the Heat and TripleO projects. He shares his thoughts and experience on open-source, openstack, linux and much more.
  • Cloud Native - Swapnil Kulkarni’s Blog - Swapnil is an Open Source enthusiast with experience in Blockchain, Cloud Native solutions, Containers & Enterprise Software Product architectures. He has knowledge about different private, hybrid cloud architectures with OpenStack, CloudStack, IBM Cloud and more.

Control Panel and Billing Platforms

Platforms that allow you to bill your customers for OpenStack-based cloud services

  • osie.io - osie.io is a modern software platform for billing and managing OpenStack-based cloud services.
  • cloud7 - cloud7 is a billing platform for OpenStack-based cloud services.
  • HostBill - HostBill is a billing platform for OpenStack-based cloud services.
  • OpenStack VPS & Cloud For WHMCS - OpenStack VPS & Cloud For WHMCS is a billing platform for OpenStack-based cloud services.
  • Fleio - Fleio OpenStack Edition provides full billing and control panel functionality that enables service providers to offer public cloud services

YouTube Channels

A list of YouTube channels that publish videos about OpenStack

  • OpenInfra Foundation - OpenInfra Foundation is the home of open infrastructure.
  • The Linux Foundation - The Linux Foundation is a nonprofit consortium dedicated to fostering the growth of Linux and collaborative software development.
  • freeCodeCamp.org - freeCodeCamp.org is a nonprofit community that helps you learn to code by building projects.
  • Learn Linux TV- Learn Linux TV is a YouTube channel that publishes videos about Linux and OpenStack.
  • The Cloudcast - The Cloudcast is a YouTube channel that publishes videos about cloud computing.
  • Canonical Ubuntu - Canonical Ubuntu is a YouTube channel that publishes videos about Ubuntu and OpenStack.

Distributions

A list of OpenStack distributions

  • Vanilla OpenStack - Vanilla OpenStack is the official OpenStack distribution.
  • Canonical OpenStack - Canonical OpenStack is an enterprise cloud platform engineered for price-performance.
  • Red Hat OpenStack Platform - Red Hat OpenStack Platform is a cloud computing platform that virtualizes resources from industry-standard hardware, organizes those resources into clouds, and manages them so users can access what they need—when they need it.
  • Mirantis Cloud Platform - Mirantis Cloud Platform (MCP) is a Kubernetes and OpenStack IaaS software for bare metal, VMs, and containers at scale.
  • Virtuozzo Hybrid Infrastructure - Virtuozzos enhanced OpenStack-based cloud platform enables private cloud through hosted, on-premises and hybrid deployment models.

License:

Creative Commons License
awesome-openstack-cloud by Dragomir Alin is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.

See the LICENSE for more info.