Five OpenStack solutions tested

The First: Ubuntu!

As unlikely as it may seem, Canonical was the first major distributor with OpenStack. This did not happen by chance, but by orders from the top: From as early as 2012, Canonical founder Mark Shuttleworth decided that Ubuntu would commit to OpenStack. Some observers appeared very surprised at the time, because until Shuttleworth's sudden change of mind, Eucalyptus – which had been released by HP in the meantime – was used at Ubuntu for cloud computing. From version 12.04 onward, Ubuntu not only delivered OpenStack Essex, it also offered commercial support for OpenStack within the framework of distribution support.

Canonical and Ubuntu have, of course, suffered from this step because, in 2012, the quality of OpenStack was far from that of the platform today. Nevertheless, Shuttleworth thought the step was still worthwhile: The ploy of binding OpenStack to Canonical and Ubuntu has more than paid off in the long term. Hardly any other online guide to OpenStack relies so much on distribution combinations as does the latest Ubuntu version (Figure 5), for which Canonical itself offers OpenStack packages.

Figure 5: Ubuntu OpenStack is, in the best sense, original; it is closely related to what OpenStack provides itself.

OpenStack still uses Launchpad – a Canonical product – for bug tracking. Ubuntu is also the only distribution for which packages are available a few hours after the release of a new OpenStack version, which means the combination of Ubuntu and OpenStack offers the greatest flexibility and possibilities for admins.

On one hand, Canonical provides OpenStack packages from the beginning for the current and for the last supported LTS version. For example, current OpenStack version packages are available for Ubuntu 12.04 and 14.04. Ubuntu has assigned members of its server team who take care only of OpenStack integration for these packages. The server team's website [14] provides information on which OpenStack version is still supported by Ubuntu.

However, Canonical wouldn't be Canonical if there wasn't also an Ubuntu cloud. Basically, Ubuntu OpenStack is nothing more than the latest LTS edition as a basis, which makes installing and using OpenStack possible using additional components. The big difference from the do-it-yourself version is just that Ubuntu provides the integration, which you would otherwise have to take care of yourself. Preconfigured integration of this kind offers both advantages and disadvantages – testing will prove this later in detail.

Ubuntu Quick-Start with DevStack

The fastest way to get a solid OpenStack base is to combine a classic LTS installation and the Ubuntu OpenStack packages. Canonical tries to keep its packages as close as possible to the originals published by OpenStack itself. Canonical only provides a typical Ubuntu theme for the dashboard (Figure 6).

Figure 6: The OpenStack dashboard in Ubuntu 14.04.

The downside to OpenStack from the manufacturer is that you are left to complete the entire integration (e.g., the configuration of individual services). This might be useful the first time as a learning experience, but it is certainly not good for productivity. The deployment tool DevStack [15] is popular because it launches a clean OpenStack and equips it with configuration files at the same time.

Anyone who combines an LTS installation with the OpenStack packages from Ubuntu can at least avoid the Puppet modules for the OpenStack parts. Writing a site manifest might still be required, but you will receive a reproducible setup for your pains. No provisions for high availability (HA) are made in this version. At least Ubuntu provides some of the necessary tools, such as MaaS (metal as a service, Canonical bare-metal deployment), free of charge. Their own deployment tool is available in the form of Juju, which carries out tasks similar to those performed by Puppet or Chef.

Questions arise as to whether it is really useful to take a freshly installed Ubuntu and then jazz it up using MaaS, OpenStack, Juju, and other components when you could just buy the whole thing ready-made, because Ubuntu OpenStack is exactly that: a complete OpenStack (i.e., an OpenStack product like those provided by Red Hat and SUSE).

The big difference between the Red Hat and SUSE versions and Ubuntu's is that Ubuntu also provides the OpenStack packages separately, so you can tinker with them if you want. If you're not inclined to tinker, turn to Ubuntu OpenStack, and you'll get similar results. Ubuntu OpenStack essentially contains four components: the most recent Ubuntu LTS, MaaS, Juju, and Landscape, the central management tool that Ubuntu also uses to handle distribution support.

Unlike the SUSE or Red Hat OpenStack solutions, Ubuntu OpenStack does not yet come as an installation CD. Instead, Ubuntu publishes instructions on how users can get their cloud up and running fast. Following the instructions worked very well in our lab, but it is not exactly suitable for the Enterprise. It may be only a matter of time before Canonical distributes the product on CD or USB flash drive and also attaches a colorful installer to makes things even easier.

In terms of price, Canonical is certainly oriented toward the upper end, as reflected the bill. If you have more than 10 physical and 10 virtual machines, the smallest package is for up to 100 computers and costs EUR80,000/$75,000 per year.

What many admins don't know is that Ubuntu offers a whole bouquet of services for OpenStack. For example, with BootStack, Canonical hosts an OpenStack cloud for the user. The customer then takes over a ready-to-use cloud on rented computers, so there are no investment costs for hardware; however, the customer has no physical way to access their data storage device.

Anyone who is interested in OpenStack training is right to use Canonical: The Orange Box [16] is a microcluster consisting of 10 Intel Next Unit of Computing (NUC) boards and corresponding additional hardware. Ubuntu marketed the box as a portable mini-cloud on which several students could set up their own cloud during training. Ubuntu does not, however, explain why three virtual machines within VirtualBox would not suffice for this. In our eyes, the Orange Box is more of a marketing gimmick, but a successful one nonetheless. Canonical OpenStack training has a good reputation; you cannot go wrong there.

Mirantis Fuel

Unlike the previous products, Mirantis is not a Linux distribution; it also doesn't have the experience that distinguishes the three others. However, Mirantis emerged almost exactly at the start of the OpenStack hype and has grown with OpenStack since then. Initially active as a training provider, to this day Mirantis earns a large part of its income by organizing training in all parts of the world. The company wants to be a big player in all matters concerning OpenStack and to claim a piece of the large OpenStack cake.

This would not be possible if all they offered were training, especially because all distributors offer training for their OpenStack products. In 2013, Mirantis therefore scheduled training in places where admins struggled most: the OpenStack installation. Those who wanted to build an OpenStack cloud at the beginning of 2013 had to adjust their configuration at the command line. Mirantis subsequently developed Fuel (Figure 7), which provides the resources to start up a cloud based on Red Hat, CentOS, or Ubuntu.

Figure 7: The Mirantis OpenStack installer Fuel, which, among other things, performs health checks.

The most important difference between Red Hat, Ubuntu, SUSE, and Mirantis is therefore that Mirantis sees itself as a provider across distributions and offers its services on both Red Hat and compatible systems such as Ubuntu. If you invest more, you also receive the support appropriate for the OpenStack product.

For the magic to work, Mirantis contributes its own OpenStack packages that Fuel automatically installs on Ubuntu or Red Hat. These packages could be partly based on those the manufacturers provide themselves, but they often differ enough to be incompatible.

Although the vendor aggressively promotes the fact that Mirantis is the only OpenStack product without vendor lock-in, admittedly, customers are bound to Mirantis; therefore, know that you will definitely be bound to some company if you want to use OpenStack.

Mirantis got quite a few things right with Fuel. The tool is publicly available along with the source and is being developed as a community project within the OpenStack project, so anyone who wants to do so can join in. The main aim is always to make OpenStack easy to install so that admins can set up a workable OpenStack quickly.

Under the hood, Fuel relies on many components that are already known from other projects. For example, Puppet looks after configuration management within a Fuel cloud. The Mirantis Nailgun is at the heart of the solution: This component is a RESTful API in the first step and is implemented in Python. Nailgun is the tool that accepts external commands in Fuel on the one hand and initiates the processes to ensure commands are implemented in OpenStack on the other.

The web interface that exposes the important functions to the user belongs to Fuel, whereas the Fuel web interface in the background is directly connected to Nailgun. Mirantis does an excellent job in this respect, because the web interface is straightforward yet so flexible that all the important controls and switches are available. Fuel does not abandon you after the installation and provides a few extra features, such as a health check for the services around OpenStack.

Fuel also has a plugin layer through which the external functionality can be upgraded. This is an invitation to other manufacturers to integrate their products with Fuel. Network manufacturers can set up Fuel so that is possible to communicate directly with their own devices. Cisco and Juniper have already made use of these possibilities. The same applies to storage: Ceph is an outstanding example for connecting external storage types.

The certification that Mirantis supplies for its retrofit plugins on request is an official blessing that a plugin is implemented in a technically impeccable way and delivers the promised performance. All told, Fuel leaves a positive impression.

As an aside, Red Hat is still officially listed as a Mirantis investor, even though the company now invests massively in the OpenStack market itself. Mirantis countered the change in Red Hats' strategy with the help of Canonical. The waves have now calmed down a little, but Mirantis and Red Hat will probably never be friends. However, the two providers have one thing in common: Mirantis refused to quote reference prices, despite persistent requests.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More