| .. Documentation Architecture for the devstack docs. | 
 |  | 
 |    It is really easy for online docs to meander over time as people | 
 |    attempt to add the small bit of additional information they think | 
 |    people need, into an existing information architecture. In order to | 
 |    prevent that we need to be a bit strict as to what's on this front | 
 |    page. | 
 |  | 
 |    This should *only* be the quick start narrative. Which should end | 
 |    with 2 sections: what you can do with devstack once it's set up, | 
 |    and how to go beyond this setup. Both should be a set of quick | 
 |    links to other documents to let people explore from there. | 
 |  | 
 | ========== | 
 |  DevStack | 
 | ========== | 
 |  | 
 | .. image:: assets/images/logo-blue.png | 
 |  | 
 | DevStack is a series of extensible scripts used to quickly bring up a | 
 | complete OpenStack environment based on the latest versions of | 
 | everything from git master.  It is used interactively as a development | 
 | environment and as the basis for much of the OpenStack project's | 
 | functional testing. | 
 |  | 
 | The source is available at | 
 | `<https://git.openstack.org/cgit/openstack-dev/devstack>`__. | 
 |  | 
 | .. warning:: | 
 |  | 
 |    DevStack will make substantial changes to your system during | 
 |    installation. Only run DevStack on servers or virtual machines that | 
 |    are dedicated to this purpose. | 
 |  | 
 | Quick Start | 
 | =========== | 
 |  | 
 | Install Linux | 
 | ------------- | 
 |  | 
 | Start with a clean and minimal install of a Linux system. Devstack | 
 | attempts to support Ubuntu 14.04/16.04, Fedora 23/24, CentOS/RHEL 7, | 
 | as well as Debian and OpenSUSE. | 
 |  | 
 | If you do not have a preference, Ubuntu 16.04 is the most tested, and | 
 | will probably go the smoothest. | 
 |  | 
 | Add Stack User | 
 | -------------- | 
 |  | 
 | Devstack should be run as a non-root user with sudo enabled | 
 | (standard logins to cloud images such as "ubuntu" or "cloud-user" | 
 | are usually fine). | 
 |  | 
 | You can quickly create a separate `stack` user to run DevStack with | 
 |  | 
 | :: | 
 |  | 
 |    $ sudo adduser stack | 
 |  | 
 | Since this user will be making many changes to your system, it should | 
 | have sudo privileges: | 
 |  | 
 | :: | 
 |  | 
 |     $ sudo tee <<<"stack ALL=(ALL) NOPASSWD: ALL" /etc/sudoers | 
 |     $ sudo su - stack | 
 |  | 
 | Download DevStack | 
 | ----------------- | 
 |  | 
 | :: | 
 |  | 
 |    $ git clone https://git.openstack.org/openstack-dev/devstack | 
 |    $ cd devstack | 
 |  | 
 | The ``devstack`` repo contains a script that installs OpenStack and | 
 | templates for configuration files | 
 |  | 
 | Create a local.conf | 
 | ------------------- | 
 |  | 
 | Create a ``local.conf`` file with 4 passwords preset at the root of the | 
 | devstack git repo. | 
 | :: | 
 |  | 
 |    [[local|localrc]] | 
 |    ADMIN_PASSWORD=secret | 
 |    DATABASE_PASSWORD=$ADMIN_PASSWORD | 
 |    RABBIT_PASSWORD=$ADMIN_PASSWORD | 
 |    SERVICE_PASSWORD=$ADMIN_PASSWORD | 
 |  | 
 | This is the minimum required config to get started with DevStack. | 
 |  | 
 | Start the install | 
 | ----------------- | 
 |  | 
 | :: | 
 |  | 
 |    ./stack.sh | 
 |  | 
 | This will take a 15 - 20 minutes, largely depending on the speed of | 
 | your internet connection. Many git trees and packages will be | 
 | installed during this process. | 
 |  | 
 | Profit! | 
 | ------- | 
 |  | 
 | You now have a working DevStack! Congrats! | 
 |  | 
 | Your devstack will have installed ``keystone``, ``glance``, ``nova``, | 
 | ``cinder``, ``neutron``, and ``horizon``. Floating IPs will be | 
 | available, guests have access to the external world. | 
 |  | 
 | You can access horizon to experience the web interface to | 
 | OpenStack, and manage vms, networks, volumes, and images from | 
 | there. | 
 |  | 
 | You can ``source openrc`` in your shell, and then use the | 
 | ``openstack`` command line tool to manage your devstack. | 
 |  | 
 | You can ``cd /opt/stack/tempest`` and run tempest tests that have | 
 | been configured to work with your devstack. | 
 |  | 
 | You can :doc:`make code changes to OpenStack and validate them | 
 | <development>`. | 
 |  | 
 | Going further | 
 | ------------- | 
 |  | 
 | Learn more about our :doc:`configuration system <configuration>` to | 
 | customize devstack for your needs. Including making adjustments to the | 
 | default :doc:`networking <networking>`. | 
 |  | 
 | Read :doc:`guides <guides>` for specific setups people have (note: | 
 | guides are point in time contributions, and may not always be kept | 
 | up to date to the latest devstack). | 
 |  | 
 | Enable :doc:`devstack plugins <plugins>` to support additional | 
 | services, features, and configuration not present in base devstack. | 
 |  | 
 | Get :doc:`the big picture <overview>` of what we are trying to do | 
 | with devstack, and help us by :doc:`contributing to the project | 
 | <hacking>`. |