• Clone required repositories

    mkdir -p ~/src/
    cd ~/src/
    git clone
    git clone
    git clone


    The repositories can also be cloned to any other location. The path to the repositories is set via the parameter repo_path.

  • Terraform must be installed (

  • Ansible must be installed (

  • clouds.yaml and secure.yaml files must be created ( If available, check that your openstack client tools work to validate the settings with e.g. openstack --os-cloud=the-name-of-the-entry availability zone list.


    Note that terraform only supports public cloud profiles if a file named clouds-public.yaml exists in one of the standard locations and contains the matching definition. The embedded well-known profiles that are available in the python openstack client do not work. TODO: Publish a clouds-public.yaml file for Betacloud (or all public clouds) and link it here.


    The file extension yaml is important!

TLS certificates and hostnames

The testbed installation currently is hardcoded to use hostnames in the domain This is a real domain and we provide the DNS records matching the addresses used in the testbed, so that once you connect to your testbed via a direct link or e.g. wireguard, you can access hosts and servers by their hostname like ssh You can find the playbook that generated these DNS records in contrib/ansible/dns.yaml.

We also provide a wildcard TLS certificate signed by a custom CA for and * (see contrib/ownca for details).

This CA is always used for each testbed. The CA is not regenerated and it is not planned to change for the next 10 years.

In order for these certificates to be recognized locally as valid, this CA (environments/kolla/certificates/ca/testbed.crt) must be made known locally.

If you want to replace this with your own certificate, have a look at the example playbooks in the contrib/ownca folder.

In a future release we plan to make the used domain configurable.