Ansible based project for setting up TripleO virtual environments
Shell Python
Latest commit cd76e7c Jan 20, 2017 Jenkins committed with openstack-gerrit Merge "Add new feature to consume external images"
Permalink
Failed to load latest commit information.
ci-scripts Add the ARA Ansible callback generate a static playbook reports Jan 16, 2017
config changes to add novajoin to undercloud Jan 11, 2017
doc/source Add new feature to consume external images Jan 18, 2017
library Fix H102 Apache 2.0 license header not found Jul 29, 2016
playbooks Merge "config for containerized-compute" Dec 21, 2016
releasenotes/source Add ReNo support for managing release notes in TripleO-Quickstart Jan 16, 2017
roles Merge "Add new feature to consume external images" Jan 20, 2017
test_plugins Fix H102 Apache 2.0 license header not found Jul 29, 2016
.gitignore Do not track Vim swap/backup files Jan 16, 2017
.gitreview Fix .gitreview for move to openstack git Apr 1, 2016
LICENSE Initial commit Nov 19, 2015
README.rst Merge "updates to the readme" Jan 11, 2017
ansible-role-requirements.yml Switch to using standalone role for image building Apr 13, 2016
ansible.cfg Add the ARA Ansible callback generate a static playbook reports Jan 16, 2017
ansible_ssh_env.sh Use export in ansible_ssh_env file Oct 20, 2016
devmode.sh Fix unused variable in devmode.sh script Jan 3, 2017
other-requirements.txt Add libffi devel package for the upstream gates Nov 14, 2016
quickstart-extras-requirements.txt Start using tripleo-quickstart-extras Nov 22, 2016
quickstart-role-requirements.txt Removing locking hash on undercloud post role Sep 14, 2016
quickstart.sh Add the ARA Ansible callback generate a static playbook reports Jan 16, 2017
requirements.txt Revert Ansible version back to 2.2.0.0 Jan 17, 2017
setup.cfg Update author and author-email Dec 1, 2016
setup.py Add installation and setup machinery Nov 30, 2015
test-requirements.txt Add ReNo support for managing release notes in TripleO-Quickstart Jan 16, 2017
tox.ini Add ReNo support for managing release notes in TripleO-Quickstart Jan 16, 2017

README.rst

Team and repository tags

tripleo-quickstart

One of the barriers to entry for trying out TripleO and its derivatives has been the relative difficulty in getting an environment up quickly.

This set of ansible roles is meant to help.

You will need a host machine (referred to as $VIRTHOST) with at least 16G of RAM, preferably 32G, and you must be able to ssh to the virthost machine as root without a password from the machine running ansible. Currently the virthost machine must be running a recent Red Hat-based Linux distribution (CentOS 7, RHEL 7, Fedora 22 - only CentOS 7 is currently tested), but we hope to add support for non-Red Hat distributions too.

A quick way to test that your virthost machine is ready to rock is:

ssh root@$VIRTHOST uname -a

The defaults are meant to "just work", so it is as easy as downloading and running the quickstart.sh script.

Getting the script

You can download the quickstart.sh script with wget:

wget https://raw.githubusercontent.com/openstack/tripleo-quickstart/master/quickstart.sh

Alternatively, you can clone this repository and run the script from there.

Requirements

You need some software available on your local system before you can run quickstart.sh. You can install the necessary dependencies by running:

bash quickstart.sh --install-deps

Deploying with instructions

Deploy your virtual environment by running:

bash quickstart.sh $VIRTHOST

Where $VIRTHOST is the name of the host on which you want to install your virtual triple0 environment. The quickstart.sh script will install this repository along with ansible in a virtual environment on your Ansible host and run the quickstart playbook. Note, the quickstart playbook will delete the stack user on $VIRTHOST and recreate it.

This script will output instructions at the end to access the deployed undercloud. If a release name is not given, newton is used.

Deploying without instructions

bash quickstart.sh --tags all $VIRTHOST

You may choose to execute an end to end deployment without displaying the instructions and scripts provided by default. Using the --tags all flag will instruct quickstart to provision the environment and deploy both the undercloud and overcloud. Additionally a validation test will be executed to ensure the overcloud is functional.

Deploying on localhost

bash quickstart.sh localhost

Please note the following when using quickstart to deploy tripleo directly on localhost. The deployment should pass, however you may not be able to ssh to the overcloud nodes while using the default ssh config file. The ssh config file that is generated by quickstart e.g. ~/.quickstart/ssh.config.ansible will try to proxy through the localhost to ssh to the localhost and will cause an error if ssh is not setup to support it.

Enable Developer mode

If you are working on TripleO upstream development, and need to reproduce what runs in tripleo-ci, you will want to use developer mode.

This will fetch the images produced by tripleo-ci instead of the ones produced by RDO. The incantation for a job using the quickstart defaults other than developer mode would be:

bash devmode.sh $VIRTHOST

The full set of developer mode instructions are available in :ref:`devmode`

Working With Quickstart Extras

TripleO Quickstart is more than just a tool for quickly deploying a single machine TripleO instance; it is an easily extensible framework for deploying OpenStack.

For a how-to please see :ref:`working-with-extras`

Documentation

The full documentation is in the doc/source directory, it can be built using:

tox -e docs

An up-to-date HTML version is available on docs.openstack.org.

Copyright

Copyright 2015-2016 Red Hat, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.