[release-announce] octavia 7.1.2 (victoria)

no-reply at openstack.org no-reply at openstack.org
Thu Jan 13 11:57:01 UTC 2022


We are amped to announce the release of:

octavia 7.1.2: OpenStack Octavia Scalable Load Balancer as a Service

This release is part of the victoria stable release series.

The source is available from:

    https://opendev.org/openstack/octavia

Download the package from:

    https://pypi.org/project/octavia

Please report issues through:

    https://storyboard.openstack.org/#!/project/908

For more details, please see below.

7.1.2
^^^^^

Bug Fixes

* Fixed an issue with batch member updates, that don't have any
  changes, not properly rolling back the update.

* Disable conntrack for TCP flows in the Amphora, it reduces memory
  usage for HAProxy-based listeners and prevents some kernel warnings
  about dropped packets.

* Fixed an issue that an amphorav2 LB cannot be reached after
  loadbalancer failover. The LB security group was not set in the
  amphora port.

* Fixes an issue where provider drivers may not decrement the load
  balancer objects quota on delete.

* Fixes loadbalancer creation failure when one of the listener port
  matches with the octavia generated peer ports and the allowed_cidr
  is explicitly set to 0.0.0.0/0 on the listener. This is due to
  creation of two security group rules with remote_ip_prefix as None
  and remote_ip_prefix as 0.0.0.0/0 which neutron rejects the second
  request with security group rule already exists.

* Fix an issue with the rsyslog configuration file in the Amphora
  when the log offloading feature and the local log storage feature
  are both disabled.

* Fix a serialization error when using host_routes in VIP subnets
  when persistence in the amphorav2 driver is enabled.

* Some IPv6 UDP members were incorrectly marked in ERROR status,
  because of a formatting issue while generating the health message in
  the amphora.

* Fixed MAX_TIMEOUT for timeout_client_data, timeout_member_connect,
  timeout_member_data, timeout_tcp_inspect API listener. The value was
  reduced from 365 days to 24 days, which now does not exceed the
  value of the data type in DB.

* Fixed an issue with the "lo" interface in the "amphora-haproxy"
  network namespace. The "lo" interface was down and prevented haproxy
  to communicate with other haproxy processes (for persistent stick
  tables) on configuration change. It delayed old haproxy worker
  cleanup and increased the memory consumption usage after reloading
  the configuration.

* Increase the limit value for nr_open and file-max in the amphora,
  the new value is based on what HAProxy 2.x is expecting from the
  system with the greatest maxconn value that Octavia can set.

* Fix an issue with the provisioning status of a load balancer that
  was set to ERROR too early when an error occurred, making the load
  balancer mutable while the execution of the tasks for this resources
  haven't finished yet.

* Fix an issue that could set the provisioning status of a load
  balancer to a PENDING_UPDATE state when an error occurred in the
  amphora failover flow.

* Fix load balancers that use customized host_routes in the VIP or
  the member subnets in amphorav2.

* Fix weighted round-robin for UDP listeners with keepalived and
  lvs. The algorithm must be specified as 'wrr' in order for weighted
  round-robin to work correctly, but was being set to 'rr'.

* Fixed the healthcheck endpoint always querying the backends by
  caching results for a configurable time. The default is five
  seconds.

Changes in octavia 7.1.1..7.1.2
-------------------------------

de20868a Fix LB set in ERROR too early in MapLoadbalancerToAmphora
17f2c674 Fix LB set in ERROR too early in the revert flow
e3026d35 Fix failover of az-specific loadbalancers
4703bebd Fix management network selection when calculating deltas
061ca287 Fix using host_routes in VIP subnet with amphorav2
c0ad3b34 Disable conntrack for TCP flows in the amphora
f7dde919 Fix duplicate SG creation for listener peer port
b94493eb Fix MAX_TIMEOUT value for listener
80ff90e3 Fix periodic image builder jobs
bf012c2c Fix PlugVIPAmphora revert function in amphorav2
c177987f Update nr_open limit value in the amphora
18413fab Add caps for pip-extra-reqs/pip-missing-reqs
739be788 Fix race conditions between API and worker DB calls
74c0ff2a Enable lo interface in the amphora-haproxy netns
ee7b2621 Add amphora_id in store params for failover_amphora
d69d0666 Fix comment for the ca_certificates_file opt
37b15da4 Optimize CountPoolChildrenForQuota task in amphorav2
bbb203a2 Fix task_flow.max_workers with persistence in amphorav2
2195a45a Fix rsyslog configuration when disabling logs
93ec146a Fix jobboard_enabled setting in devstack
5d49484e Fix devstack cleanup when using amphorav2
a139d2f9 Fix using subnets with host_routes in amphorav2 driver
582b4bab Make /healthcheck cache results
7ab43edc Cap hacking
1cb53e14 Fix empty Batch Member Update to unlock objects
c7640b90 Fix weighted round-robin about UDP listener
e3b68219 Fix LB failover for amphorav2: set security group
8b210bb5 Fix incorrect ERROR status with IPv6 UDP members
0a8254e0 Fix provider driver quota handling


Diffstat (except docs and test files)
-------------------------------------

devstack/plugin.sh                                 |  12 +-
.../static/usr/local/bin/udp-masquerade.sh         |  27 +++++
.../post-install.d/20-haproxy-tune-kernel          |   4 +-
etc/octavia.conf                                   |  19 ++-
.../amphorae/backends/agent/api_server/osutils.py  |   2 +-
.../api_server/templates/amphora-netns.systemd.j2  |   4 +
.../agent/api_server/templates/systemd.conf.j2     |   2 +-
.../amphorae/backends/utils/keepalivedlvs_query.py |  13 ++-
octavia/api/drivers/amphora_driver/v1/driver.py    |  11 +-
octavia/api/drivers/amphora_driver/v2/driver.py    |  11 +-
octavia/api/drivers/driver_agent/driver_updater.py |  43 ++++++-
octavia/api/healthcheck/healthcheck_plugins.py     |  23 +++-
octavia/api/v2/controllers/member.py               |   6 +
octavia/common/base_taskflow.py                    |   5 +-
octavia/common/config.py                           |   6 +-
octavia/common/constants.py                        |   4 +-
.../logging/templates/10-rsyslog.conf.template     |   5 +
octavia/common/jinja/lvs/jinja_cfg.py              |   2 +-
.../worker/v1/tasks/amphora_driver_tasks.py        |   8 --
.../controller/worker/v1/tasks/database_tasks.py   |  51 +-------
.../controller/worker/v1/tasks/network_tasks.py    |   8 +-
octavia/controller/worker/v2/controller_worker.py  |  60 ++++++++--
.../controller/worker/v2/flows/amphora_flows.py    |   4 +
.../worker/v2/tasks/amphora_driver_tasks.py        |  38 +++---
.../controller/worker/v2/tasks/database_tasks.py   |  96 ++-------------
.../controller/worker/v2/tasks/network_tasks.py    |  13 ++-
octavia/db/repositories.py                         |  10 ++
.../drivers/neutron/allowed_address_pairs.py       |  17 ++-
.../backend/agent/api_server/test_keepalivedlvs.py |   2 +-
.../backends/utils/test_keepalivedlvs_query.py     |  29 ++++-
.../amphora_driver/v1/test_amphora_driver.py       |  11 +-
.../amphora_driver/v2/test_amphora_driver.py       |  11 +-
.../drivers/driver_agent/test_driver_updater.py    |  66 ++++++++++-
.../common/jinja/logging/test_logging_jinja_cfg.py |  38 +++---
.../unit/common/jinja/lvs/test_lvs_jinja_cfg.py    |  16 +--
.../sample_configs/sample_configs_combined.py      |   4 +-
.../common/sample_configs/sample_configs_split.py  |   2 +-
.../worker/v1/tasks/test_amphora_driver_tasks.py   |  37 +-----
.../worker/v1/tasks/test_database_tasks.py         | 110 ++---------------
.../worker/v1/tasks/test_network_tasks.py          |   5 +-
.../worker/v2/flows/test_amphora_flows.py          |   6 +-
.../worker/v2/tasks/test_amphora_driver_tasks.py   | 130 +++++++++++++++------
.../worker/v2/tasks/test_database_tasks.py         | 125 ++------------------
.../worker/v2/tasks/test_database_tasks_quota.py   |  36 +-----
.../worker/v2/tasks/test_network_tasks.py          |  23 +++-
.../controller/worker/v2/test_controller_worker.py |  24 ++--
.../drivers/neutron/test_allowed_address_pairs.py  |  30 +++++
playbooks/image-build/run.yaml                     |  25 +++-
...batch-member-update-issue-09b76787553e7752.yaml |   5 +
...disable-conntrack-for-tcp-01ef6948d99353c2.yaml |   6 +
...phorav2-failover-secgroup-c793de5e00b32653.yaml |   5 +
...ver-agent-decrement-quota-27486d9fa0bdeb89.yaml |   5 +
...fix-duplicate-sg-creation-0c502a5d2d8c276d.yaml |   9 ++
...x-error-in-rsyslog-config-a316a7856e1a847a.yaml |   5 +
...amphorav2-and-persistence-54b99d651a4ee9c4.yaml |   5 +
...x-ipv6-udp-health-message-ed94b35bbea396ec.yaml |   5 +
.../fix-listener-MAX_TIMEOUT-4c4fdf804a96c34b.yaml |   7 ++
...o-interface-amphora-netns-90fb9934026e1485.yaml |   8 ++
.../fix-nr_open-limit-value-7f475c3e301a608d.yaml  |   6 +
...isioning-status-on-errors-7f3736ef6e94d453.yaml |   9 ++
...net-host_routes-amphorav2-3c079c5a3bfa1b3d.yaml |   5 +
.../fix-udp-listener-wrr-50de9dc0774a8ea1.yaml     |   6 +
.../notes/healthcheck-cache-641f0a64e6f5856c.yaml  |   5 +
test-requirements.txt                              |   2 +-
tox.ini                                            |  18 ++-
71 files changed, 837 insertions(+), 614 deletions(-)


Requirements updates
--------------------

diff --git a/test-requirements.txt b/test-requirements.txt
index 0a6a27f2..855843c7 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -4 +4 @@
-hacking>=3.0 # Apache-2.0
+hacking>=3.0,<4.1.0 # Apache-2.0






More information about the Release-announce mailing list