openstack-manuals/doc/install-guide/section_dashboard-install.xml
Joseph Robinson 3489d19410 Increase dashboard installation introduction clarity
Moved content associated with the administration guide
to the "next steps" section of the Horizon install guide.

Added content to the Horizon installation introduction
to increase clarity, and match the OpenStack
installation documents. Unified xml file header.

Change-Id: I3a1f9fc1e1515d22a6b3e7ddc19df1db3ecfd884
backport: none
Implements: blueprint installation-guide-improvements
2014-07-20 14:12:08 -05:00

168 lines
10 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<section xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink"
version="5.0"
xml:id="install_dashboard">
<?dbhtml stop-chunking?>
<title>Install the dashboard</title>
<para>Before you can install and configure the dashboard, meet the requirements in <xref
linkend="dashboard-system-requirements"/>.</para>
<note>
<para>When you install the dashboard with only OpenStack Object Storage and Identity, the
dashboard does not show projects and is unusable.</para>
</note>
<para>For more information about how to deploy the dashboard, see <link
xlink:href="http://docs.openstack.org/developer/horizon/topics/deployment.html"
>deployment topics in the developer documentation</link>.</para>
<procedure>
<step>
<para>Install the dashboard on the node that can contact the Identity service as
root:</para>
<screen os="ubuntu;debian"><prompt>#</prompt> <userinput>apt-get install apache2 memcached libapache2-mod-wsgi openstack-dashboard</userinput></screen>
<screen os="rhel;centos;fedora"><prompt>#</prompt> <userinput>yum install memcached python-memcached mod_wsgi openstack-dashboard</userinput></screen>
<screen os="opensuse;sles"><prompt>#</prompt> <userinput>zypper install memcached python-python-memcached apache2-mod_wsgi openstack-dashboard openstack-dashboard-test</userinput></screen>
<note os="ubuntu">
<title>Note for Ubuntu users</title>
<para>The <package>openstack-dashboard-ubuntu-theme</package> package prevents
translations, several menus, and the network map from rendering correctly.
Remove this package:</para>
<screen><prompt>#</prompt> <userinput>apt-get remove --purge openstack-dashboard-ubuntu-theme</userinput></screen>
</note>
<note os="debian">
<title>Note for Debian users</title>
<para>To install the Apache package:</para>
<screen><prompt>#</prompt> <userinput>apt-get install openstack-dashboard-apache</userinput></screen>
<para>This command installs and configures Apache correctly, provided that the user
asks for it during the <package>debconf</package> prompts. The default SSL
certificate is self-signed, and it is probably wise to have it signed by a root
Certificate Authority (CA).</para>
</note>
</step>
<step>
<para>Modify the value of <literal>CACHES['default']['LOCATION']</literal> in <filename
os="ubuntu;debian"
>/etc/openstack-dashboard/local_settings.py</filename><filename
os="centos;fedora;rhel"
>/etc/openstack-dashboard/local_settings</filename><filename os="opensuse;sles"
>/srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py</filename>
to match the ones set in <filename os="ubuntu;debian"
>/etc/memcached.conf</filename><filename os="centos;fedora;rhel;opensuse;sles"
>/etc/sysconfig/memcached</filename>.</para>
<para>Open <filename os="ubuntu;debian"
>/etc/openstack-dashboard/local_settings.py</filename>
<filename os="centos;fedora;rhel">/etc/openstack-dashboard/local_settings</filename>
and look for this line:</para>
<programlisting language="python" linenumbering="unnumbered"><?db-font-size 75%?>CACHES = \
{'default': {'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': '127.0.0.1:11211'}}</programlisting>
<note>
<title>Notes</title>
<itemizedlist>
<listitem>
<para>The address and port must match the ones set in <filename
os="ubuntu;debian">/etc/memcached.conf</filename><filename
os="centos;fedora;rhel;opensuse;sles"
>/etc/sysconfig/memcached</filename>.</para>
<para>If you change the memcached settings, you must restart the Apache web
server for the changes to take effect.</para>
</listitem>
<listitem>
<para>You can use options other than memcached option for session storage.
Set the session back-end through the
<parameter>SESSION_ENGINE</parameter> option.</para>
</listitem>
<listitem>
<para>To change the timezone, use the dashboard or edit the <filename
os="centos;fedora;rhel"
>/etc/openstack-dashboard/local_settings</filename><filename
os="ubuntu;debian"
>/etc/openstack-dashboard/local_settings.py</filename><filename
os="opensuse;sles"
>/srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py</filename>
file.</para>
<para>Change the following parameter: <code>TIME_ZONE = "UTC"</code></para>
</listitem>
</itemizedlist>
</note>
</step>
<step>
<para>Update the <literal>ALLOWED_HOSTS</literal> in
<filename>local_settings.py</filename> to include the addresses from which you
want to access the dashboard.</para>
<para>Edit <filename os="centos;fedora;rhel"
>/etc/openstack-dashboard/local_settings</filename><filename os="ubuntu;debian"
>/etc/openstack-dashboard/local_settings.py</filename><filename
os="opensuse;sles"
>/srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py</filename>:</para>
<programlisting language="python" linenumbering="unnumbered"><?db-font-size 75%?>ALLOWED_HOSTS = ['localhost', 'my-desktop']</programlisting>
</step>
<step>
<para>This guide assumes that you are running the dashboard on the controller node. You
can easily run the dashboard on a separate server by changing the appropriate
settings in <filename>local_settings.py</filename>.</para>
<para>Edit <filename os="centos;fedora;rhel"
>/etc/openstack-dashboard/local_settings</filename><filename os="ubuntu;debian"
>/etc/openstack-dashboard/local_settings.py</filename><filename
os="opensuse;sles"
>/srv/www/openstack-dashboard/openstack_dashboard/local/local_settings.py</filename>
and change <literal>OPENSTACK_HOST</literal> to the host name of your Identity
service:</para>
<programlisting language="python" linenumbering="unnumbered"><?db-font-size 75%?>OPENSTACK_HOST = "controller"</programlisting>
</step>
<step os="opensuse;sles">
<para>Configure Apache:</para>
<screen><prompt>#</prompt> <userinput>cp /etc/apache2/conf.d/openstack-dashboard.conf.sample \
/etc/apache2/conf.d/openstack-dashboard.conf</userinput>
<prompt>#</prompt> <userinput>a2enmod rewrite;a2enmod ssl;a2enmod wsgi</userinput></screen>
</step>
<step os="opensuse;sles">
<para>By default, the <package>openstack-dashboard</package> package enables a database
as a session store.</para>
<para>Before you continue, you can either:</para>
<itemizedlist>
<listitem>
<para>Change the session store. See <link
xlink:href="http://docs.openstack.org/admin-guide-cloud/content/dashboard-sessions.html"
><citetitle pubwork="chapter">Set up session
storage</citetitle></link> in the <citetitle>Cloud Administrator
Guide</citetitle>.</para>
</listitem>
<listitem>
<para>Complete the database session store set up. See <link
xlink:href="http://docs.openstack.org/admin-guide-cloud/content/dashboard-session-database.html">
<citetitle pubwork="chapter">Initialize and configure the
database</citetitle></link>.</para>
</listitem>
</itemizedlist>
</step>
<step os="centos;fedora;rhel">
<para>Ensure that the SELinux policy of the system is configured to allow network
connections to the HTTP server:</para>
<screen><prompt>#</prompt> <userinput>setsebool -P httpd_can_network_connect on</userinput></screen>
</step>
<step>
<para>Start the Apache web server and memcached:</para>
<screen os="opensuse;sles"><prompt>#</prompt> <userinput>service apache2 start</userinput>
<prompt>#</prompt> <userinput>service memcached start</userinput>
<prompt>#</prompt> <userinput>chkconfig apache2 on</userinput>
<prompt>#</prompt> <userinput>chkconfig memcached on</userinput></screen>
<screen os="fedora;centos;rhel"><prompt>#</prompt> <userinput>service httpd start</userinput>
<prompt>#</prompt> <userinput>service memcached start</userinput>
<prompt>#</prompt> <userinput>chkconfig httpd on</userinput>
<prompt>#</prompt> <userinput>chkconfig memcached on</userinput></screen>
<screen os="ubuntu;debian"><prompt>#</prompt> <userinput>service apache2 restart</userinput>
<prompt>#</prompt> <userinput>service memcached restart</userinput></screen>
</step>
<step>
<para>You can now access the dashboard at <uri os="ubuntu"
>http://controller/horizon</uri>
<uri os="debian">https://controller/</uri>
<uri os="centos;fedora;rhel">http://controller/dashboard</uri>
<uri os="opensuse;sles">http://controller</uri>.</para>
<para>Log in with credentials for any user that you created with OpenStack
Identity.</para>
</step>
</procedure>
</section>