Skip to content
Snippets Groups Projects
overcloud.rst 8.92 KiB

Overcloud

Note

This documentation is intended as a walk through of the configuration required for a minimal all-in-one overcloud host. If you are looking for an all-in-one environment for test or development, see :ref:`contributor-automated`.

Installation

SSH to the overcloud machine, then follow the instructions in :doc:`/installation` to set up an Ansible control host environment. Typically this would be on a separate machine, but here we are keeping things as simple as possible.

Configuration

Clone the kayobe-config git repository, using the correct branch for the release you are deploying. In this example we will use the master branch.

cd <base path>/src
git clone https://opendev.org/openstack/kayobe-config -b master
cd kayobe-config

This repository is bare, and needs to be populated. The repository includes an example inventory, which should be removed:

git rm etc/kayobe/inventory/hosts.example

Create an Ansible inventory file and add the machine to it. In this example our machine is called controller0. Since this is an all-in-one environment, we add the controller to the compute group, however normally dedicated compute nodes would be used.

The inventory directory also contains group variables for network interface configuration. In this example we will assume that the machine has a single network interface called eth0. We will create a bridge called breth0 and plug eth0 into it. This allows us to move the host's IP address to the bridge, and pass traffic through to an Open vSwitch bridge for Neutron. Replace the network interface configuration for the controllers group with the following, replacing eth0 with an appropriate interface:

In this scenario a single network called aio is used. We must therefore set the name of the default controller networks to aio:

Next the aio network must be defined. This is done using the various attributes described in :doc:`/configuration/reference/network`. These values should be adjusted to match the environment. The aio_vip_address variable should be a free IP address in the same subnet for the virtual IP address of the OpenStack API.

Kayobe will automatically allocate IP addresses. In this case however, we want to ensure that the host uses the same IP address it has currently, to avoid loss of connectivity. We can do this by populating the network allocation file. Use the correct hostname and IP address for your environment.

In a development environment, we may wish to tune some Kolla Ansible variables. Using QEMU as the virtualisation type will be necessary if KVM is not available. Reducing the number of OpenStack service workers helps to avoid using too much memory.

Activate the Kayobe configuration environment:

source kayobe-env

Bootstrap the control host: