The OpenStack Horizon dashboard provides cloud admins with a web-based interface to manage OpenStack services, such as Nova for compute and Swift for storage.
Whether you run a public cloud or private cloud, customizing the OpenStack Horizon dashboard could be a good option, allowing admins to include corporate branding, change the default layout and more.
The most recent versions of OpenStack enhance admins' options to perform this customization. Since the OpenStack Kilo release in April 2015, for example, users can access customization themes for Horizon. A theme is a directory that contains a _variables.scss file that defines the colors the dashboard will use. By default, this will show the standard color scheme, but modifying this file allows administrators to use nondefault colors.
Another part of the theme is the _styles.scss file, where users can define additional styles. These styles define the overall layout and look of the Horizon webpage, and by modifying it, administrators can customize the look and feel.
The current configuration allows Horizon administrators to work with custom themes, as well as themes that are based on an existing theme. In both cases, they need to create the local_settings.py file to define the themes that should be used. The local_settings.py file defines Python variables that different parts of the Horizon web interface use. Modifying it makes it easy to include an alternative design to display what you want to display. An annotated example of this file is available on GitHub.
In addition to customizing the navigation bar, tables, alerts and other elements, Horizon configuration also allows admins to include company logos or advanced branding. To change a logo, admins can replace the logo-splash.png file within the Horizon theme directory. However, more advanced configuration options for the OpenStack Horizon dashboard are available as well.
Overcome common OpenStack scalability challenges
Ensure your open source cloud code is safe
Explore five open source tools for cloud management