| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2022-09-12 | |||
| 10:40:21 | gibi | I don't know we might need to consult with oslo cores | |
| 10:40:59 | gibi | because there was eventlet specific tests before I added mine I thought it is handled centrally not to run them in a non patched env | |
| 10:41:06 | gibi | this might not be the case | |
| 10:41:31 | sean-k-mooney | i dont see that logic genericlly | |
| 10:41:44 | sean-k-mooney | its certenly possible to add | |
| 11:20:24 | noonedeadpunk | hello folks! I was wondering - does reverting resize failure rings anybody a bell? Ie - create server, resize server, revert resize -> VM is "stuck" in REVERT_RESIZE until message timeouts, then it goes back to VERIFY_RESIZE but with original flavor, and then nova-compute shutdown VM on hypervisor at all. The only way to recover is to reset state | |
| 11:21:51 | sean-k-mooney | not that i recall but i can see that poteilaly happening if we raise an excption in the revert path and cant proceed | |
| 11:22:17 | sean-k-mooney | like if the souce host was down or soemthing like that we would not be able to revert | |
| 11:22:58 | noonedeadpunk | paste: https://paste.openstack.org/show/bh3kML89sPFYDN9HkDSd/ | |
| 11:23:54 | noonedeadpunk | sean-k-mooney: to have that said, out of 100 tempest runs of tempest.api.compute.servers.test_server_actions.ServerActionsTestJSON.test_resize_server_revert 57 has failed | |
| 11:24:47 | noonedeadpunk | the stack trace I've spotted: https://paste.openstack.org/show/bytEWO0CHe8cSVktE3tv/ | |
| 11:25:43 | noonedeadpunk | I assumed it can be related to the heartbeat_in_pthread thing, as in the region it was "default" setting on Xena (which is enabled), but disabling it didn't fix that | |
| 11:27:33 | sean-k-mooney | do you have any timeouts form ovsdbapp | |
| 11:27:52 | sean-k-mooney | in the nova-compute logs | |
| 11:30:01 | noonedeadpunk | sean-k-mooney: um, nope | |
| 11:30:10 | noonedeadpunk | it's ovs, not ovn fwiw | |
| 11:30:22 | sean-k-mooney | ya it would be the same either way | |
| 11:30:48 | sean-k-mooney | https://bugzilla.redhat.com/show_bug.cgi?id=2085583 | |
| 11:30:56 | sean-k-mooney | i was wondering if it was related to that | |
| 11:32:33 | sean-k-mooney | those are still pending backport upstream https://review.opendev.org/c/openstack/os-vif/+/841771 | |
| 11:32:39 | sean-k-mooney | https://review.opendev.org/c/openstack/os-vif/+/841772/1 | |
| 11:33:08 | sean-k-mooney | if you are using the native os-vif backend then the compute agent can hang if the connection to the ovs db drops | |
| 11:33:13 | sean-k-mooney | and that can cause timeouts | |
| 11:33:25 | sean-k-mooney | the workaround is to just use the vsctl backend | |
| 11:34:30 | sean-k-mooney | you will see something that looks like thi | |
| 11:34:33 | sean-k-mooney | 2022-09-01 16:33:38.583 2 DEBUG ovsdbapp.backend.ovs_idl.vlog [-] [POLLIN] on fd 18 __log_wakeup /usr/lib64/python3.9/site-packages/ovs/poller.py:263 | |
| 11:34:34 | noonedeadpunk | in neutron-ovs-agent the only string referencing port is `neutron.agent.common.ovs_lib [req-3aa28a82-1d30-4713-989a-e5093e55f7ab - - - - -] Port 200e682f-b9af-487c-aa8c-605e20b99002 not present in bridge br-int` | |
| 11:34:35 | sean-k-mooney | 2022-09-01 16:33:38.584 2 DEBUG ovsdbapp.backend.ovs_idl.vlog [-] tcp:127.0.0.1:6640: entering ACTIVE _transition /usr/lib64/python3.9/site-packages/ovs/reconnect.py:519 | |
| 11:34:37 | sean-k-mooney | 2022-09-01 16:33:40.874 2 DEBUG ovsdbapp.backend.ovs_idl.vlog [-] [POLLIN] on fd 18 __log_wakeup /usr/lib64/python3.9/site-packages/ovs/poller.py:263 | |
| 11:34:39 | sean-k-mooney | 2022-09-01 16:33:43.584 2 DEBUG ovsdbapp.backend.ovs_idl.vlog [-] [POLLIN] on fd 18 __log_wakeup /usr/lib64/python3.9/site-packages/ovs/poller.py:263 | |
| 11:34:41 | sean-k-mooney | 2022-09-01 16:33:48.587 2 DEBUG ovsdbapp.backend.ovs_idl.vlog [-] 4999-ms timeout __log_wakeup /usr/lib64/python3.9/site-packages/ovs/poller.py:248 | |
| 11:34:47 | sean-k-mooney | noonedeadpunk: not in neutron in the nova-compute agent | |
| 11:35:08 | noonedeadpunk | ah, I would need to have DEBUG enabled | |
| 11:35:33 | noonedeadpunk | let me enable it and reproduce :) | |
| 11:35:37 | sean-k-mooney | noonedeadpunk: am well that just means that the logical port is defiend in the nortdb | |
| 11:35:58 | sean-k-mooney | but not actully added to the br-int bridge yet | |
| 11:36:00 | sean-k-mooney | i think | |
| 11:36:28 | sean-k-mooney | so not northdb but more or less the same | |
| 11:36:44 | sean-k-mooney | neutron know that the port should exist bug nova has not added it yet | |
| 11:37:34 | sean-k-mooney | noonedeadpunk: if you dont have debug enabled the symthom to look for is large gaps in the log of 5+ seconds without output | |
| 11:38:02 | sean-k-mooney | that however is not helpful if the system is idel or not activly spwaning a vm | |
| 11:38:22 | sean-k-mooney | since that is what you woudl expect it to look like unless you asked nova to do something | |
| 11:40:49 | noonedeadpunk | yeah, well, delay between `Updating port 73862d0c-b31b-4b75-b833-8e29d8066b9a with attributes {'binding:host_id': 'cc-compute04-tky1', 'device_owner': 'compute:nova'}` and stack trace is exactly 5 sec. But it's exactly the timeout | |
| 11:42:11 | sean-k-mooney | that is a little sus yes | |
| 11:44:19 | sean-k-mooney | the tl;dr of https://bugs.launchpad.net/os-vif/+bug/1929446 is that in the ovs python bindign they backislly make a blocking call to select.poll() which blocks the main thread | |
| 11:44:35 | sean-k-mooney | *basically | |
| 11:45:02 | sean-k-mooney | http://patchwork.ozlabs.org/project/openvswitch/patch/20210611142923.474384-1-twilson@redhat.com/ | |
| 11:47:36 | noonedeadpunk | ah | |
| 11:54:09 | sean-k-mooney | by the way we have seen ValueError: Circular reference detected before | |
| 11:54:22 | sean-k-mooney | but i dont think we ever figured out where that comes form or how | |
| 11:55:00 | sean-k-mooney | any time we have seen it there has always been some other error too | |
| 11:55:17 | sean-k-mooney | and fixing the othe rerror has caused both to go away | |
| 11:56:34 | noonedeadpunk | oh yes, I do see `DEBUG ovsdbapp.backend.ovs_idl.vlog [-] [POLLIN] on fd 31 __log_wakeup /openstack/venvs/nova-24.0.0/lib/python3.8/site-packages/ovs/poller.py:263` when revert_resize is failed | |
| 11:57:08 | noonedeadpunk | thanks sean-k-mooney, I will check out if patch will work :) | |
| 11:57:51 | sean-k-mooney | its oke to see it if you dont see large timeouts or see it ocationally | |
| 11:58:16 | noonedeadpunk | I see it only when revert is failing | |
| 11:58:17 | sean-k-mooney | otherwise etiehr backport that patch or set os vif to use vsctl | |
| 11:58:23 | sean-k-mooney | ack | |
| 11:58:59 | sean-k-mooney | [os_vif_ovs]/ovsdb_interface=vsctl | |
| 11:59:24 | sean-k-mooney | setting that in your nova.conf will also workaround it | |
| 12:00:58 | noonedeadpunk | ah, undocumented option?:) | |
| 12:01:12 | noonedeadpunk | let me try it out then | |
| 12:01:22 | sean-k-mooney | well its not undcoumented | |
| 12:01:32 | sean-k-mooney | its an os_vif option | |
| 12:01:33 | sean-k-mooney | not nova | |
| 12:02:23 | noonedeadpunk | well, yeah, but keystone_authtoken and oslo are included. And with that as operator I would expect see rest as well... | |
| 12:02:25 | noonedeadpunk | Anyway) | |
| 12:02:53 | zigo | Looks like my issue is related to https://github.com/eventlet/eventlet/issues/730 | |
| 12:03:13 | zigo | I need to fix eventlet in Debian with py 3.10 first, and then see what's going on with oslo.concurrency ... | |
| 12:03:57 | sean-k-mooney | noonedeadpunk: we could render them i guess i was expecting them to be in https://docs.openstack.org/os-vif/latest/index.html but im not seeing them | |
| 12:04:12 | sean-k-mooney | noonedeadpunk: we have explictly list namespaces if we want them to show up | |
| 12:05:57 | sean-k-mooney | noonedeadpunk: this is where its defiend by the way https://github.com/openstack/os-vif/blob/master/vif_plug_ovs/ovs.py#L71-L82 | |
| 12:06:15 | sean-k-mooney | these are the valid options https://github.com/openstack/os-vif/blob/771dfffcd90dcd7c8c95c41744092f5ad4917be3/vif_plug_ovs/ovsdb/api.py#L18-L21 | |
| 12:07:38 | noonedeadpunk | nice, thanks! | |
| 12:08:31 | sean-k-mooney | noonedeadpunk: if your using ml2/ovs you should also be enabling https://github.com/openstack/os-vif/blob/master/vif_plug_ovs/ovs.py#L96-L99 | |
| 12:08:57 | sean-k-mooney | ignore per_port_bridge | |
| 12:08:59 | sean-k-mooney | i should remove that | |
| 12:09:56 | noonedeadpunk | til about `isolate_vif` | |
| 12:10:43 | noonedeadpunk | and yes, it your note does make sense | |
| 12:30:43 | noonedeadpunk | sean-k-mooney: `[os_vif_ovs]/ovsdb_interface = vsctl` seems not to solve the issue. | |
| 12:32:32 | noonedeadpunk | no ovsdbapp logs though | |
| 12:33:08 | sean-k-mooney | ok then its likely not beauce of the agent looking up | |
| 12:33:33 | sean-k-mooney | you mentioned you have disabled the pthread for heatbeat yes | |
| 12:34:06 | sean-k-mooney | do you you iptbale firewall or openvswtich | |
| 12:34:10 | noonedeadpunk | yeah, I did, for all neutron-ovs-agents, nova-compute/scheduler/conductor | |
| 12:34:40 | noonedeadpunk | huh. | |
| 12:34:53 | sean-k-mooney | iptables we add the linux bridge and veth pair ovs firewall we add the tap directly to ovs | |
| 12:35:06 | noonedeadpunk | I just realized I likely missed disabling for neutron-server | |
| 12:35:20 | noonedeadpunk | as I assumed it's running in uwsgi, but likely it's not in this deployment | |
| 12:35:28 | sean-k-mooney | well neutron-server | |
| 12:35:36 | sean-k-mooney | ah i was going to sayy its proably wsgi | |
| 12:36:03 | sean-k-mooney | ya worth checking | |
| 12:36:13 | sean-k-mooney | that has been reverted to off by default | |
| 12:36:22 | sean-k-mooney | not sure if its been released yet on stable branches | |
| 12:36:23 | noonedeadpunk | nah, I disabled heartbeat_in_pthread for neutron-server as well | |
| 12:37:21 | noonedeadpunk | firewall_driver = iptables_hybrid | |
| 12:37:46 | noonedeadpunk | yeah, I guess there's an lxb in place | |
| 12:49:30 | sean-k-mooney | yep | |
| 12:49:59 | sean-k-mooney | ok on sec | |
| 12:51:25 | sean-k-mooney | https://github.com/openstack/nova/commit/0b0f40d1b308b29da537859b72080488560c23d4 | |