Ansible based project for setting up TripleO virtual environments
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Zuul b1d5115c17 Merge "Revert "disable tls for issues in undercloud"" 10 hours ago
ci-scripts Fix log collection for Phase1 virthost jobs 3 months ago
config Merge "Revert "disable tls for issues in undercloud"" 10 hours ago
doc Install texttable and harmonize the way to install. 1 month ago
library Run all linters via pre-commit 1 year ago
molecule Fedora 28 removal 4 months ago
playbooks Make the playbook's yaml file start with "---" 6 months ago
releasenotes OpenDev Migration Patch 2 9 months ago
roles remove code block for ansible < 2.3 4 days ago
test_plugins Fix H102 Apache 2.0 license header not found 3 years ago
tests Added RedHat-8 release file 6 months ago
zuul.d Run multinode jobs on all patches 6 months ago
.ansible-lint lint: pre-commit hook maintenance 2 weeks ago
.gitignore Remove developer tools from tripleo .gitignore 1 year ago
.gitreview OpenDev Migration Patch 9 months ago
.pre-commit-config.yaml lint: pre-commit hook maintenance 2 weeks ago
.yamllint Run all linters via pre-commit 1 year ago
Dockerfile Docker file for running quickstart in container 2 years ago
LICENSE Run all linters via pre-commit 1 year ago
README.rst Fix --install-deps bindep for 8 months ago
ansible-role-requirements.yml Run all linters via pre-commit 1 year ago
ansible.cfg Add ARA python3 paths to ansible.cfg of oooq 5 months ago Use export in ansible_ssh_env file 3 years ago
bindep.txt bindep: remove python-pip from centos 1 month ago OpenDev Migration Patch 2 9 months ago Generate fs matrix from source yaml files 5 months ago print out the git commit hash 2 months ago
quickstart-extras-requirements.txt Add tripleo-operator-ansible to install 3 weeks ago
quickstart-role-requirements.txt Removing locking hash on undercloud post role 3 years ago Merge "Update broken docs link in default deployment message" 1 week ago
requirements.txt Bump ansible to 2.9 for quickstart 1 week ago
setup.cfg Test script using pytest/molecule 7 months ago Add installation and setup machinery 4 years ago
test-requirements.txt Generate fs matrix from source yaml files 5 months ago
tox.ini Use python -m pip instead pip command. 2 weeks ago


Team and repository tags



An up-to-date HTML version is available on

Release notes for the project can be found at:

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.

Quickstart's default deployment method uses a physical machine, which is referred to as $VIRTHOST throughout this documentation. On this physical machine Quickstart sets up multiple virtual machines (VMs) and virtual networks using libvirt.

One of the VMs is set up as undercloud, an all-in-one OpenStack cloud used by system administrators to deploy the overcloud, the end-user facing OpenStack installation, usually consisting of multiple VMs.

You will need a $VIRTHOST with at least 16 GB of RAM, preferably 32 GB, 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.x, RHEL 7.x). Other distributions could work but will not be supported with out CI validation.

Quickstart tool runs commands with superuser privileges as installing packages to the deployer system. The script should be run by a sudo user, e.g. deployer, which should be added to the sudoers configuration, as shown below:



Running commands as root is not suggested or supported.

The SSH server on your $VIRTHOST must be accessible via public keys for both the root and stack users.

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

ssh root@$VIRTHOST uname -a

The stack user is not added until the quickstart deploy runs, so this cannot be tested in advance. However, if you lock down on a per-user basis, ensure AllowUsers includes stack.

Timeouts can be an issue if the SSH server is configured to disconnect users after periods of inactivity. This can be addressed for example by:

ClientAliveInterval 120
ClientAliveCountMax 720

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

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

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.