From c9eb56646322fae1529437295da48fdf3248ef47 Mon Sep 17 00:00:00 2001 From: Mark Goddard Date: Thu, 31 Mar 2022 17:30:05 +0100 Subject: [PATCH] [release] Sync with kayobe changes for Yoga Depends-On: https://review.opendev.org/c/openstack/kayobe-config/+/836041 Change-Id: If0a162a9d21c89fa6122c26dff4a484508d89c04 --- etc/kayobe/apt.yml | 35 +++++++++++++++ etc/kayobe/bifrost.yml | 9 ++++ etc/kayobe/compute.yml | 47 ++++++++++++++++++++ etc/kayobe/dnf.yml | 10 ++++- etc/kayobe/globals.yml | 7 +-- etc/kayobe/infra-vms.yml | 5 ++- etc/kayobe/ipa.yml | 2 +- etc/kayobe/kolla.yml | 32 +++++++++++--- etc/kayobe/networks.yml | 9 ++++ etc/kayobe/openstack.yml | 4 +- etc/kayobe/overcloud-dib.yml | 81 ++++++++++++++++++++++++++++++++++ etc/kayobe/proxy.yml | 20 +++++++++ etc/kayobe/seed-hypervisor.yml | 3 ++ etc/kayobe/seed-vm.yml | 7 ++- etc/kayobe/time.yml | 3 ++ 15 files changed, 258 insertions(+), 16 deletions(-) create mode 100644 etc/kayobe/overcloud-dib.yml create mode 100644 etc/kayobe/proxy.yml diff --git a/etc/kayobe/apt.yml b/etc/kayobe/apt.yml index 5f278e3..34bfdd2 100644 --- a/etc/kayobe/apt.yml +++ b/etc/kayobe/apt.yml @@ -11,6 +11,41 @@ # Apt proxy URL for HTTPS. Default is {{ apt_proxy_http }}. #apt_proxy_https: +# List of Apt configuration options. Each item is a dict with the following +# keys: +# * content: free-form configuration file content +# * filename: name of a file in /etc/apt/apt.conf.d/ in which to write the +# configuration +# Default is an empty list. +#apt_config: + +# List of apt keys. Each item is a dict containing the following keys: +# * url: URL of key +# * filename: Name of a file in which to store the downloaded key. The +# extension should be '.asc' for ASCII-armoured keys, or '.gpg' otherwise. +# Default is an empty list. +#apt_keys: + +# A list of Apt repositories. Each item is a dict with the following keys: +# * types: whitespace-separated list of repository types, e.g. deb or deb-src +# (optional, default is 'deb') +# * url: URL of the repository +# * suites: whitespace-separated list of suites, e.g. focal (optional, default +# is ansible_facts.distribution_release) +# * components: whitespace-separated list of components, e.g. main (optional, +# default is 'main') +# * signed_by: whitespace-separated list of names of GPG keyring files in +# apt_keys_path (optional, default is unset) +# * architecture: whitespace-separated list of architectures that will be used +# (optional, default is unset) +# Default is an empty list. +#apt_repositories: + +# Whether to disable repositories in /etc/apt/sources.list. This may be used +# when replacing the distribution repositories via apt_repositories. +# Default is false. +#apt_disable_sources_list: + ############################################################################### # Dummy variable to allow Ansible to accept this file. workaround_ansible_issue_8743: yes diff --git a/etc/kayobe/bifrost.yml b/etc/kayobe/bifrost.yml index 0bfcec7..a9eba19 100644 --- a/etc/kayobe/bifrost.yml +++ b/etc/kayobe/bifrost.yml @@ -65,6 +65,12 @@ # Name of disk image file to deploy. Default is "deployment_image.qcow2". #kolla_bifrost_deploy_image_filename: +# UUID of the root filesystem contained within the deployment image. +# See below URL for instructions on how to extract it: +# https://docs.openstack.org/ironic/latest/admin/raid.html#image-requirements +# Default is none. +#kolla_bifrost_deploy_image_rootfs: + ############################################################################### # Ironic configuration. @@ -86,6 +92,9 @@ #kolla_bifrost_inspector_port_addition: # List of extra kernel parameters for the inspector default PXE configuration. +# Default is {{ inspector_extra_kernel_options }}, defined in inspector.yml. +# When customising this variable, the default extra kernel parameters should be +# kept to retain full node inspection capabilities. #kolla_bifrost_inspector_extra_kernel_options: # List of introspection rules for Bifrost's Ironic Inspector service. diff --git a/etc/kayobe/compute.yml b/etc/kayobe/compute.yml index cd0ceb2..b1d8d65 100644 --- a/etc/kayobe/compute.yml +++ b/etc/kayobe/compute.yml @@ -143,6 +143,53 @@ # - state: enabled #compute_firewalld_rules: +############################################################################### +# Compute node host libvirt configuration. + +# Whether to enable a host libvirt daemon. Default is true if kolla_enable_nova +# is true and kolla_enable_nova_libvirt_container is false. +#compute_libvirt_enabled: + +# A dict of default configuration options to write to +# /etc/libvirt/libvirtd.conf. +#compute_libvirt_conf_default: + +# A dict of additional configuration options to write to +# /etc/libvirt/libvirtd.conf. +#compute_libvirt_conf_extra: + +# A dict of configuration options to write to /etc/libvirt/libvirtd.conf. +# Default is a combination of compute_libvirt_conf_default and +# compute_libvirt_conf_extra. +#compute_libvirt_conf: + +# Numerical log level for libvirtd. Default is 3. +#compute_libvirtd_log_level: + +# A dict of default configuration options to write to +# /etc/libvirt/qemu.conf. +#compute_qemu_conf_default: + +# A dict of additional configuration options to write to +# /etc/libvirt/qemu.conf. +#compute_qemu_conf_extra: + +# A dict of configuration options to write to /etc/libvirt/qemu.conf. +# Default is a combination of compute_qemu_conf_default and +# compute_qemu_conf_extra. +#compute_qemu_conf: + +# Whether to enable a libvirt TLS listener. Default is false. +#compute_libvirt_enable_tls: + +# Whether to install a Ceph package repository on CentOS and Rocky hosts. +# Default is true. +#compute_libvirt_ceph_repo_install: + +# Ceph package repository release to install on CentOS and Rocky hosts when +# compute_libvirt_ceph_repo_install is true. Default is 'pacific'. +#compute_libvirt_ceph_repo_release: + ############################################################################### # Dummy variable to allow Ansible to accept this file. workaround_ansible_issue_8743: yes diff --git a/etc/kayobe/dnf.yml b/etc/kayobe/dnf.yml index cf09b86..da4ea22 100644 --- a/etc/kayobe/dnf.yml +++ b/etc/kayobe/dnf.yml @@ -12,12 +12,18 @@ # Whether or not to use a local Yum mirror. Default value is 'false'. #dnf_use_local_mirror: -# Mirror FQDN for Yum repos. Default value is 'mirror.centos.org'. +# Mirror FQDN for Yum CentOS repos. Default value is 'mirror.centos.org'. #dnf_centos_mirror_host: # Mirror directory for Yum CentOS repos. Default value is 'centos'. #dnf_centos_mirror_directory: +# Mirror FQDN for Yum Rocky repos. Default value is 'dl.rockylinux.org'. +#dnf_rocky_mirror_host: + +# Mirror directory for Yum Rocky repos. Default value is 'pub/rocky'. +#dnf_rocky_mirror_directory: + # Mirror FQDN for Yum EPEL repos. Default value is # 'download.fedoraproject.org'. #dnf_epel_mirror_host: @@ -38,7 +44,7 @@ #dnf_custom_repos: # Whether to install the epel-release package. This affects RedHat-based -# systems only. Default value is 'true'. +# systems only. Default value is 'false'. #dnf_install_epel: ############################################################################### diff --git a/etc/kayobe/globals.yml b/etc/kayobe/globals.yml index cf01146..9495a48 100644 --- a/etc/kayobe/globals.yml +++ b/etc/kayobe/globals.yml @@ -45,12 +45,13 @@ ############################################################################### # OS distribution. -# OS distribution name. Valid options are "centos", "ubuntu". Default is -# "centos". +# OS distribution name. Valid options are "centos", "rocky", "ubuntu". Default +# is "centos". os_distribution: "{{ lookup('pipe', '. /etc/os-release && echo $ID') | trim }}" # OS release. Valid options are "8-stream" when os_distribution is "centos", or -# "focal" when os_distribution is "ubuntu". +# "8" when os_distribution is "rocky", or "focal" when os_distribution is +# "ubuntu". #os_release: ############################################################################### diff --git a/etc/kayobe/infra-vms.yml b/etc/kayobe/infra-vms.yml index c8aec1c..3274ed8 100644 --- a/etc/kayobe/infra-vms.yml +++ b/etc/kayobe/infra-vms.yml @@ -32,7 +32,10 @@ # Base image for the infra VM root volume. Default is # "https://cloud-images.ubuntu.com/focal/current/focal-server-cloudimg-amd64.img" # when os_distribution is "ubuntu", or -# "https://cloud.centos.org/centos/8-stream/x86_64/images/CentOS-Stream-GenericCloud-8-20210210.0.x86_64.qcow2" +# http://dl.rockylinux.org/pub/rocky/8.5/images/Rocky-8-GenericCloud-8.5-20211114.2.x86_64.qcow2 +# when os_distribution is "rocky", +# or +# "https://cloud.centos.org/centos/8-stream/x86_64/images/CentOS-Stream-GenericCloud-8-20210603.0.x86_64.qcow2" # otherwise. #infra_vm_root_image: diff --git a/etc/kayobe/ipa.yml b/etc/kayobe/ipa.yml index da7c9ee..4d3794d 100644 --- a/etc/kayobe/ipa.yml +++ b/etc/kayobe/ipa.yml @@ -16,7 +16,7 @@ # URL of IPA builder source repository. #ipa_builder_source_url: -# Version of IPA builder source repository. Default is master. +# Version of IPA builder source repository. Default is {{ openstack_branch }}. #ipa_builder_source_version: # List of default Diskimage Builder (DIB) elements to use when building IPA diff --git a/etc/kayobe/kolla.yml b/etc/kayobe/kolla.yml index 9bc8773..e2e155f 100644 --- a/etc/kayobe/kolla.yml +++ b/etc/kayobe/kolla.yml @@ -50,6 +50,11 @@ # Extra requirements to install inside the kolla-ansible virtualenv. #kolla_ansible_venv_extra_requirements: +# Pip requirement specifier for the ansible package. NOTE: This limits the +# version of ansible used by kolla-ansible to avoid new releases from breaking +# tested code. Changes to this limit should be tested. +#kolla_ansible_venv_ansible: + # Path to Kolla-ansible configuration directory. Default is $KOLLA_CONFIG_PATH # or /etc/kolla if $KOLLA_CONFIG_PATH is not set. #kolla_config_path: @@ -62,7 +67,8 @@ # Kolla configuration. # Kolla base container image distribution. Options are "centos", "debian", -# "ubuntu". Default is {{ os_distribution }}. +# "ubuntu". Default is +# {{ 'centos' if os_distribution == 'rocky' else os_distribution }}. #kolla_base_distro: # Kolla container image type: binary or source. Default is 'source'. @@ -261,6 +267,7 @@ #kolla_enable_ceilometer: #kolla_enable_ceilometer_horizon_policy_file: #kolla_enable_ceilometer_ipmi: +#kolla_enable_ceilometer_prometheus_pushgateway: #kolla_enable_cells: #kolla_enable_central_logging: #kolla_enable_ceph_rgw: @@ -368,6 +375,7 @@ #kolla_enable_nova: #kolla_enable_nova_fake: #kolla_enable_nova_horizon_policy_file: +#kolla_enable_nova_libvirt_container: #kolla_enable_nova_serialconsole_proxy: #kolla_enable_nova_ssh: #kolla_enable_octavia: @@ -385,8 +393,10 @@ #kolla_enable_prometheus_cadvisor: #kolla_enable_prometheus_ceph_mgr_exporter: #kolla_enable_prometheus_elasticsearch_exporter: +#kolla_enable_prometheus_etcd_integration: #kolla_enable_prometheus_fluentd_integration: #kolla_enable_prometheus_haproxy_exporter: +#kolla_enable_prometheus_libvirt_exporter: #kolla_enable_prometheus_memcached_exporter: #kolla_enable_prometheus_mysqld_exporter: #kolla_enable_prometheus_node_exporter: @@ -408,9 +418,9 @@ #kolla_enable_telegraf: #kolla_enable_trove: #kolla_enable_trove_singletenant: +#kolla_enable_venus: #kolla_enable_vitrage: #kolla_enable_vitrage_prometheus_datasource: -#kolla_enable_vmtp: #kolla_enable_watcher: #kolla_enable_zookeeper: #kolla_enable_zun: @@ -456,9 +466,6 @@ kolla_internal_vip_address: 192.168.33.2 # certificate bundle for the external API. # # Note that this should be formatted as a literal style block scalar. -# -# NOTE: kolla_tls_cert has been renamed to kolla_external_tls_cert. Support for -# the deprecated name kolla_tls_cert will be removed in a future release. #kolla_external_tls_cert: # Path to a CA certificate file to use for the OS_CACERT environment variable @@ -479,6 +486,21 @@ kolla_internal_vip_address: 192.168.33.2 # default. #kolla_internal_fqdn_cacert: +############################################################################### +# Proxy configuration + +# HTTP proxy URL (format: http(s)://[user:password@]proxy_name:port) used by +# Kolla. Default value is "{{ http_proxy }}". +#kolla_http_proxy: + +# HTTPS proxy URL (format: http(s)://[user:password@]proxy_name:port) used by +# Kolla. Default value is "{{ https_proxy }}". +#kolla_https_proxy: + +# List of domains, hostnames, IP addresses and networks for which no proxy is +# used. Default value is "{{ no_proxy }}". +#kolla_no_proxy: + ############################################################################### # Dummy variable to allow Ansible to accept this file. workaround_ansible_issue_8743: yes diff --git a/etc/kayobe/networks.yml b/etc/kayobe/networks.yml index e0718c7..1a1ab26 100644 --- a/etc/kayobe/networks.yml +++ b/etc/kayobe/networks.yml @@ -113,6 +113,15 @@ aio_inspection_allocation_pool_end: 192.168.33.254 # 'name' items. These tables will be added to /etc/iproute2/rt_tables. #network_route_tables: +############################################################################### +# Network connectivity check configuration. + +# External IP address to check. Default is 8.8.8.8. +#nc_external_ip: + +# External hostname to check. Default is google.com. +#nc_external_hostname: + ############################################################################### # Dummy variable to allow Ansible to accept this file. workaround_ansible_issue_8743: yes diff --git a/etc/kayobe/openstack.yml b/etc/kayobe/openstack.yml index f2fe55a..67ad989 100644 --- a/etc/kayobe/openstack.yml +++ b/etc/kayobe/openstack.yml @@ -2,10 +2,10 @@ ############################################################################### # OpenStack release configuration. -# Name of the current OpenStack release. Default is "xena". +# Name of the current OpenStack release. Default is "yoga". #openstack_release: -# Name of the current OpenStack branch. Default is "stable/xena". +# Name of the current OpenStack branch. Default is "stable/yoga". #openstack_branch: ############################################################################### diff --git a/etc/kayobe/overcloud-dib.yml b/etc/kayobe/overcloud-dib.yml new file mode 100644 index 0000000..3d69f8e --- /dev/null +++ b/etc/kayobe/overcloud-dib.yml @@ -0,0 +1,81 @@ +--- +# Overcloud host disk image configuration. + +############################################################################### +# Diskimage-builder configuration for overcloud host disk images. + +# Whether to build host disk images with DIB directly instead of through +# Bifrost. Setting it to true disables Bifrost image build and allows images to +# be built with the `kayobe overcloud host image build` command. Default value +# is {{ os_distribution == 'rocky' }}. This will change in a future release. +#overcloud_dib_build_host_images: + +# List of overcloud host disk images to build. Each element is a dict defining +# an image in a format accepted by the stackhpc.os-images role. Default is to +# build an image named "deployment_image" configured with the overcloud_dib_* +# variables defined below: {"name": "deployment_image", "elements": "{{ +# overcloud_dib_elements }}", "env": "{{ overcloud_dib_env_vars }}", +# "packages": "{{ overcloud_dib_packages }}"}. +#overcloud_dib_host_images: + +# DIB base OS element. Default is {{ 'rocky-container' if os_distribution == +# 'rocky' else os_distribution }}. +#overcloud_dib_os_element: + +# DIB image OS release. Default is {{ os_release }}. +#overcloud_dib_os_release: + +# List of default DIB elements. Default is ["centos", "cloud-init-datasources", +# "disable-selinux", "enable-serial-console", "vm"] when +# overcloud_dib_os_element is "centos", or ["rocky-container", +# "cloud-init-datasources", "disable-selinux", "enable-serial-console", "vm"] +# when overcloud_dib_os_element is "rocky" or +# ["ubuntu", "cloud-init-datasources", "enable-serial-console", "vm"] +# when overcloud_dib_os_element is "ubuntu". +#overcloud_dib_elements_default: + +# List of additional DIB elements. Default is none. +#overcloud_dib_elements_extra: + +# List of DIB elements. Default is a combination of +# overcloud_dib_elements_default and overcloud_dib_elements_extra. +#overcloud_dib_elements: + +# DIB default environment variables. Default is +# {"DIB_BOOTLOADER_DEFAULT_CMDLINE": "nofb nomodeset gfxpayload=text +# net.ifnames=1", "DIB_CLOUD_INIT_DATASOURCES": "ConfigDrive", +# "DIB_CONTAINERFILE_RUNTIME": "docker", "DIB_CONTAINERFILE_NETWORK_DRIVER": +# "host", "DIB_RELEASE": "{{ overcloud_dib_os_release }}"}. +#overcloud_dib_env_vars_default: + +# DIB additional environment variables. Default is none. +#overcloud_dib_env_vars_extra: + +# DIB environment variables. Default is combination of +# overcloud_dib_env_vars_default and overcloud_dib_env_vars_extra. +#overcloud_dib_env_vars: + +# List of DIB packages to install. Default is to install no extra packages. +#overcloud_dib_packages: + +# List of default git repositories containing Diskimage Builder (DIB) elements. +# See stackhpc.os-images role for usage. Default is empty. +#overcloud_dib_git_elements_default: + +# List of additional git repositories containing Diskimage Builder (DIB) +# elements. See stackhpc.os-images role for usage. Default is empty. +#overcloud_dib_git_elements_extra: + +# List of git repositories containing Diskimage Builder (DIB) elements. See +# stackhpc.os-images role for usage. Default is a combination of +# overcloud_dib_git_elements_default and overcloud_dib_git_elements_extra. +#overcloud_dib_git_elements: + +# Upper constraints file for installing packages in the virtual environment +# used for building overcloud host disk images. Default is {{ +# pip_upper_constraints_file }}. +#overcloud_dib_upper_constraints_file: + +############################################################################### +# Dummy variable to allow Ansible to accept this file. +workaround_ansible_issue_8743: yes diff --git a/etc/kayobe/proxy.yml b/etc/kayobe/proxy.yml new file mode 100644 index 0000000..7d63017 --- /dev/null +++ b/etc/kayobe/proxy.yml @@ -0,0 +1,20 @@ +--- +############################################################################### +# Configuration of HTTP(S) proxies. + +# HTTP proxy URL (format: http(s)://[user:password@]proxy_name:port). By +# default no proxy is used. +#http_proxy: + +# HTTPS proxy URL (format: http(s)://[user:password@]proxy_name:port). By +# default no proxy is used. +#https_proxy: + +# List of domains, hostnames, IP addresses and networks for which no proxy is +# used. Defaults to ["127.0.0.1", "localhost", "{{ docker_registry }}"]. This +# is configured only if either http_proxy or https_proxy is set. +#no_proxy: + +############################################################################### +# Dummy variable to allow Ansible to accept this file. +workaround_ansible_issue_8743: yes diff --git a/etc/kayobe/seed-hypervisor.yml b/etc/kayobe/seed-hypervisor.yml index cbc8a50..9f1e6ad 100644 --- a/etc/kayobe/seed-hypervisor.yml +++ b/etc/kayobe/seed-hypervisor.yml @@ -18,6 +18,9 @@ seed_hypervisor_bootstrap_user: "{{ lookup('env', 'USER') }}" # List of extra networks to which seed hypervisor nodes are attached. #seed_hypervisor_extra_network_interfaces: +# Whether to enable SNAT on seed hypervisor node. Default is false. +#seed_hypervisor_enable_snat: + ############################################################################### # Seed hypervisor node software RAID configuration. diff --git a/etc/kayobe/seed-vm.yml b/etc/kayobe/seed-vm.yml index 9ad7a74..f8c2ab8 100644 --- a/etc/kayobe/seed-vm.yml +++ b/etc/kayobe/seed-vm.yml @@ -25,8 +25,11 @@ # Base image for the seed VM root volume. Default is # "https://cloud-images.ubuntu.com/focal/current/focal-server-cloudimg-amd64.img" -# when os_distribution is "ubuntu", or -# "https://cloud.centos.org/centos/8-stream/x86_64/images/CentOS-Stream-GenericCloud-8-20210210.0.x86_64.qcow2" +# when os_distribution is "ubuntu", +# http://dl.rockylinux.org/pub/rocky/8.5/images/Rocky-8-GenericCloud-8.5-20211114.2.x86_64.qcow2 +# when os_distribution is "rocky", +# or +# "https://cloud.centos.org/centos/8-stream/x86_64/images/CentOS-Stream-GenericCloud-8-20210603.0.x86_64.qcow2" # otherwise. #seed_vm_root_image: diff --git a/etc/kayobe/time.yml b/etc/kayobe/time.yml index 23c1d0d..8bfbd33 100644 --- a/etc/kayobe/time.yml +++ b/etc/kayobe/time.yml @@ -30,6 +30,9 @@ # #chrony_ntp_servers: +# Synchronise hardware clock with system time. Default is true. +#chrony_rtcsync_enabled: + ############################################################################### # Dummy variable to allow Ansible to accept this file. workaround_ansible_issue_8743: yes