doc/source/index.rst
cea7ec8d
 .. 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
 ==========
09e550c3
 
af140295
 .. image:: assets/images/logo-blue.png
 
7cd16ce4
 DevStack is a series of extensible scripts used to quickly bring up a
cea7ec8d
 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.
7cd16ce4
 
 The source is available at
 `<https://git.openstack.org/cgit/openstack-dev/devstack>`__.
 
cea7ec8d
 .. warning::
09e550c3
 
cea7ec8d
    DevStack will make substantial changes to your system during
    installation. Only run DevStack on servers or virtual machines that
    are dedicated to this purpose.
09e550c3
 
26dd21be
 Quick Start
cea7ec8d
 ===========
09e550c3
 
cea7ec8d
 Install Linux
 -------------
09e550c3
 
cea7ec8d
 Start with a clean and minimal install of a Linux system. Devstack
1c75d2f0
 attempts to support the two latest LTS releases of Ubuntu, the
 latest/current Fedora version, CentOS/RHEL 7, as well as Debian and
 OpenSUSE.
09e550c3
 
cea7ec8d
 If you do not have a preference, Ubuntu 16.04 is the most tested, and
 will probably go the smoothest.
63baba27
 
89a855f7
 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
 
 ::
 
fca0da50
    $ sudo useradd -s /bin/bash -d /opt/stack -m stack
89a855f7
 
 Since this user will be making many changes to your system, it should
 have sudo privileges:
 
 ::
 
a48ffa8c
     $ echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
9ef346f5
     $ sudo su - stack
89a855f7
 
cea7ec8d
 Download DevStack
 -----------------
09e550c3
 
cea7ec8d
 ::
09e550c3
 
89a855f7
    $ git clone https://git.openstack.org/openstack-dev/devstack
    $ cd devstack
09e550c3
 
cea7ec8d
 The ``devstack`` repo contains a script that installs OpenStack and
 templates for configuration files
09e550c3
 
cea7ec8d
 Create a local.conf
 -------------------
09e550c3
 
89a855f7
 Create a ``local.conf`` file with 4 passwords preset at the root of the
 devstack git repo.
cea7ec8d
 ::
09e550c3
 
cea7ec8d
    [[local|localrc]]
    ADMIN_PASSWORD=secret
    DATABASE_PASSWORD=$ADMIN_PASSWORD
    RABBIT_PASSWORD=$ADMIN_PASSWORD
    SERVICE_PASSWORD=$ADMIN_PASSWORD
baa35d06
 
cea7ec8d
 This is the minimum required config to get started with DevStack.
baa35d06
 
cea7ec8d
 Start the install
 -----------------
75afd6d3
 
cea7ec8d
 ::
a339efcd
 
89a855f7
    ./stack.sh
a339efcd
 
cea7ec8d
 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.
09e550c3
 
cea7ec8d
 Profit!
 -------
09e550c3
 
cea7ec8d
 You now have a working DevStack! Congrats!
09e550c3
 
cea7ec8d
 Your devstack will have installed ``keystone``, ``glance``, ``nova``,
 ``cinder``, ``neutron``, and ``horizon``. Floating IPs will be
 available, guests have access to the external world.
09e550c3
 
cea7ec8d
 You can access horizon to experience the web interface to
 OpenStack, and manage vms, networks, volumes, and images from
 there.
09e550c3
 
cea7ec8d
 You can ``source openrc`` in your shell, and then use the
 ``openstack`` command line tool to manage your devstack.
09e550c3
 
cea7ec8d
 You can ``cd /opt/stack/tempest`` and run tempest tests that have
 been configured to work with your devstack.
09e550c3
 
bd6614a8
 You can :doc:`make code changes to OpenStack and validate them
 <development>`.
 
cea7ec8d
 Going further
 -------------
09e550c3
 
cea7ec8d
 Learn more about our :doc:`configuration system <configuration>` to
bc883df1
 customize devstack for your needs. Including making adjustments to the
 default :doc:`networking <networking>`.
09e550c3
 
cea7ec8d
 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).
09e550c3
 
cea7ec8d
 Enable :doc:`devstack plugins <plugins>` to support additional
 services, features, and configuration not present in base devstack.
09e550c3
 
067e3658
 Use devstack in your CI with :doc:`Ansible roles <zuul_roles>` and
f32f3f52
 :doc:`Jobs <zuul_jobs>` for Zuul V3. Migrate your devstack Zuul V2 jobs to Zuul
 V3 with this full migration :doc:`how-to <zuul_ci_jobs_migration>`.
fddf3430
 
cea7ec8d
 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>`.
84ce2f1c
 
 Contents
 --------
 
 .. toctree::
    :glob:
    :maxdepth: 2
 
    *