Fix Redis Sentinel authentication for octavia's jobboard HA

This change ensures proper authentication for both Redis master
and Sentinel, fixing potential issues with high availability and
failover. Without this, Octavia jobboard might fail to reconnect
after a master switch.

Closes-Bug: #2100927

Change-Id: I2d7f9f9e47f2c254709ec9d48545c46c9a163fdf
This commit is contained in:
Michal Arbet
2025-03-05 10:58:10 +01:00
parent b952debacc
commit ce9cba2cbc
2 changed files with 14 additions and 4 deletions

View File

@@ -157,11 +157,15 @@ ca_certificates_file = {{ openstack_cacert }}
{% if enable_octavia_jobboard | bool %}
[task_flow]
persistence_connection = mysql+pymysql://{{ octavia_persistence_database_user }}:{{ octavia_persistence_database_password }}@{{ octavia_persistence_database_address }}/{{ octavia_persistence_database_name }}
jobboard_enabled = true
jobboard_backend_password = "{{ redis_master_password }}"
jobboard_backend_port = "{{ redis_port }}"
jobboard_backend_hosts = {% for host in groups['redis'] %}{{ 'api' | kolla_address(host) | put_address_in_context('url') }}{% if not loop.last %},{% endif %}{% endfor %}
jobboard_backend_password = {{ redis_master_password }}
jobboard_backend_port = {{ redis_sentinel_port }}
jobboard_backend_username = default
jobboard_enabled = true
jobboard_redis_backend_ssl_options = ssl:False
jobboard_redis_sentinel = kolla
jobboard_redis_sentinel_ssl_options = ssl:False
persistence_connection = mysql+pymysql://{{ octavia_persistence_database_user }}:{{ octavia_persistence_database_password }}@{{ octavia_persistence_database_address }}/{{ octavia_persistence_database_name }}
{% endif %}
[oslo_concurrency]

View File

@@ -0,0 +1,6 @@
---
fixes:
- |
Fixed Redis Sentinel configuration to ensure proper high availability
functionality for Octavia jobboard.
`LP#2100927 <https://launchpad.net/bugs/2100927>`__