The intention of this document is to give new developers some information regarding how to get started with TripleO as well as some best practices that the TripleO community has settled on.
In general TripleO is a very complex chunk of software. It uses numerous technologies to implement an OpenStack installer. The premise of TripleO was to use the OpenStack platform itself as the installer and API for user interfaces. As such the first step to installing TripleO is to create what is called an undercloud. Today this is typically done using an undercloud image which contains all the software necessary to stand up an all-in-one style OpenStack installation.
Once the undercloud is deployed, we use a combination of Mistral and a set of Heat templates, found in the tripleo-heat-templates repository, to drive the deployment of an overcloud. Ironic is used to provision hardware and boot an operating system either on baremetal (for real deployments) or on VMs (for development). As of the Pike release we now deploy almost all services in containers on the overcloud. By the end of Queens all services should be containerized and the overcloud image should be reduced to a basic operating system image.
We are also working on unifying the architecture of the overcloud and undercloud by moving to a containerized undercloud. This allows you to do development on the undercloud using the same Heat templates as are used to deploy the overcloud. This greatly accelerates development iteration cycle speed.
This is basically a check list of things that you want to think about when implementing a new feature. Especially important is considering how the user interface functions along side the command line interface.
The containerized undercloud can be used for development purposes. This reuses the existing TripleO Heat Templates, allowing you to do the development using this framework instead of a complete overcloud. This is very useful if you are developing Heat templates or containerized services.
Please see the following guide on how to set up a containerized undercloud: https://docs.openstack.org/tripleo-docs/latest/install/containers_deployment/undercloud.html
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.