16:00:21 #startmeeting Octavia 16:00:21 Meeting started Wed Nov 15 16:00:21 2023 UTC and is due to finish in 60 minutes. The chair is gthiemonge. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:00:21 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 16:00:21 The meeting name has been set to 'octavia' 16:00:28 o/ 16:01:51 o/ 16:03:20 o/ 16:04:05 #topic Announcements 16:04:12 * 2024.1 Caracal Release Schedule: Caracal-1 16:04:16 this week is Caracal-1 16:04:32 patches for new releases of octavia-lib and python-octaviaclient have been proposed 16:04:38 https://review.opendev.org/c/openstack/releases/+/900760 16:04:42 gthiemonge: Error: Can't start another meeting, one is in progress. Use #endmeeting first. 16:04:45 oops 16:04:52 https://review.opendev.org/c/openstack/releases/+/900777 16:05:32 note: the fix in python-octaviaclient was already included in a bugfix release 16:06:30 you mean the hsts "fix" 16:06:44 yep 16:08:26 #topic CI Status 16:08:37 FYI we are facing 2 recurring errors in the CI 16:08:52 a DB deadlock (due to the rework for sqlalchemy 2) 16:08:57 "Potential deadlock in check_quota_met during the first call of a tenant" 16:09:01 https://bugs.launchpad.net/octavia/+bug/2038798 16:09:12 o/ 16:09:14 there are 2 patches that should fix it 16:09:20 https://review.opendev.org/c/openstack/octavia/+/899663 16:09:32 johnsom: \o 16:09:52 the 2nd error is: "greenlet.error: cannot switch to a different thread" 16:09:57 https://bugs.launchpad.net/octavia/+bug/2039346 16:10:16 there's a thread on the ML about eventlet 16:10:22 [all][tc][ptls] Eventlet: Python 3.12, and other concerning discoveries 16:10:43 if we drop eventlet, it will fix our issue :D 16:11:21 But that will be probably D or E release I would expect. 16:11:34 That is a hard turn for a big ship.... 16:12:25 johnsom: so maybe we need to report this issue to oslo.messaging 16:12:54 Yeah, I think we might want to pursue fixing oslo messaging 16:13:00 johnsom: based on some queries I did in opensearch, it also impacts other projects 16:13:19 Yeah, there are definitely reports from other projects 16:13:28 recent reports? 16:15:15 I sent you some links, they start in 2021 and are still open on the eventlet side, but a recent change in oslo messaging seems to have increased it 16:15:24 #link https://github.com/eventlet/eventlet/issues/662 16:15:27 for example 16:15:42 oh yeah I saw some old reports but that specific issue was addressed 16:15:43 #link https://github.com/eventlet/eventlet/issues/432 16:16:18 Let me find the oslo messaging patch, give me a minute or two on that 16:16:28 becasue that issue reappeared in october 2023 16:17:48 There is this one too: 16:17:51 #link https://github.com/ChameleonCloud/zun/issues/15 16:19:10 ack 16:19:15 There is some chatter that this change make the occurrence more often: 16:19:17 #link https://github.com/openstack/oslo.messaging/commit/fd2381c723fe805b17aca1f80bfff4738fbe9628 16:20:42 I think the heartbeat_in_pthread setting should block all import and reference to eventlet in oslo messaging, which is not the case today. 16:20:54 #link https://github.com/openstack/oslo.messaging/blob/master/oslo_messaging/_utils.py#L25 16:22:00 hmm ok 16:22:29 unfortunately I don't reproduce it in my env, I ran the tests during 12h, not a single occurrence of the bug 16:23:24 I think it triggers when rabbit has an issue, like a network interruption, but I don't have a reproducer either 16:24:57 ok, I will report it to the oslo.messaging launchpad, I'll share the link here 16:25:10 maybe my env is not really up-to-date 16:26:06 I saw it in the check gates 16:26:26 yeah many times 16:29:07 #topic Brief progress reports / bugs needing review 16:29:19 there's a new bug reported by skraynev: 16:29:20 Tom Weininger proposed openstack/octavia master: Clarify certificate related config options https://review.opendev.org/c/openstack/octavia/+/901017 16:29:26 https://bugs.launchpad.net/octavia/+bug/2043582 16:29:43 basically Octavia rejects/triggers an error when the user creates a listener with a SSL certificate that has an empty CN field 16:30:05 Yeah, we should go back to the standards and see if having no CN at all is valid. I think not. 16:30:38 Well, it's not CN really, it is the subject field. As there are alternatives to CN 16:31:49 https://security.stackexchange.com/questions/55414/is-the-common-name-mandatory-for-digital-certificates 16:32:16 Tom Weininger proposed openstack/octavia master: Clarify certificate related config options https://review.opendev.org/c/openstack/octavia/+/901017 16:33:08 It looks like there are just two RFCs to parse through 16:33:28 I can do some digging on this to confirm/deny 16:33:40 johnsom: thanks 16:33:46 That said, I have mentioned before, that cert_parser code is not good 16:35:01 yeah I remember that 16:35:43 I've also been working on setting up certificates and https://review.opendev.org/c/openstack/octavia/+/901017 is the result of some of the trouble I had 16:36:11 one mistake was probably that I looked at octavia's config options around certs instead of refering to the guide 16:36:46 Yeah, focus on the guide, it is the only source of truth. lol 16:37:19 anyway, gthiemonge and I had a discussion about the agent_server_* options in https://review.opendev.org/c/openstack/octavia/+/901017/7/octavia/common/config.py 16:38:01 it seems the path is already hardcoded in https://opendev.org/openstack/octavia/src/branch/master/octavia/controller/worker/v2/tasks/compute_tasks.py#L195-L198 so changing the config option would break Octavia?! 16:38:42 IMHO it's purely internal, admins should not change the setting 16:39:47 we should even not mention it in the doc 16:39:50 Correct, the ONLY reason those are even in the config definition is we don't have a separate code base for the agent, so it shares the config infrastructure with the controller side. Those are not configurable by admins 16:40:12 We didn't until the docs were changed and the /etc/octavia.conf was removed. 16:40:26 :D 16:40:30 https://opendev.org/openstack/octavia/src/branch/master/octavia/opts.py#L30 16:40:33 if it really cannot be changed without breaking octavia, we could simply remove it IMO 16:41:02 if we remove this line, they will not be included in the doc, but I don't know the other impacts of this change 16:41:45 I guess we don't have to decide it now, but we can discuss it in my patch 16:41:58 yep 16:42:09 the other question I have is about the guide https://docs.openstack.org/octavia/latest/admin/guides/certificates.html 16:42:10 We can break the agent out into it's own repository.... 16:42:42 or split config.py into 2 files 16:43:01 oslo cfg is a global 16:43:09 argh 16:43:33 there are the setting [certificates].ca_certificate and [haproxy_amphora].server_ca that get set to the same path. If it's the same setting, why are there two config options? 16:44:04 See, the conf that get created automatically and dropped in the config drive sets those. the agent has to share the cfg with the controllers, so it's listed here. 16:44:34 What line in the guide tweining? 16:44:53 tweining: in devstack it's not the same path 16:44:58 Under "Configuring Octavia" 16:45:14 point 2 and 4 16:45:30 https://opendev.org/openstack/octavia/src/branch/master/devstack/plugin.sh#L432-L437 16:46:10 ah, ok. thanks. 16:47:01 Yeah, in dual CA (don't look at deployment tools like tripleo that do it completely wrong) those are different files 16:47:58 Oh, no, those are the same file, just used in different places 16:48:11 Ugh, I haven't looked at this in a bit. 16:48:24 The guide is right 16:48:58 I guess it is fine. It's just something I noticed an wondered why it is the same path in the guide. 16:50:16 Right, I remember now, the haproxy_amphora server_ca may need to include intermediate certs, where the usage in [certificates] would not 16:50:34 one other thing that surprised me a bit was that the defaults for the cert and key path is in https://opendev.org/openstack/octavia/src/branch/master/octavia/certificates/common/local.py /etc/ssl/certs and not /etc/octavia/certs 16:51:21 but in my case I intend to override the default using the environment variable 16:52:19 anyway, that is all from me for today I think. 16:52:21 I think those are only used (if they are) in tests 16:52:23 no idea on this 16:52:33 Hi ! i have a question about a patch i did : https://review.opendev.org/c/openstack/octavia/+/898803, 16:52:33 when I run the unit test alone, I don't reproduce the prb ( octavia.tests.functional.api.v2.test_load_balancer.TestLoadBalancer.test_create_with_vip_subnet_fills_network ) 16:53:02 snakeoil certs are created by the OS at install time. They are bogus self-signed (but valid if you ignore the self signed part) 16:53:30 My wonder is if those globals are even used anywhere 16:53:31 QG: you're talking about this error? https://zuul.opendev.org/t/openstack/build/e7e27ff8071140e5a142a5eadd4eee6f 16:54:02 QG: I'll take a look 16:54:09 gthiemonge : Yes ! 16:54:10 there are some other weird errors 16:54:22 {"faultcode": "Client", "faultstring": "Invalid input for field/attribute vip_network_id. Value: \'\'. Value should be UUID format", "debuginfo": null}' 16:54:44 I'm surprised that you don't have it in your nev 16:54:48 env 16:55:42 anyway, I'll run the tests tomorrow morning 16:55:54 gthiemonge: ok thanks ! 16:56:08 folks, do you have any other topics for today? 16:56:11 I wanted to ask quick question about 16:56:13 https://review.opendev.org/c/openstack/octavia-tempest-plugin/+/893066 16:56:23 if it is too late we can talk about it tomorrow 16:56:34 you have 4 min oschwart! 16:56:40 haha 16:56:42 :o 16:56:43 After the latest review, I removed the additional config option here, and after the check pipepline failed, I remembered why we had them in the first place :) 16:56:51 as stable branches don't have the noop certificate manager 16:57:08 right 16:57:29 I remember that 16:57:34 should I revert the patch to have the noop cert option too? 16:57:53 So either backport the noop cert manager or gate the tests on the API version 16:58:36 johnsom: you don't agree with this new config option? 16:59:01 As I commented, it's really duplicate 16:59:35 FYI I have another meeting in 1min 16:59:47 let's talk about it tomorrow then 16:59:49 It seems we could backport it 16:59:56 let's close the meeting, I'll check wiht oschwart 17:00:02 +1 17:00:08 thank you! 17:00:08 thanks for the input all 17:00:12 #endmeeting