|
|
(15 intermediate revisions by 10 users not shown) |
Line 1: |
Line 1: |
− | __NOTOC__
| |
− | = [[OpenStack]] Dashboard =
| |
− | The OpenStack Dashboard is a reference implementation for the django-nova project. It is housed on Github.
| |
| | | |
− | To view a quick video tour of the dashboard in action, please see this [http://blog.rabbityard.com/post/2937203639/openstack-dashboard-video blog post].
| + | <!-- #REDIRECT Horizon --> |
| + | == OpenStack Dashboard documentation == |
| | | |
− | You can also view a more recent demo at http://vimeo.com/20787736.
| + | [http://docs.openstack.org/developer/horizon/ Horizon: The OpenStack Dashboard Project] |
− | | |
− | == Prerequisites for Running The [[OpenStack]] Dashboard ==
| |
− | * python 2.6 (not tested with python 3.0).
| |
− | * Running a [https://github.com/rackspace/keystone Keystone] instance.
| |
− | * URL of your keystone instance (this is usually something like http://localhost:5000/v2.0).
| |
− | * Admin token for your keystone instance.
| |
− | | |
− | These instructions have only been tested on Ubuntu 10.10 server.
| |
− | | |
− | == Installation Overview ==
| |
− | The overall steps for building the dashboard are: | |
− | | |
− | # Get the source for openstack-dashboard from Github.
| |
− | # Build and configure openstack-dashboard.
| |
− | # Run the server.
| |
− | | |
− | These instructions are for a '''test''' openstack-dashboard deployment. They configure your dashboard to use the default django server. To create a more robust installation, you should configure this with an Apache webserver.
| |
− | | |
− | == Get The Source ==
| |
− | To prevent any interruption to our hacking, let's grab all the code that we need.
| |
− | | |
− | === Create Your Source Directory ===
| |
− | | |
− | <pre><nowiki>
| |
− | $ mkdir src
| |
− | $ cd src
| |
− | </nowiki></pre>
| |
− | | |
− | === Get openstack-dashboard ===
| |
− | openstack-dashboard provides all the look and feel for the dashboard.
| |
− | | |
− | | |
− | <pre><nowiki>
| |
− | $ git clone https://github.com/4P/openstack-dashboard
| |
− | </nowiki></pre>
| |
− | | |
− | You should now have a directory called openstack-dashboard, which contains the OpenStack Dashboard application.
| |
− | | |
− | == Build and Configure openstack-dashboard ==
| |
− | With the reference implementation built, it is now time to configure our OpenStack Dashboard application. The first step in configuring the application is to create your local_settings.py file:
| |
− | | |
− | | |
− | <pre><nowiki>
| |
− | $ cd openstack-dashboard/local
| |
− | $ cp local_settings.py.example local_settings.py
| |
− | $ vi local_settings.py
| |
− | </nowiki></pre>
| |
− | | |
− | In the local_settings.py file, we need to change several important options:
| |
− | | |
− | * OPENSTACK_ADMIN_TOKEN : Token for Keystone endpoint.
| |
− | * OPENSTACK_KEYSTONE_URL : URL for the Keystone endpoint.
| |
− | * SWIFT_ENABLED : Flag to enable/disable swift support from the dashboard.
| |
− | | |
− | Now it's time to install the openstack-dashboard environment. This installs all the dependencies for openstack-dashboard.
| |
− | | |
− | | |
− | <pre><nowiki>
| |
− | $ apt-get install -y python-setuptools
| |
− | $ cd ..
| |
− | $ sudo easy_install virtualenv
| |
− | $ python tools/install_venv.py
| |
− | </nowiki></pre>
| |
− | | |
− | This will take a bit as it needs to download a number of dependencies from the internet.
| |
− | | |
− | == Run the Server ==
| |
− | Now run the built-in server at an unprivileged port so that you can view your results:
| |
− | | |
− | | |
− | <pre><nowiki>
| |
− | $ tools/with_venv.sh dashboard/manage.py runserver 0.0.0.0:8000
| |
− | </nowiki></pre>
| |
− | | |
− | Make sure that your firewall isn't blocking TCP/8000 and just point your browser at this server on port 8000. If you are running the server on the same machine as your browser, this would be "http://localhost:8000".
| |
− | | |
− | == Configuring the VNC Console ==
| |
− | Note: Tested only with KVM but should work with other hypervisors.
| |
− | | |
− | In the same /src directory as your Dashboard is housed, get a copy of noVNC.
| |
− | | |
− | | |
− | <pre><nowiki>
| |
− | cd ~/src
| |
− | git clone https://github.com/openstack/noVNC.git
| |
− | </nowiki></pre>
| |
− | | |
− | Next, run the vncproxy by creating a new screen window with <ctrl>-a <ctrl>-c.
| |
− | | |
− | You should run vncproxy with a pointer to the flag file as well:
| |
− | | |
− | | |
− | <pre><nowiki>
| |
− | bin/nova-vncproxy --vncproxy_wwwroot ~/src/noVNC --flagfile=/path/to/flagfile
| |
− | </nowiki></pre>
| |
− | | |
− | To your nova.conf, you also need to add the flag: --vncproxy_url=http://<ip of vnc proxy>:6080
| |
− | | |
− | Now your VNC button should launch a VNC window so that you can access the instance.
| |