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
participants (1)
-
no-reply@openstack.org