Kayobe generates a host_vars file for each host in the Kolla Ansible
inventory. These contain network interfaces and other host-specific
things. Currently this is done by iterating over all hosts, which does
not scale well with a large number of hosts.
This change extracts the host vars generation into a separate role, and
executes it in a play targeted at all hosts, with delegate_to:
localhost. This ensures that host variable files are generated in
parallel.
Story: 2007993
Task: 40629
Change-Id: Iae75e17024adee9c2874c14d3ed36f4c87ba48d7
Adds support for HTTP basic authentication with the Docker registry.
The kolla docker registry password is now written to passwords.yml.
Change-Id: Ie6e854a66a6660d4e02771fe2b5dd97af814194d
Story: 2007952
Task: 40429
The variables in yum.yml and yum-cron.yml were deprecated in Ussuri.
This patch removes them, and updates the defaults in dnf.yml.
Story: 2008160
Task: 40906
Change-Id: I97cc98dd2ff726e5885fefcab17f17796d9fd453
Currently it is possible to set the CIDR, gateway and route table for
static routes. Other options cannot be set. This change adds support for
setting arbitrary options via an 'options' attribute in the route, which
should be a list of additional options to apply.
Depends on
https://github.com/michaelrigart/ansible-role-interfaces/pull/74.
Story: 2007835
Task: 40122
Change-Id: Ib27deac4ddf4976a571b192ee5d1b8ca57701916
The Control Plane Service Placement documentation connects network hosts
to networks listed in controller_network_host_network_interfaces.
However this only contained public, tunnel, and external networks. For a
fully functional network host, we also need:
- the overcloud admin network, to manage the host
- internal network, for services to interact with each other
- storage network, for manila-share
This change updates the default network configuration for network hosts
and adds a variable to define extra networks like for other hosts. It
also improves the documentation for adding network hosts.
Change-Id: I1bb857bfca9e209bc6de30ae9852a4a08b2c7fb0
Switches to use the IPA builder project for building IPA images.
Switches the IPA images used by default to CentOS 8 based image.
Changes the file extension of the IPA kernel image from vmlinuz to
kernel.
Story: 2007070
Task: 37953
Change-Id: I82fc455f41f48dacb453e135870dd776895d7c99
Story: 2006574
Task: 39485
Various kolla-ansible TLS features (including backend TLS and custom CA
certs) require certificates to be passed via
$KOLLA_CONFIG_PATH/certificates/. Currently Kayobe does not support
this.
This change adds support for copying across files from
$KAYOBE_CONFIG_PATH/kolla/certificates.
It also uses the kolla-ansible default value for
kolla_external_fqdn_cert and kolla_internal_fqdn_cert when
kolla_external_tls_cert and kolla_internal_tls_cert are respectively
not set. This allows for the standard kolla-ansible configuration
approach of dropping these certificates into the
$KAYOBE_CONFIG_PATH/kolla/certificates directory, rather than defining
them as variables. This can be useful if using the kolla-ansible
certificates command to generate certificates for testing.
Change-Id: I646930ad8ea70991d6ffa00f15f93f72d922141b
Story: 2007679
Task: 39790
* Always use Python 3
* Drop code paths for CentOS 7
* Drop support for Yum
* Remove support for host NTP daemon, always use chrony
* Switch references from 'yum_install_epel' to 'dnf_install_epel'
* Remove overcloud host image workaround for tagged VLAN admin network
* Remove the kayobe.utils.yum_install function, which is unused
Change-Id: I368f6edafed9779658798fc342116b4c1b3ffd48
Story: 2006574
Task: 39481
This can be advantageous in deployments with a data security
requirement.
Change-Id: I555ee575ccec0cfbcc4c4bcb53677796c83227e3
Story: 2007555
Task: 39410
Prevously the container image tag applied to built images was configured
via 'kolla_openstack_release'. This variable also controlled the tag
used for deployed images. This could cause problems during the CentOS 8
transition, where we need to build two sets of images, and Kolla Ansible
may apply a '-centos8' suffix to the tag we specify on CentOS 8.
This change separates the tag applied to built images into a different
variable - 'kolla_tag'. The default is still 'kolla_openstack_release'.
Change-Id: I8e1d877ee91a07b86cb858d25b841f8bfcd50e21
Story: 2006574
Task: 39487
This change is a precursor to switching the default Docker storage
driver to overlay2.
Previously, Kayobe's default configuration included a 'data' LVM volume
group, with a 'docker-volumes' logical volume mounted at
/var/lib/docker/volumes. Additionally, if the Docker devicemapper
storage driver was used, the data volume group would contain the
docker-thinpool and docker-thinpoolmeta volumes.
This LVM setup was really included for devicemapper, and while in some
cases it may be useful to have docker volumes as a separate logical
volume, this doesn't really make sense as a default. Often in
environments using other Docker storage drivers, the data volume group
would be removed from configuration.
This change modifies the default LVM configuration to only create a
'data' volume group if the Docker storage driver is devicemapper.
Additionally, new flags are added to make this choice independent from
the storage driver, to support cases where the data volume group is
required without devicemapper.
Change-Id: Ia3c1f6423c32fa2580b57db32512a34ce35d7acc
Story: 2005667
Task: 30973
Adds information on tuning Ansible, including forks, SSH pipelining and
fact caching.
Change-Id: I83d1469c62d63390222750d9d1f6e337e45b2373
Story: 2007492
Task: 39447