| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2020-07-17 | |||
| 13:13:00 | sean-k-mooney | im not sure if this is backportable or not but jkulik are you pre train | |
| 13:13:52 | jkulik | I'm fine for now, thank you. (we're on queens but going to upgrade soon. it can wait. the instance in question just wasn't marked deleted and thus still came up in "server list" and customers wondered ...) | |
| 13:14:19 | sean-k-mooney | if it was in cell0 then it would have been in error | |
| 13:14:36 | jkulik | It was actually in state BUILD | |
| 13:14:52 | sean-k-mooney | really? that should not happen | |
| 13:15:16 | sean-k-mooney | that likely means you had an rpc issue at some point that lost a callback to set it to error | |
| 13:15:25 | jkulik | but since that happened somewhere last year, I also don't have logs anymore. this being the only instance in that state, I think it can be ignored. | |
| 13:15:53 | sean-k-mooney | ya but if you do see this crop up more often let us know | |
| 13:16:13 | sean-k-mooney | queens is sufficently old that if you hit an issue its proably already fixed but still good to know | |
| 13:16:35 | mnaser | yeah, i've ran into a few of the isssues that jkulik ran into and cleaned them up in later release | |
| 13:16:46 | mnaser | mostly around making things happen in a single transaction to avoid BUILD inside cell0 | |
| 13:17:43 | sean-k-mooney | maybe that is something we shoudl add to nova audit | |
| 13:18:06 | mnaser | btw - debug from yesterday's issue exposes this https://www.irccloud.com/pastebin/FdpUKxPC/ | |
| 13:18:08 | sean-k-mooney | set instance in build in cell0 to error after x time | |
| 13:18:48 | mnaser | so it sounds like the actual commit to addport happened 34 seconds after | |
| 13:19:54 | sean-k-mooney | ya so if your using iptables os-vif need to create a linux bridge then a veth pair then add one end of the veth pair to the linux bridge and the other end to ovs | |
| 13:20:17 | mnaser | so maybe that part took a long time so i need to do some more log grepping | |
| 13:20:19 | sean-k-mooney | so that can take a few second although i would not normally expect it to be that long | |
| 13:20:54 | mnaser | system has 1157 total devices | |
| 13:21:00 | sean-k-mooney | going form vsctl to native seams to have cut it form 3 mins to ~30 seconds so thats an improvement at least | |
| 13:21:11 | mnaser | from qvo/qvb/qbr | |
| 13:21:34 | mnaser | yeah -- i still have instances that take 900s to provision so it might still be bad too | |
| 13:21:40 | sean-k-mooney | mnaser: if you change form iptables to conntrack then it elimiandes all the hybrid plug stuff so os-vif just add a port to ovs and is done | |
| 13:22:35 | mnaser | sean-k-mooney: yeah i have another one here that took 3 minutes too | |
| 13:22:45 | mnaser | so i suspect native vs ovsdb wasn't the big help here | |
| 13:22:47 | sean-k-mooney | likely the large number of ports is cause some of the operation to be slower | |
| 13:22:55 | sean-k-mooney | ah ok | |
| 13:23:34 | mnaser | sean-k-mooney: but firewall driver is defined in neutron? and this is happening inside nova? | |
| 13:23:53 | mnaser | does nova become somehow aware from what firewall driver is being used? | |
| 13:24:23 | sean-k-mooney | yes | |
| 13:24:50 | sean-k-mooney | the vif binding_details has a hybrid_plug atribute | |
| 13:25:01 | mnaser | ah gotcha | |
| 13:25:07 | sean-k-mooney | its true for iptables and false for contrac | |
| 13:25:21 | sean-k-mooney | os-vif just does what neutron tells it to do | |
| 13:25:33 | mnaser | and so when donig the PUT for the binding | |
| 13:25:39 | mnaser | we get the info back telling us how to do it | |
| 13:25:44 | sean-k-mooney | yep | |
| 13:25:55 | mnaser | ok i see. i wonder if i can restart straight into openvswitch firewall driver | |
| 13:26:05 | sean-k-mooney | we use that respocne both to generate the libvirt xml and pass it to os-vif to tell it how to add the port | |
| 13:26:16 | sean-k-mooney | not quite | |
| 13:26:28 | sean-k-mooney | you can but the ports on exiting vms wont be rebound | |
| 13:26:28 | mnaser | i've looked at the code and it seems like it does have some code which 'remanages' it fwiw | |
| 13:26:45 | sean-k-mooney | so you need to live migrate teh vms or shelve and unshelve them | |
| 13:27:00 | sean-k-mooney | i guess any move operation but hardreboot wont fix it | |
| 13:27:18 | mnaser | sean-k-mooney: have you seen this code? https://github.com/openstack/neutron/blob/master/neutron/agent/linux/openvswitch_firewall/iptables.py | |
| 13:27:39 | mnaser | i guess i don't really care that much if the existing vms stay hybrid plugged | |
| 13:28:11 | sean-k-mooney | so wehn you change it i think that code is nolonger loaded or run | |
| 13:28:12 | mnaser | as long as the new ones don't use hybrid plugging which likely will result in faster os_vif plug time | |
| 13:28:48 | sean-k-mooney | so i thnk you will lose the ablity to manage security group rules on the exsting vms | |
| 13:29:53 | sean-k-mooney | i cant remeber if it was stien we added multiple port bining but when we started using that in nova we got the ability to live migrate between hosts with different firewall driver | |
| 13:30:09 | sean-k-mooney | which will allow you to change in a rolling upgade style | |
| 13:31:44 | mnaser | sean-k-mooney: i think looking at the code, switching can work, it removes the iptables rules and then just starts applying the rules on the existing qvo iface | |
| 13:31:50 | mnaser | https://github.com/openstack/neutron/blob/master/neutron/agent/linux/openvswitch_firewall/firewall.py#L614-L636 | |
| 13:32:11 | sean-k-mooney | ah ok ya i just notice it did not change the hybridg plug state | |
| 13:32:23 | sean-k-mooney | if it actully removes the iptable rules then it will work fine | |
| 13:32:45 | sean-k-mooney | the existging vm will keep using hybrid_plug untill there ports are rebound | |
| 13:32:46 | mnaser | we've switched them in the past and it wasn't an issue | |
| 13:32:58 | mnaser | yep, but the firwall rules will apply on the qvo instead of tap | |
| 13:33:12 | sean-k-mooney | cool | |
| 13:33:16 | mnaser | and new plugs will plumb tap in and eliminate qbr/qvo/qvb | |
| 13:33:28 | sean-k-mooney | yep | |
| 13:33:33 | mnaser | which will significantly reduce the number of ports on the system | |
| 13:33:47 | sean-k-mooney | it will devide it by 3 | |
| 13:33:55 | stephenfin | lyarwood: replied on https://review.opendev.org/#/c/699291/ | |
| 13:34:01 | mnaser | also i think tap interfaces won't have a random ipv6 addr show up | |
| 13:34:15 | sean-k-mooney | that is also likely | |
| 13:34:26 | sean-k-mooney | well maybe not | |
| 13:34:37 | sean-k-mooney | let me check | |
| 13:34:49 | mnaser | dmesg shows ADDRCONF events for qvb and qvo | |
| 13:34:52 | mnaser | but none for tap | |
| 13:35:01 | sean-k-mooney | they still get link local adresses | |
| 13:35:24 | sean-k-mooney | that siad it is some thing that we could disable in os-vif | |
| 13:35:46 | stephenfin | yo, bauzas. Want some d̶r̶u̶g̶s̶ patches? https://review.opendev.org/#/c/729595/ https://review.opendev.org/#/c/729596/ | |
| 13:35:49 | sean-k-mooney | actully no we cant | |
| 13:36:42 | sean-k-mooney | when os-vif creates the port on ovs its before qemu has created the tap | |
| 13:36:55 | bauzas | stephenfin: https://media.tenor.com/images/a2b7c73a67cf6c1a775466e6ad87d8b7/tenor.gif | |
| 13:37:19 | bauzas | (you need to know about Weeds, dude) | |
| 13:37:19 | stephenfin | :P | |
| 13:37:40 | stephenfin | I know GIFs | |
| 13:38:19 | bauzas | could I provide a French spec ? :p | |
| 13:38:59 | stephenfin | Sure! Just hope you're happy with artom being the only one reviewing it | |
| 13:41:07 | mnaser | sean-k-mooney: check this out -- https://github.com/openstack/neutron/blob/23e3213a07eb0b0fcdd2a1da36a847dde9beba57/neutron/tests/fullstack/test_firewall.py | |
| 13:41:17 | mnaser | neutron tests switching to openvswitch with agent restart :) | |
| 13:42:59 | stephenfin | lyarwood: Also, in case you didn't know already, I removed the auto-branch naming feature from git-review. If you want topics for e.g. https://review.opendev.org/#/c/741561/ you need to create the branch yourself | |
| 13:43:50 | sean-k-mooney | mnaser: cool | |
| 13:44:07 | sean-k-mooney | mnaser: that makes the upgrade path much smother | |
| 13:44:20 | stephenfin | sean-k-mooney, gibi, (others): Need input of vTPM design. What should we do if we resize and the new flavor has a different vTPM config? | |
| 13:44:44 | sean-k-mooney | that was in the spec | |
| 13:45:12 | sean-k-mooney | we have 2 option reject the resize or what the spec says is we recreat it with the new format lossing all data | |
| 13:45:26 | sean-k-mooney | stephenfin: there is no way to convert form one type to the other | |
| 13:45:26 | stephenfin | Right, but what about revert? | |
| 13:45:39 | stephenfin | Is resize expected to be a destructive operation? | |
| 13:45:44 | stephenfin | I know rebuild is | |
| 13:45:49 | stephenfin | but didn't think resize was | |
| 13:45:53 | sean-k-mooney | it should not be an issue unless we are talking about same host resize | |
| 13:46:35 | stephenfin | Well it's awkward to implement, hence why I'm asking :) | |
| 13:46:57 | stephenfin | I need to stash the ID of the old key stored in the key manager service | |
| 13:47:01 | sean-k-mooney | well we dont want to destoy the old tpm untill resize confimr or reviert | |
| 13:47:17 | sean-k-mooney | yes you would | |
| 13:47:53 | sean-k-mooney | but you can do it the same way we do for flavors | |