Current Series Release Notes¶
30.0.0.0rc1-37¶
Prelude¶
In order to support efforts on aligning Cinder service type naming across various deployments and move on from version-specific service type to a generic one, a Cinder service will be named as block-storage
from now on, which will be reflected in Keystone service catalog and endpoints. Please check upgrade notes for more details.
Implemented a standalone role httpd
for Apache Web Server (HTTPD) configuration that aims to be included in various roles that require Apache2 (i.e. keystone, horizon, skyline, etc).
New Features¶
Created a common
httpd
role to unify approach for managing Apache2 instalaltion and configuration across roles. Role is written in relatively agnostic way and should be suitable for usage outside of OpenStack-Ansible deployments as well.
Added variable
repo_server_directory_root
which by default points to/var/www/repo
and used instead ofrepo_service_home_folder
as Apache DirectoryRoot for the virtual host.
Keys for
static_routes
were liberalized and now can accept any parameter supported by[Route]
section of systemd-networkd.
Implemented flag
network_overrides_only
which is applicable tosystemd_networks
. When this flag is used no .network or .link defenition is created - only{{ filename }}.network.d/overrides.conf
configuration file, which contains arbitrary data fromconfig_overrides
This can be used to extend existing interface configuration, which is not managed by the role directly (ie managed throughnetplan
).
Added routing_rules to manage routing policy rules for the network interface. It is a list of mappings, where each mapping accept keys applicable for section RoutingPolicyRule of systemd.network. You can check documentation for systemd.network for more details.
Implemented TLS encryption for the communication between Load Balancer (HAProxy) and Skyline backends if
openstack_service_backend_ssl
is set to True.
Upgrade Notes¶
In order to align with recommendations on Cinder service naming, os_cinder role will introduce a new service in catalog named
cinder
of typeblock-storage
and corresponding set of endpoints representing them. Upgrade script will create a new file /etc/openstack_deploy/user_epoxy_upgrade.yml with definingcinder_service_v3_enabled: true
which aims to keep old version-based service type and endpoints intact. If you want to remove old versioned-based endpoints and service type from catalog you may simply undefine that variable, as it isFalse
by default.All new deployments will not have
cinderv3
/volumev3
service unlesscinder_service_v3_enabled: true
is defined.
The
os_skyline
role was switched to using a standalonehttpd
role from the in-role httpd deployment.
The
repo_server
role was switched to using a standalone HTTPD role from the in-role HTTPD deployment.
In case of using custom path for the repo server vhost, please ensure to use
repo_server_directory_root
variable instead ofrepo_service_home_folder
.
Following keys for
static_routes
list were renamed in order to match with options available in systemd-networkd configuration files:cidr
->Destination
gateway
->Gateway
While backwards compatability was kept, it’s highly recommended to use new keys as support for old key names will be removed in the future.
A uWSGI for Neutron has been disabled again by default in favor of eventlet server. This also stops and disables following services needed for uWSGI mode:
neutron-periodic-workers
neutron-ovn-maintenance-worker
neutron-rpc-server
Any deployments using the amqp1 oslo.messaging driver should be migrated to use the default rabbitmq oslo.messaging driver. Previously deprecated support for amqp1 has been removed from oslo.messaging for the Epoxy release, see https://review.opendev.org/c/openstack/oslo.messaging/+/934116. Accordingly, support for amqp1 messaging and deployment of qdrouterd has been removed from OpenStack-Ansible. A migration away from amqp1 is required before any upgrade of OpenStack-Ansible to the Epoxy release. qdrouterd can be removed entirely from the deployment and ansible inventory once the migration to rabbitmq is complete.
Deprecation Notes¶
In order to accomplish Cinder service naming alignment we had revised our prior decision on deprecating following variables, which was introduced previous cycle. Following variables should NOT be considered as deprecated anymore:
cinder_service_description
cinder_service_publicuri_proto
cinder_service_adminuri_proto
cinder_service_internaluri_proto
cinder_service_type
cinder_service_publicuri
cinder_service_adminuri
cinder_service_internaluri
Usage of version-based (
cinderv3
/volumev3
) endpoints and service type for Cinder is considered as a deprecated behaviour and will be removed in the future.
Variables for the
repo_server
role related to Apache (HTTPD) configuration, likerepo_apache_*
, as well as somerepo_pki_
andrepo_ssl_*
were deprecated and have no effect now on due to migration to a standalonehttpd
role. Please, reffer to thehttpd
role for more details on how to manage deprecated settings.
Use of amqp1 messaging, previously deprecated in oslo.messaging is not supported in the Epoxy release of OpenStack-Ansible. The previously supported provider of amqp1 messaging, qdrouterd, can no longer be deployed using the OpenStack-Ansible playbooks.
Bug Fixes¶
A bug related to HashRing generation has been reported when using uWSGI with Neutron. In order to quickly address the bug, uWSGI mode has been disabled again by default for Neutron until a proper fix is provided for uWSGI.
30.0.0.0rc1¶
Prelude¶
Behavior of rabbitmq_upgrade
variable has changed. It no longer can be used to reset the cluster state. It now acts solely as a flag to perform a rolling-upgrade of the existing cluster.
New Features¶
Added a variable
rabbitmq_erlang_package_version
that can be used to define an erlang version being used whenexternal_repo
is used as package source.
The neutron firewall-as-a-servie dashboard will be automatically deployed if the FWaaS service is enabled. FWaaS is now an active deliverable again fron the Neutron project.
RabbitMQ version is upgraded to a new major version 4.0
Upgrade Notes¶
uWSGI has been re-enabled by default for Neutron one more time. With that new services are introduced which should ensure adequate functionality of Neutron when uWSGI is being used.
neutron-periodic-workers
service is enabled for all drivers when WSGI is being used. It runs along with previously existingneutron-rpc-server
neutron-ovn-maintenance-worker
service is added only if ml2.ovn is being used asneutron_plugin_type
. The service will be enabled and running only when WSGI is used for Neutronneutron_use_uwsgi
is set to True
If you are using Ubuntu 22.04 Jammy Jellyfish and
install_method: distro
please make sure to disableneutron_use_uwsgi
as required binaries for this mode to work are missing from packages for this distro.
Please, make sure you are running RabbitMQ version of 3.13 before proceeding with the upgrade. In case you RabbitMQ version is lower then 3.13 upgrade to 4.0 will fail. You can run upgrade to 3.13 with same version of role by supplying variable
rabbitmq_package_version
during runtime, for example:openstack-ansible openstack.osa.rabbitmq_server -e rabbitmq_upgrade=true -e rabbitmq_package_version=3.13.7-1
and then re-running upgrade normally to 4.0.
Deprecation Notes¶
Following deprecated variables were removed and have no effect:
cinder_service_v2_name
cinder_service_v2_port
cinder_service_v2_proto
cinder_service_v2_type
cinder_service_v2_description
cinder_service_v2_publicuri
cinder_service_v2_publicurl
cinder_service_v2_adminuri
cinder_service_v2_adminurl
cinder_service_v2_internaluri
cinder_service_v2_internalurl
Following variables were deprecated and removed in favor of their analogues
cinder_service_description -> cinder_service_v3_description
cinder_service_publicuri_proto -> cinder_service_v3_publicuri_proto
cinder_service_adminuri_proto -> cinder_service_v3_adminuri_proto
cinder_service_internaluri_proto -> cinder_service_v3_internaluri_proto
cinder_service_type -> cinder_service_v3_type
cinder_service_publicuri -> cinder_service_v3_publicurl
cinder_service_adminuri -> cinder_service_v3_adminurl
cinder_service_internaluri -> cinder_service_v3_internalurl
cinder_service_v3_port -> cinder_service_port
cinder_service_v3_proto -> cinder_service_proto
Variable
rabbitmq_erlang_version_spec
has been deprecated and does not have any effect anymore. Please, userabbitmq_erlang_package_version
instead.
Variable
haproxy_tls_vip_binds
has been renamed tohaproxy_vip_binds
to better reflect variable purpose. Old variable name is still respected but it’s usage is descouraged and old naming will be removed in the future.
Bug Fixes¶
The format of kernel and ramdisk images for Ironic is now raw in order to conform to upstream expectations.
Issues with uWSGI mode for Neutron has been addressed and uWSGI be used for the service.
Other Notes¶
Supplying
rabbitmq_upgrade=true
no longer re-initialize cluster and will perform regular rolling upgrade of the RabbitMQ cluster.