Skip to content

Commit 6f0171e

Browse files
authored
Merge pull request #1492 from stackhpc/master-reno
Master changes from upstream release notes
2 parents c3e2cd0 + 5a9f666 commit 6f0171e

File tree

8 files changed

+69
-158
lines changed

8 files changed

+69
-158
lines changed

doc/source/operations/upgrading-openstack.rst

Lines changed: 45 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,52 @@ Notable changes in the |current_release| Release
3535
There are many changes in the OpenStack |current_release| release described in
3636
the release notes for each project. Here are some notable ones.
3737

38-
.. TODO Add notable changes
38+
RabbitMQ 4.0
39+
------------
40+
41+
RabbitMQ is being upgraded to 4.0 in Epoxy. Existing transient queues must be
42+
migrated on Caracal prior to upgrading.
43+
44+
.. TODO(mattcrees): Add link to docs when they exist
45+
46+
stackhpc.linux collection
47+
-------------------------
48+
49+
The ``stackhpc.linux`` collection version has been bumped to 1.3.0. Note this
50+
version uses systemd to activate virtual functions. This change is restricted
51+
to the ``stackhpc.linux.sriov`` role, which is not used by Kayobe. If a custom
52+
playbook uses this role, you can retain existing behaviour by setting
53+
``sriov_numvfs_driver`` to ``udev``.
54+
55+
Neutron driver defaults
56+
-----------------------
57+
58+
The default Neutron ML2 type drivers and tenant network types now use
59+
``geneve`` instead of ``vxlan`` when OVN is enabled. This affects the
60+
``kolla_neutron_ml2_type_drivers`` and
61+
``kolla_neutron_ml2_tenant_network_types`` variables.
62+
63+
Custom inspector_keep_ports
64+
---------------------------
65+
66+
If you have customized ``inspector_keep_ports``, ensure it is set to one of:
67+
``all``, ``present``, or ``added``. If you are relying on the previous
68+
behaviour you should set ironic_keep_ports to present.
69+
70+
Seed/Infra VM boot firmware
71+
---------------------------
72+
73+
The default boot firmware for Seed and Infra VMs has changed from ``bios`` to
74+
``efi``. Set ``infra_vm_boot_firmware`` and ``seed_vm_boot_firmware`` to bios
75+
to retain existing behaviour.
76+
77+
Prometheus MSteams
78+
------------------
3979

40-
Placeholder
41-
-----------
80+
The ``prometheus-msteams`` integration in Kolla Ansible has been removed, users
81+
should switch to the `native
82+
<https://prometheus.io/docs/alerting/latest/configuration/#msteams_config>`__
83+
Prometheus Teams integration.
4284

4385
Known issues
4486
============

etc/kayobe/environments/aufn-ceph/kolla/inventory/overcloud-services.j2

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -416,9 +416,6 @@ monitoring
416416
[prometheus-libvirt-exporter:children]
417417
compute
418418

419-
[prometheus-msteams:children]
420-
prometheus-alertmanager
421-
422419
[masakari-api:children]
423420
control
424421

etc/kayobe/environments/ci-builder/inventory/groups

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ seed
55

66
[network]
77

8-
[docker:children]
9-
# Hosts in this group will have Docker installed.
8+
[container-engine:children]
9+
# Hosts in this group will have a container engine (Docker/Podman) installed.
1010
seed
1111

1212
[ntp:children]

etc/kayobe/inventory/groups

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ vgpu
7979
###############################################################################
8080
# Service groups.
8181

82-
[docker:children]
82+
[container-engine:children]
8383
# Hosts in this group will have Docker installed.
8484
seed
8585
controllers

etc/kayobe/kolla/inventory/group_vars/prometheus-blackbox-exporter

Lines changed: 5 additions & 147 deletions
Original file line numberDiff line numberDiff line change
@@ -6,132 +6,25 @@
66
# prometheus_blackbox_exporter_endpoints_kayobe is another set of default
77
# endpoints that are templated by Kayobe rather than Kolla Ansible. See
88
# kolla/globals.yml for more details.
9-
prometheus_blackbox_exporter_endpoints: |
9+
prometheus_blackbox_exporter_endpoints_custom: |
1010
{% set endpoints = [] %}
11-
{% for dict_item in (prometheus_blackbox_exporter_endpoints_kayobe | default([]) + prometheus_blackbox_exporter_endpoints_default) %}
11+
{% for dict_item in (prometheus_blackbox_exporter_endpoints_kayobe | default([]) + stackhpc_prometheus_blackbox_exporter_endpoints_default) %}
1212
{% if dict_item.enabled | bool %}
1313
{% for endpoint in dict_item.endpoints %}
1414
{% set _ = endpoints.append(endpoint) %}
1515
{% endfor %}
1616
{% endif %}
1717
{% endfor %}
18-
{{ (endpoints + prometheus_blackbox_exporter_endpoints_custom) | unique | select | list }}
18+
{{ (endpoints + stackhpc_prometheus_blackbox_exporter_endpoints_custom) | unique | select | list }}
1919

2020
# A list of custom prometheus Blackbox exporter endpoints. Each element should
2121
# have the following format:
2222
# - name:module:endpoint
2323
# for example
2424
# - stackhpc:http_2xx:https://stackhpc.com:443
25-
prometheus_blackbox_exporter_endpoints_custom: []
25+
stackhpc_prometheus_blackbox_exporter_endpoints_custom: []
2626

27-
prometheus_blackbox_exporter_endpoints_default:
28-
# OpenStack endpoints
29-
- endpoints:
30-
- "barbican:os_endpoint:{{ barbican_public_endpoint }}"
31-
- "{{ ('barbican_internal:os_endpoint:' + barbican_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
32-
enabled: "{{ enable_barbican | bool }}"
33-
- endpoints:
34-
- "blazar:os_endpoint:{{ blazar_public_base_endpoint }}"
35-
- "{{ ('blazar_internal:os_endpoint:' + blazar_internal_base_endpoint) if not kolla_same_external_internal_vip | bool }}"
36-
enabled: "{{ enable_blazar | bool }}"
37-
- endpoints:
38-
- "ceph_rgw:http_2xx:{{ ceph_rgw_public_base_endpoint }}"
39-
- "{{ ('ceph_rgw_internal:http_2xx:' + ceph_rgw_internal_base_endpoint) if not kolla_same_external_internal_vip | bool }}"
40-
enabled: "{{ enable_ceph_rgw | bool }}"
41-
- endpoints:
42-
- "cinder:os_endpoint:{{ cinder_public_base_endpoint }}"
43-
- "{{ ('cinder_internal:os_endpoint:' + cinder_internal_base_endpoint) if not kolla_same_external_internal_vip | bool }}"
44-
enabled: "{{ enable_cinder | bool }}"
45-
- endpoints:
46-
- "cloudkitty:os_endpoint:{{ cloudkitty_public_endpoint }}"
47-
- "{{ ('cloudkitty_internal:os_endpoint:' + cloudkitty_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
48-
enabled: "{{ enable_cloudkitty | bool }}"
49-
- endpoints:
50-
- "designate:os_endpoint:{{ designate_public_endpoint }}"
51-
- "{{ ('designate_internal:os_endpoint:' + designate_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
52-
enabled: "{{ enable_designate | bool }}"
53-
- endpoints:
54-
- "glance:os_endpoint:{{ glance_public_endpoint }}"
55-
- "{{ ('glance_internal:os_endpoint:' + glance_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
56-
enabled: "{{ enable_glance | bool }}"
57-
- endpoints:
58-
- "gnocchi:os_endpoint:{{ gnocchi_public_endpoint }}"
59-
- "{{ ('gnocchi_internal:os_endpoint:' + gnocchi_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
60-
enabled: "{{ enable_gnocchi | bool }}"
61-
- endpoints:
62-
- "heat:os_endpoint:{{ heat_public_base_endpoint }}"
63-
- "{{ ('heat_internal:os_endpoint:' + heat_internal_base_endpoint) if not kolla_same_external_internal_vip | bool }}"
64-
- "heat_cfn:os_endpoint:{{ heat_cfn_public_base_endpoint }}"
65-
- "{{ ('heat_cfn_internal:os_endpoint:' + heat_cfn_internal_base_endpoint) if not kolla_same_external_internal_vip | bool }}"
66-
enabled: "{{ enable_heat | bool }}"
67-
- endpoints:
68-
- "horizon:http_2xx:{{ horizon_public_endpoint }}"
69-
- "{{ ('horizon_internal:http_2xx:' + horizon_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
70-
enabled: "{{ enable_horizon | bool }}"
71-
- endpoints:
72-
- "ironic:os_endpoint:{{ ironic_public_endpoint }}"
73-
- "{{ ('ironic_internal:os_endpoint:' + ironic_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
74-
- "ironic_inspector:os_endpoint:{{ ironic_inspector_public_endpoint }}"
75-
- "{{ ('ironic_inspector_internal:os_endpoint:' + ironic_inspector_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
76-
enabled: "{{ enable_ironic | bool }}"
77-
- endpoints:
78-
- "keystone:os_endpoint:{{ keystone_public_url }}"
79-
- "{{ ('keystone_internal:os_endpoint:' + keystone_internal_url) if not kolla_same_external_internal_vip | bool }}"
80-
enabled: "{{ enable_keystone | bool }}"
81-
- endpoints:
82-
- "magnum:os_endpoint:{{ magnum_public_base_endpoint }}"
83-
- "{{ ('magnum_internal:os_endpoint:' + magnum_internal_base_endpoint) if not kolla_same_external_internal_vip | bool }}"
84-
enabled: "{{ enable_magnum | bool }}"
85-
- endpoints:
86-
- "manila:os_endpoint:{{ manila_public_base_endpoint }}"
87-
- "{{ ('manila_internal:os_endpoint:' + manila_internal_base_endpoint) if not kolla_same_external_internal_vip | bool }}"
88-
enabled: "{{ enable_manila | bool }}"
89-
- endpoints:
90-
- "neutron:os_endpoint:{{ neutron_public_endpoint }}"
91-
- "{{ ('neutron_internal:os_endpoint:' + neutron_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
92-
enabled: "{{ enable_neutron | bool }}"
93-
- endpoints:
94-
- "nova:os_endpoint:{{ nova_public_base_endpoint }}"
95-
- "{{ ('nova_internal:os_endpoint:' + nova_internal_base_endpoint) if not kolla_same_external_internal_vip | bool }}"
96-
enabled: "{{ enable_nova | bool }}"
97-
- endpoints:
98-
- "octavia:os_endpoint:{{ octavia_public_endpoint }}"
99-
- "{{ ('octavia_internal:os_endpoint:' + octavia_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
100-
enabled: "{{ enable_octavia | bool }}"
101-
- endpoints:
102-
- "placement:os_endpoint:{{ placement_public_endpoint }}"
103-
- "{{ ('placement_internal:os_endpoint:' + placement_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
104-
enabled: "{{ enable_placement | bool }}"
105-
- endpoints:
106-
- "swift:os_endpoint:{{ swift_public_base_endpoint }}"
107-
- "{{ ('swift_internal:os_endpoint:' + swift_internal_base_endpoint) if not kolla_same_external_internal_vip | bool }}"
108-
enabled: "{{ enable_swift | bool }}"
109-
# Additional service endpoints
110-
- endpoints: "{% set etcd_endpoints = [] %}{% for host in groups.get('etcd', []) %}{{ etcd_endpoints.append('etcd_' + host.replace('-', '') + ':http_2xx:' + hostvars[host]['etcd_protocol'] + '://' + ('api' | kolla_address(host) | put_address_in_context('url')) + ':' + hostvars[host]['etcd_client_port'] + '/metrics')}}{% endfor %}{{ etcd_endpoints }}"
111-
enabled: "{{ enable_etcd | bool }}"
112-
- endpoints:
113-
- "grafana:http_2xx:{{ grafana_public_endpoint }}"
114-
- "{{ ('grafana_internal:http_2xx:' + grafana_internal_endpoint) if not kolla_same_external_internal_vip | bool }}"
115-
enabled: "{{ enable_grafana | bool }}"
116-
- endpoints:
117-
- "opensearch:http_2xx:{{ opensearch_internal_endpoint }}"
118-
enabled: "{{ enable_opensearch | bool }}"
119-
- endpoints:
120-
- "opensearch_dashboards_external:http_2xx_opensearch_dashboards:{{ opensearch_dashboards_external_endpoint }}/api/status"
121-
enabled: "{{ enable_opensearch_dashboards_external | bool }}"
122-
- endpoints:
123-
- "opensearch_dashboards:http_2xx_opensearch_dashboards:{{ opensearch_dashboards_internal_endpoint }}/api/status"
124-
enabled: "{{ enable_opensearch_dashboards | bool }}"
125-
- endpoints:
126-
- "prometheus:http_2xx_prometheus:{{ prometheus_public_endpoint if enable_prometheus_server_external else prometheus_internal_endpoint }}/-/healthy"
127-
enabled: "{{ enable_prometheus | bool }}"
128-
- endpoints:
129-
- "prometheus_alertmanager:http_2xx_alertmanager:{{ prometheus_alertmanager_public_endpoint if enable_prometheus_alertmanager_external else prometheus_alertmanager_internal_endpoint }}"
130-
enabled: "{{ enable_prometheus_alertmanager | bool }}"
131-
- endpoints: "{% set rabbitmq_endpoints = [] %}{% for host in groups.get('rabbitmq', []) %}{{ rabbitmq_endpoints.append('rabbitmq_' + host.replace('-', '') + (':tls_connect:' if rabbitmq_enable_tls | bool else ':tcp_connect:') + ('api' | kolla_address(host) | put_address_in_context('url')) + ':' + hostvars[host]['rabbitmq_port'] ) }}{% endfor %}{{ rabbitmq_endpoints }}"
132-
enabled: "{{ enable_rabbitmq | bool }}"
133-
- endpoints: "{% set redis_endpoints = [] %}{% for host in groups.get('redis', []) %}{{ redis_endpoints.append('redis_' + host.replace('-', '') + ':tcp_connect:' + ('api' | kolla_address(host) | put_address_in_context('url')) + ':' + hostvars[host]['redis_port']) }}{% endfor %}{{ redis_endpoints }}"
134-
enabled: "{{ enable_redis | bool }}"
27+
stackhpc_prometheus_blackbox_exporter_endpoints_default:
13528
# Backend endpoints
13629
- endpoints: "{% set barbican_endpoints = [] %}{% for host in groups.get('barbican-api', []) %}{{ barbican_endpoints.append('barbican_backend_' + host.replace('-', '') + ':os_endpoint:' + ('https' if kolla_enable_tls_backend | bool else 'http') + '://' + ('api' | kolla_address(host) | put_address_in_context('url')) + ':' + hostvars[host]['barbican_api_port']) }}{% endfor %}{{ barbican_endpoints }}"
13730
enabled: "{{ enable_barbican | bool }}"
@@ -171,38 +64,3 @@ prometheus_blackbox_exporter_endpoints_default:
17164
enabled: "{{ enable_ironic | bool }}"
17265
- endpoints: "{% set swift_endpoints = [] %}{% for host in groups.get('swift-api', []) %}{{ swift_endpoints.append('swift_backend_' + host.replace('-', '') + ':os_endpoint:' + 'http://' + ('api' | kolla_address(host) | put_address_in_context('url')) + ':' + hostvars[host]['swift_api_port']) }}{% endfor %}{{ swift_endpoints }}"
17366
enabled: "{{ enable_swift | bool }}"
174-
175-
# Ensure service endpoints are defined
176-
blazar_internal_base_endpoint: "{{ blazar_internal_fqdn | kolla_url(internal_protocol, blazar_api_port) }}"
177-
blazar_public_base_endpoint: "{{ blazar_external_fqdn | kolla_url(public_protocol, blazar_api_public_port) }}"
178-
ceph_rgw_internal_base_endpoint: "{{ ceph_rgw_internal_fqdn | kolla_url(internal_protocol, ceph_rgw_port) }}"
179-
ceph_rgw_public_base_endpoint: "{{ ceph_rgw_external_fqdn | kolla_url(public_protocol, ceph_rgw_public_port) }}"
180-
cinder_internal_base_endpoint: "{{ cinder_internal_fqdn | kolla_url(internal_protocol, cinder_api_port) }}"
181-
cinder_public_base_endpoint: "{{ cinder_external_fqdn | kolla_url(public_protocol, cinder_api_public_port) }}"
182-
cloudkitty_internal_endpoint: "{{ cloudkitty_internal_fqdn | kolla_url(internal_protocol, cloudkitty_api_port) }}"
183-
cloudkitty_public_endpoint: "{{ cloudkitty_external_fqdn | kolla_url(public_protocol, cloudkitty_api_public_port) }}"
184-
gnocchi_internal_endpoint: "{{ gnocchi_internal_fqdn | kolla_url(internal_protocol, gnocchi_api_port) }}"
185-
gnocchi_public_endpoint: "{{ gnocchi_external_fqdn | kolla_url(public_protocol, gnocchi_api_public_port) }}"
186-
grafana_public_endpoint: "{{ grafana_external_fqdn | kolla_url(public_protocol, grafana_server_public_port) }}"
187-
heat_cfn_internal_base_endpoint: "{{ heat_cfn_internal_fqdn | kolla_url(internal_protocol, heat_api_cfn_port) }}"
188-
heat_cfn_public_base_endpoint: "{{ heat_cfn_external_fqdn | kolla_url(public_protocol, heat_api_cfn_public_port) }}"
189-
heat_internal_base_endpoint: "{{ heat_internal_fqdn | kolla_url(internal_protocol, heat_api_port) }}"
190-
heat_public_base_endpoint: "{{ heat_external_fqdn | kolla_url(public_protocol, heat_api_public_port) }}"
191-
horizon_public_endpoint: "{{ horizon_external_fqdn | kolla_url(public_protocol, horizon_tls_port if kolla_enable_tls_external | bool else horizon_port) }}"
192-
ironic_inspector_internal_endpoint: "{{ ironic_inspector_internal_fqdn | kolla_url(internal_protocol, ironic_inspector_port) }}"
193-
ironic_inspector_public_endpoint: "{{ ironic_inspector_external_fqdn | kolla_url(public_protocol, ironic_inspector_public_port) }}"
194-
magnum_internal_base_endpoint: "{{ magnum_internal_fqdn | kolla_url(internal_protocol, magnum_api_port) }}"
195-
magnum_public_base_endpoint: "{{ magnum_external_fqdn | kolla_url(public_protocol, magnum_api_public_port) }}"
196-
manila_internal_base_endpoint: "{{ manila_internal_fqdn | kolla_url(internal_protocol, manila_api_port) }}"
197-
manila_public_base_endpoint: "{{ manila_external_fqdn | kolla_url(public_protocol, manila_api_public_port) }}"
198-
nova_internal_base_endpoint: "{{ nova_internal_fqdn | kolla_url(internal_protocol, nova_api_port) }}"
199-
nova_public_base_endpoint: "{{ nova_external_fqdn | kolla_url(public_protocol, nova_api_public_port) }}"
200-
opensearch_dashboards_external_endpoint: "{{ opensearch_dashboards_external_fqdn | default(kolla_external_fqdn) | kolla_url(public_protocol, opensearch_dashboards_port_external) }}"
201-
opensearch_dashboards_internal_endpoint: "{{ opensearch_dashboards_internal_fqdn | default(kolla_internal_fqdn) | kolla_url(internal_protocol, opensearch_dashboards_port) }}"
202-
placement_internal_endpoint: "{{ placement_internal_fqdn | kolla_url(internal_protocol, placement_api_port) }}"
203-
placement_public_endpoint: "{{ placement_external_fqdn | kolla_url(public_protocol, placement_api_public_port) }}"
204-
prometheus_alertmanager_internal_endpoint: "{{ prometheus_alertmanager_internal_fqdn | kolla_url(internal_protocol, prometheus_alertmanager_port) }}"
205-
prometheus_alertmanager_public_endpoint: "{{ prometheus_alertmanager_external_fqdn | kolla_url(public_protocol, prometheus_alertmanager_public_port) }}"
206-
prometheus_internal_endpoint: "{{ prometheus_internal_fqdn | kolla_url(internal_protocol, prometheus_port) }}"
207-
prometheus_public_endpoint: "{{ prometheus_external_fqdn | kolla_url(public_protocol, prometheus_public_port) }}"
208-
swift_public_base_endpoint: "{{ swift_external_fqdn | kolla_url(public_protocol, swift_proxy_server_port) }}"

etc/kayobe/pulp.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ stackhpc_pulp_distribution_deb_production: >-
196196

197197
# Whether to sync Rocky Linux 9 packages.
198198
stackhpc_pulp_sync_rocky_9: "{{ os_distribution == 'rocky' }}"
199-
# Rocky 9 minor version number. Supported values: 1, 2, 3, 4, 5. Default is 5
199+
# Rocky 9 minor version number. Supported values: 5. Default is 5
200200
stackhpc_pulp_repo_rocky_9_minor_version: 5
201201
# Rocky 9 Snapshot versions. The defaults use the appropriate version from
202202
# pulp-repo-versions.yml for the selected minor release.
@@ -510,12 +510,12 @@ stackhpc_pulp_images_kolla:
510510
- prometheus-elasticsearch-exporter
511511
- prometheus-libvirt-exporter
512512
- prometheus-memcached-exporter
513-
- prometheus-msteams
514513
- prometheus-mtail
515514
- prometheus-mysqld-exporter
516515
- prometheus-node-exporter
517516
- prometheus-openstack-exporter
518517
- prometheus-v2-server
518+
- proxysql
519519
- rabbitmq
520520
- redis
521521
- redis-sentinel
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
upgrade:
3+
- |
4+
The ``prometheus_blackbox_exporter_endpoints_custom`` variable has been
5+
renamed to ``stackhpc_prometheus_blackbox_exporter_endpoints_custom`` to
6+
avoid conflits with an upstream Kolla-Ansible var of the same name.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
---
2+
upgrade:
3+
- |
4+
Support for Rocky Linux 9.1 to 9.4 has been dropped. Hosts must be updated
5+
to RL9.5 or above before upgrading to this OpenStack release.
6+
deprecations:
7+
- |
8+
Support for Rocky Linux 9.1 to 9.4 has been dropped.

0 commit comments

Comments
 (0)