CentOS 8: seed VM & bifrost

* Change default seed VM image to CentOS 8
* Change default bifrost deploy image to CentOS 8
* Workaround DIB bug
  https://bugs.launchpad.net/diskimage-builder/+bug/1866847 by setting
  DIB_DISABLE_KERNEL_CLEANUP to 1
* Install iptables on seed for SNAT - missing on CentOS 8
* Fix provider network MTU lookup for empty string
* Bump stackhpc.libvirt-host to 1.7.0 for CentOS 8 support
* Bump stackhpc.libvirt-vm to 1.13.0 for CentOS 8 support
* Bump jriguera.configdrive for Python 3 support

Change-Id: Ie0edf6a924a914395c6502e2d5cf1139bce14a48
Story: 2006574
Task: 39000
This commit is contained in:
Mark Goddard 2020-03-10 16:46:50 +00:00 committed by Pierre Riteau
parent 611111b8bd
commit 51b84b6001
9 changed files with 37 additions and 22 deletions

View File

@ -15,10 +15,10 @@ kolla_bifrost_source_version: "{{ openstack_branch }}"
# Diskimage-builder configuration. # Diskimage-builder configuration.
# DIB base OS element. # DIB base OS element.
kolla_bifrost_dib_os_element: "centos7" kolla_bifrost_dib_os_element: "centos"
# DIB image OS release. # DIB image OS release.
kolla_bifrost_dib_os_release: "GenericCloud" kolla_bifrost_dib_os_release: "8"
# List of default DIB elements. # List of default DIB elements.
kolla_bifrost_dib_elements_default: kolla_bifrost_dib_elements_default:
@ -38,6 +38,10 @@ kolla_bifrost_dib_init_element: "cloud-init-datasources"
# DIB default environment variables. # DIB default environment variables.
kolla_bifrost_dib_env_vars_default: kolla_bifrost_dib_env_vars_default:
DIB_CLOUD_INIT_DATASOURCES: "ConfigDrive" DIB_CLOUD_INIT_DATASOURCES: "ConfigDrive"
# FIXME(mgoddard): DIB fails when cleaning up old kernels if the host running
# DIB is not running the latest available kernel. Skip this cleanup as a
# workaround. https://bugs.launchpad.net/diskimage-builder/+bug/1866847
DIB_DISABLE_KERNEL_CLEANUP: 1
# DIB additional environment variables. # DIB additional environment variables.
kolla_bifrost_dib_env_vars_extra: {} kolla_bifrost_dib_env_vars_extra: {}

View File

@ -8,7 +8,7 @@ overcloud_group_default: controllers
# List of names of Ansible groups for overcloud hosts. # List of names of Ansible groups for overcloud hosts.
overcloud_groups: > overcloud_groups: >
{{ (list(overcloud_group_hosts_map) + {{ (overcloud_group_hosts_map | list +
[overcloud_group_default]) | reject('equalto', 'ignore') | unique | sort | list }} [overcloud_group_default]) | reject('equalto', 'ignore') | unique | sort | list }}
# Dict mapping overcloud Ansible group names to lists of hosts in the group. # Dict mapping overcloud Ansible group names to lists of hosts in the group.

View File

@ -41,7 +41,7 @@ seed_vm_root_capacity: 50G
seed_vm_root_format: qcow2 seed_vm_root_format: qcow2
# Base image for the seed VM root volume. # Base image for the seed VM root volume.
seed_vm_root_image: "https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2" seed_vm_root_image: "https://cloud.centos.org/centos/8/x86_64/images/CentOS-8-GenericCloud-8.1.1911-20200113.3.x86_64.qcow2"
# Capacity of the seed VM data volume. # Capacity of the seed VM data volume.
seed_vm_data_capacity: 100G seed_vm_data_capacity: 100G

View File

@ -96,7 +96,7 @@
# interfaces with an explicit MTU set will be taken account of. If no # interfaces with an explicit MTU set will be taken account of. If no
# interface has an explicit MTU set, then the corresponding veth will # interface has an explicit MTU set, then the corresponding veth will
# not either. # not either.
mtu_list: "{{ [veth_bridge_mtu_map.get(interface), item | net_mtu] | reject('none') | list }}" mtu_list: "{{ [veth_bridge_mtu_map.get(interface), item | net_mtu] | select | map('int') | list }}"
mtu: "{{ mtu_list | max if mtu_list | length > 0 else None }}" mtu: "{{ mtu_list | max if mtu_list | length > 0 else None }}"
- name: Update a fact containing veth interfaces - name: Update a fact containing veth interfaces

View File

@ -1,4 +1,9 @@
--- ---
- name: Ensure iptables is installed
package:
name: iptables
become: true
# iptables -t nat -A POSTROUTING -o {{ interface }} -j SNAT --to-source {{ source_ip }} # iptables -t nat -A POSTROUTING -o {{ interface }} -j SNAT --to-source {{ source_ip }}
- name: Ensure SNAT iptables rules exist - name: Ensure SNAT iptables rules exist
iptables: iptables:

View File

@ -52,9 +52,9 @@ configuration drive built by Bifrost, rather than the Bifrost default of
:diskimage-builder-doc:`simple-init <elements/simple-init/README>`. :diskimage-builder-doc:`simple-init <elements/simple-init/README>`.
``kolla_bifrost_dib_os_element`` ``kolla_bifrost_dib_os_element``
DIB base OS element. Default is ``centos7``. DIB base OS element. Default is ``centos``.
``kolla_bifrost_dib_os_release`` ``kolla_bifrost_dib_os_release``
DIB image OS release. Default is ``GenericCloud``. DIB image OS release. Default is ``8``.
``kolla_bifrost_dib_elements_default`` ``kolla_bifrost_dib_elements_default``
*Added in the Train release. Use kolla_bifrost_dib_elements in earlier *Added in the Train release. Use kolla_bifrost_dib_elements in earlier
releases.* releases.*
@ -78,7 +78,8 @@ configuration drive built by Bifrost, rather than the Bifrost default of
releases.* releases.*
DIB default environment variables. Default is DIB default environment variables. Default is
``{"DIB_CLOUD_INIT_DATASOURCES": "ConfigDrive"}``. ``{"DIB_CLOUD_INIT_DATASOURCES": "ConfigDrive",
"DIB_DISABLE_KERNEL_CLEANUP": 1}``.
``kolla_bifrost_dib_env_vars_extra`` ``kolla_bifrost_dib_env_vars_extra``
*Added in the Train release. Use kolla_bifrost_dib_env_vars in earlier *Added in the Train release. Use kolla_bifrost_dib_env_vars in earlier
releases.* releases.*

View File

@ -14,34 +14,38 @@
############################################################################### ###############################################################################
# Diskimage-builder configuration. # Diskimage-builder configuration.
# DIB base OS element. # DIB base OS element. Default is "centos".
#kolla_bifrost_dib_os_element: #kolla_bifrost_dib_os_element:
# DIB image OS release. # DIB image OS release. Default is "8".
#kolla_bifrost_dib_os_release: #kolla_bifrost_dib_os_release:
# List of default DIB elements. # List of default DIB elements. Default is ["disable-selinux",
# "enable-serial-console", "vm"].
#kolla_bifrost_dib_elements_default: #kolla_bifrost_dib_elements_default:
# List of additional DIB elements. # List of additional DIB elements. Default is none.
#kolla_bifrost_dib_elements_extra: #kolla_bifrost_dib_elements_extra:
# List of DIB elements. # List of DIB elements. Default is a combination of
# kolla_bifrost_dib_elements_default and kolla_bifrost_dib_elements_extra.
#kolla_bifrost_dib_elements: #kolla_bifrost_dib_elements:
# DIB init element. # DIB init element. Default is "cloud-init-datasources".
#kolla_bifrost_dib_init_element: #kolla_bifrost_dib_init_element:
# DIB default environment variables. # DIB default environment variables. Default is {"DIB_CLOUD_INIT_DATASOURCES":
# "ConfigDrive", "DIB_DISABLE_KERNEL_CLEANUP": 1}.
#kolla_bifrost_dib_env_vars_default: #kolla_bifrost_dib_env_vars_default:
# DIB additional environment variables. # DIB additional environment variables. Default is none.
#kolla_bifrost_dib_env_vars_extra: #kolla_bifrost_dib_env_vars_extra:
# DIB environment variables. # DIB environment variables. Default is combination of
# kolla_bifrost_dib_env_vars_default and kolla_bifrost_dib_env_vars_extra.
#kolla_bifrost_dib_env_vars: #kolla_bifrost_dib_env_vars:
# List of DIB packages to install. # List of DIB packages to install. Default is to install no extra packages.
#kolla_bifrost_dib_packages: #kolla_bifrost_dib_packages:
############################################################################### ###############################################################################

View File

@ -23,7 +23,8 @@
# Format of the seed VM root volume. # Format of the seed VM root volume.
#seed_vm_root_format: #seed_vm_root_format:
# Base image for the seed VM root volume. # Base image for the seed VM root volume. Default is
# "https://cloud.centos.org/centos/8/x86_64/images/CentOS-8-GenericCloud-8.1.1911-20200113.3.x86_64.qcow2".
#seed_vm_root_image: #seed_vm_root_image:
# Capacity of the seed VM data volume. # Capacity of the seed VM data volume.

View File

@ -3,7 +3,7 @@
version: 1.3.1 version: 1.3.1
- src: jriguera.configdrive - src: jriguera.configdrive
# There are no versioned releases of this role. # There are no versioned releases of this role.
version: 6b5f1d55bc3f27fa2855d8dd59b5c224d160d806 version: a5c3c19d0cda7b6960c9200a30b5dbe73d2eef96
- src: MichaelRigart.interfaces - src: MichaelRigart.interfaces
version: v1.4.0 version: v1.4.0
- src: mrlesmithjr.manage-lvm - src: mrlesmithjr.manage-lvm
@ -24,9 +24,9 @@
- src: stackhpc.grafana-conf - src: stackhpc.grafana-conf
version: 1.1.0 version: 1.1.0
- src: stackhpc.libvirt-host - src: stackhpc.libvirt-host
version: v1.3.1 version: v1.7.0
- src: stackhpc.libvirt-vm - src: stackhpc.libvirt-vm
version: v1.10.0 version: v1.13.0
- src: stackhpc.mellanox-switch - src: stackhpc.mellanox-switch
version: v1.0.0 version: v1.0.0
- src: stackhpc.os-images - src: stackhpc.os-images