Tip: Enable the new generation launch dialog in OpenStack

One of the most popular ways to manage an OpenStack cloud is through the Dashboard, codenamed Horizon. Although no one can argue the fact that it has improved a lot since the early days, there are still some things that need to be tweaked towards a better user experience.

The launch instance dialog, for one, bugged me for a long time.

At its current release, it is good enough for small installations and will do the work. It also supports a significant subset of OpenStack services, but when your installation is filled with images, flavors and other resources, then using the dialog becomes a struggle due to the lack of search and sorting — and the limited number of drop down boxes (with existing ones only being useful for certain resources). There is also no easy way to compare two or more flavors and if you need to go through the details of one, then you’ll have to go back to the flavors menu.

In sort, things could be much better.

So, one day while I was exploring the local_settings.py file I noticed a pair of quite promising variable settings, as follows.

LAUNCH_INSTANCE_LEGACY_ENABLED = True

LAUNCH_INSTANCE_NG_ENABLED = False

Even though I haven’t been following all the latest developments in the Dashboard program, it looked as though the development team was working on something new. The first variable toggles the legacy launch instance dialog and the second one enables the new generation launch instance dialog. Note that you can have both buttons enabled or you can just enable only one at a time. Modify the variables as follows to get the new generation dialog:

LAUNCH_INSTANCE_LEGACY_ENABLED = False

LAUNCH_INSTANCE_NG_ENABLED = True

After you make the changes you must restart apache in order for the OpenStack Dashboard to reload the local_settings.py (and pay attention to the letter case, as the variable settings are case sensitive).

launchDialog
Image: Current and new gen launch instance dialog
The NG launch dialog is implemented with (popular JS framework) AngularJS and it has been introduced as an optional feature in Kilo. It has a whole set of new features like search, sorting, comparison views and adjustable cells to reveal all details about the listed resources just to name a few. You can take a more detailed tour of the new features here.