SovereignCloudStack / openstack-health-monitor

Script to monitor wheather an OpenStack cloud is working correctly
https://scs.community/
Other
13 stars 4 forks source link

Octavia CLI-Client at version 3.5.0 fails to create a loadbalancer listener #138

Open michaelbayr opened 1 year ago

michaelbayr commented 1 year ago

It seems like with a recent update to the openstack python-octaviaclient to 3.5.0 the OHM functionality breaks. When it tries to create a Loadbalancer Listener it fails with:

New LISTENER:  on openstack/APIMonitor_1693837272/1 on ohm: neutron lbaas-listener-create --name APIMonitor_1693837272_Listener_0 --default-pool c11514ca-3aa4-4814-a9d7-43ac803f960d --protocol TCP --protocol-port 80 --loadbalancer 3d85ec6e-4119-455f-853b-7d99e6469307
Mon Sep  4 02:25:10 PM UTC 2023
Unknown attributes for argument listener_.listener: hsts_preload, hsts_include_subdomains (HTTP 400) (Request-ID: req-fe7fe3b9-5f2b-412f-aa02-aac2252b416c)
ERROR: myopenstack loadbalancer listener create --wait --name APIMonitor_1693837272_Listener_0 --default-pool c11514ca-3aa4-4814-a9d7-43ac803f960d --protocol TCP --protocol-port 80 3d85ec6e-4119-455f-853b-7d99e6469307 => 1 Unknown attributes for argument listener_.listener: hsts_preload, hsts_include_subdomains (HTTP 400) (Request-ID: req-fe7fe3b9-5f2b-412f-aa02-aac2252b416c)
ERROR: LISTENER creation failed

According to the documentation hsts_preload and hsts_include_subdomains are optional fields but they still somehow seem to break the functionality.

Current quick fix (for us) is to just install the last known working version:

pip install python-octaviaclient==3.4.0
garloff commented 11 months ago

Hmmm, I need to look into this in more detail. But on first sight this looks like a bug in the octaviaclient 3.5.0 when used against Zed or older ... The OpenStack APIs use extensions and API microversions to avoid exactly these kinds of issues ...