openstack-manuals/doc/install-guide/source/dashboard-install.rst

5.7 KiB

Install and configure

This section describes how to install and configure the dashboard on the controller node.

The dashboard relies on functional core services including Identity, Image service, Compute, and either Networking (neutron) or legacy networking (nova-network). Environments with stand-alone services such as Object Storage cannot use the dashboard. For more information, see the developer documentation <http://docs.openstack.org/developer/ horizon/topics/deployment.html>__.

This section assumes proper installation, configuration, and operation of the Identity service using the Apache HTTP server and Memcached as described in the "keystone-install" section.

To install the dashboard components

obs

  • Install the packages:

    # zypper install openstack-dashboard apache2-mod_wsgi \
      memcached python-python-memcached

rdo

  • Install the packages:

    # yum install openstack-dashboard httpd mod_wsgi \
      memcached python-memcached

ubuntu

  • Install the packages:

    # apt-get install openstack-dashboard

debian

  • Install the packages:

    # apt-get install openstack-dashboard-apache
  • Respond to prompts for web server configuration.

    Note

    The automatic configuration process generates a self-signed SSL certificate. Consider obtaining an official certificate for production environments.

    Note

    There are two modes of installation. One using /horizon as the URL, keeping your default vhost and only adding an Alias directive: this is the default. The other mode will remove the default Apache vhost and install the dashboard on the webroot. It was the only available option before the Liberty release. If you prefer to set the Apache configuration manually, install the openstack-dashboard package instead of openstack-dashboard-apache.

ubuntu

Note

Ubuntu installs the openstack-dashboard-ubuntu-theme package as a dependency. Some users reported issues with this theme in previous releases. If you encounter issues, remove this package to restore the original OpenStack theme.

To configure the dashboard

obs

  • Configure the web server:

    # cp /etc/apache2/conf.d/openstack-dashboard.conf.sample \
      /etc/apache2/conf.d/openstack-dashboard.conf
    # a2enmod rewrite;a2enmod ssl;a2enmod wsgi

obs

  • Edit the /srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py file and complete the following actions:

rdo

  • Edit the /etc/openstack-dashboard/local_settings file and complete the following actions:

ubuntu or debian

  • Edit the /etc/openstack-dashboard/local_settings.py file and complete the following actions:
  • Configure the dashboard to use OpenStack services on the controller node:

    OPENSTACK_HOST = "controller"
  • Allow all hosts to access the dashboard:

    ALLOWED_HOSTS = ['*', ]
  • Configure the memcached session storage service:

    CACHES = {
        'default': {
             'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
             'LOCATION': '127.0.0.1:11211',
        }
    }

Note

Comment out any other session storage configuration.

obs

Note

By default, SLES and openSUSE use an SQL database for session storage. For simplicity, we recommend changing the configuration to use memcached for session storage.

  • Configure user as the default role for users that you create via the dashboard:

    OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user"
  • Optionally, configure the time zone:

    TIME_ZONE = "TIME_ZONE"

    Replace TIME_ZONE with an appropriate time zone identifier. For more information, see the list of time zones.

To finalize installation

rdo

Configure SELinux to permit the web server to connect to OpenStack services:

# setsebool -P httpd_can_network_connect on

rdo

Due to a packaging bug, the dashboard CSS fails to load properly. Run the following command to resolve this issue:

# chown -R apache:apache /usr/share/openstack-dashboard/static

For more information, see the bug report.

ubuntu or debian

Reload the web server configuration:

# service apache2 reload

obs

Start the web server and session storage service and configure them to start when the system boots:

# systemctl enable apache2.service memcached.service
# systemctl start apache2.service memcached.service

Note

Restart the Apache HTTP service if it is already running.

rdo

Start the web server and session storage service and configure them to start when the system boots:

# systemctl enable httpd.service memcached.service
# systemctl start httpd.service memcached.service

Note

Restart the Apache HTTP service if it is already running.