What is an OpenStack Distribution ?

OpenStack distribution (or distro for short), is typically a product offering, which makes it easy to setup and use OpenStack. While one can download the various pieces of OpenStack cloud management software, and deploy it in their environment, it’s a non-trivial task, on the other hand.

Getting a working OpenStack setup requires deep knowledge of various constituent pieces, configuration options, dependencies and so on. Add to that, the need for additional requirements like support and maintenance, certification, business continuity options and others. This is where OpenStack distribution comes into play.

At a high level, OpenStack distribution consists of the following components:

openstack_distro

Key Features of an OpenStack distribution

  • Quick Time-to-Value in setting up an OpenStack based cloud environment.

    • Most of the distributions have some sort of automated installation ‘toolkit’ for OpenStack. For example-  Redhat have ‘packstack’, which is based on puppet. Mirantis have ‘fuel’, which is also based on puppet.
  • Packaged, Tested and Certified Openstack software
  • Support & Maintenance Options
  • Bundling of value-adds like non-core OpenStack projects, 3rd party OpenStack plugins, business continuity options.
    • For example, Mirantis OpenStack includes non-core OpenStack projects like Sahara for automated deployment of Hadoop cluster, supports High-Availability for OpenStack controller among other value-added features.

You can see a list of OpenStack distribution in the OpenStack marketplace – http://www.openstack.org/marketplace/distros/

Distributions are available from Mirantis, Redhat, Canonical, SuSe, IBM, HP, VMware, Rackspace and many other companies.

There are so many OpenStack distributions  available today, that selecting a specific one becomes very difficult. The key differentiation is mostly around the following features:

  • Supported hypervisors for compute

  • Supported 3rd party storage and network plug-ins
  • Value Adds like – Reference Configuration, High-Availability Options, Disaster Recovery Options, Certification and Training, Logging and Monitoring among others.

  • Availability of fully functional free version versus paid version.

Choosing a specific distribution is not easy, and needs careful consideration. One recommended approach, is to start with your requirements, and then evaluate the distributions on the basis of your specific functional and non-functional requirements.

Some of the commonly used functional requirements to select a distribution are listed here:

Functional Requirements

  1. Supported hypervisors – KVM, Xen, VMware, Hyper-V etc.

  2. Storage Options – Ceph, Gluster, GPFS, IBM, EMC etc

  3. Network Options – VLAN, Tunneling (GRE/VXLAN), SDN options etc

  4. High-Availability Options for OpenStack services

  5. Supported OpenStack release versions and upgrade options.

This is not an exhaustive list. In many environments, there could be specific requirements on application provisioning, application monitoring etc. For example – if the primary requirement is to deploy Hadoop workloads via OpenStack, then selecting a distribution, which supports the same will be a good idea. Similarly, if the requirement is to seamlessly integrate with a specific monitoring software for specific applications deployed via OpenStack, then selecting a distribution supporting the specific monitoring software will be a good idea.

Some of the commonly used non-functional requirements to select a distribution are listed here:

Non-functional Requirements

  1. Support Options – 24×7, 12×7, location etc

  2. Training and Certification options

  3. Consulting Options and Reference Guides

  4. Scalability limits – like number of supported hypervisor nodes, instances etc.

  5. Existing Proof-points

  6. Pricing Options

Once you have zeroed down on possible distributions, it’s very important to do some prototyping before taking the final call. Many OpenStack distributions are free to download and try, and this makes it very easy to evaluate specific distributions as per requirement.

Pradipta Kumar Banerjee

I'm a Cloud and Linux/ OpenSource enthusiast, with 16 years of industry experience at IBM. You can find more details about me here - Linkedin

You may also like...