
Update documentation to match the latest architecture. Also fixed several issues and documented how to populate a local docker registry. Change-Id: If646497fc2f1795f13e116b54cbd36803940de7b
95 lines
3.4 KiB
ReStructuredText
95 lines
3.4 KiB
ReStructuredText
Containers based Overcloud Deployment
|
|
======================================
|
|
|
|
.. Warning::
|
|
|
|
The TripleO containers support is still under heavy development. Things
|
|
documented here may change during the Pike cycle.
|
|
|
|
This documentation explains how to deploy a fully containerized overcloud on
|
|
Docker. This feature is supported starting with Pike.
|
|
|
|
The requirements for a containerized overcloud are the same as for any other
|
|
overcloud deployment. The real difference is in where the overcloud services
|
|
will be deployed (containers vs base OS).
|
|
|
|
Architecture
|
|
------------
|
|
|
|
The docker-based overcloud architecture is not very different from the
|
|
baremetal/VM based one. The services deployed in the traditional baremetal
|
|
overcloud are also deployed in the docker-based one.
|
|
|
|
One obvious difference between these 2 types of deployments is that the
|
|
openstack services are deployed as containers in a container runtime rather than
|
|
in the host operating system. This reduces the required packages in the host to
|
|
the bare minimum for running the container runtime and managing the base network
|
|
layer.
|
|
|
|
|
|
Manual overcloud deployment
|
|
----------------------------
|
|
|
|
This section explains how to deploy a containerized overcloud manually. For an
|
|
automated overcloud deployment, please follow the steps in the
|
|
`Using TripleO Quickstart`_ section below.
|
|
|
|
Preparing the environment
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
To prepare your environment, you must follow all the steps described in the
|
|
:ref:`basic-deployment-cli` documentation. Stop right at the
|
|
:ref:`deploy-the-overcloud` section.
|
|
|
|
Populate local docker registry
|
|
..............................
|
|
|
|
It's useful to run a local docker registry on the undercloud to speed up the
|
|
overcloud deployment. A docker registry is normally already setup to listen on
|
|
port 8787 as part of the undercloud install.
|
|
|
|
To use the pre-built images coming from the `tripleoupstream` registry on the
|
|
dockerhub, use the following command::
|
|
|
|
openstack overcloud container image upload
|
|
|
|
Or use `kolla-build` to build the images yourself::
|
|
|
|
kolla-build --base centos --type binary --namespace tripleoupstream --registry 192.168.24.1:8787 --tag latest --template-override /usr/share/tripleo-common/contrib/tripleo_kolla_template_overrides.j2 --push
|
|
|
|
Finally, point the heat templates to your local registry, for example in
|
|
a `$HOME/docker_registry.yaml` file::
|
|
|
|
parameter_defaults:
|
|
DockerNamespace: 192.168.24.1:8787/tripleoupstream
|
|
DockerNamespaceIsRegistry: true
|
|
|
|
Deploying the containerized Overcloud
|
|
-------------------------------------
|
|
|
|
A containerized overcloud deployment follows all the steps described in the
|
|
baremetal :ref:`deploy-the-overcloud` documentation with the exception that it
|
|
requires an extra environment file to be added to the `openstack overcloud
|
|
deploy` command::
|
|
|
|
-e /usr/share/openstack-tripleo-heat-templates/environments/docker.yaml
|
|
|
|
In case of a local docker registry, also add the path to the override file::
|
|
|
|
-e $HOME/docker_registry.yaml
|
|
|
|
|
|
Using TripleO Quickstart
|
|
------------------------
|
|
|
|
.. note:: Please refer to the `TripleO Quickstart`_ docs for more info about
|
|
quickstart, the minimum requirements, the setup process and the
|
|
available plugins.
|
|
|
|
|
|
The command below will deploy a containerized overcloud on top of a baremetal undercloud::
|
|
|
|
bash quickstart.sh --config=~/.quickstart/config/general_config/containers_minimal.yml $VIRTHOST
|
|
|
|
.. _TripleO Quickstart: https://docs.openstack.org/developer/tripleo-quickstart/
|