| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2022-06-28 | |||
| 09:32:34 | bauzas | each host getting the same weigh | |
| 09:32:49 | jkulik | sean-k-mooney: that sounds wrong :D but thanks for the idea | |
| 09:32:51 | sean-k-mooney | bauzas: that is doable yes | |
| 09:33:32 | sean-k-mooney | jkulik: tags are somethimes used for this in other out of tree implemenation like tripleos instance ha feature | |
| 09:33:35 | jkulik | speaking of the server-group API: we've extended it to allow adding servers to server-groups after they're spawned. this can be helpful if you need to spawn a new instance anti-affin to a previously spawned one, where you didn't know that requirement, yet. | |
| 09:33:42 | bauzas | I'm still confused by the weights | |
| 09:33:48 | bauzas | but | |
| 09:33:48 | sean-k-mooney | its not how the api is inteded to be used but still | |
| 09:33:52 | jkulik | is that something that has a chance upstream, if we write a spec for it? | |
| 09:33:56 | bauzas | you could pass a hint | |
| 09:34:09 | bauzas | and then have a weigher looking up at the hint | |
| 09:34:14 | sean-k-mooney | schduler hint ya but that also versioned | |
| 09:34:26 | sean-k-mooney | bauzas: oh for the pack vs spread policy | |
| 09:34:33 | sean-k-mooney | for weighers | |
| 09:34:34 | bauzas | yup | |
| 09:35:06 | sean-k-mooney | ya so i was thining the weigher woudl jsut look at the metadta in the server-group policy | |
| 09:35:18 | sean-k-mooney | and ignore the multiplpere sign | |
| 09:35:31 | sean-k-mooney | or we woudl just set min =0 for the config option | |
| 09:35:47 | bauzas | I'm not in a favor of adding more in the existing server group API but... | |
| 09:35:51 | sean-k-mooney | so the multiplper for the weigher woudl afffect only magnitude | |
| 09:36:07 | bauzas | I guess we need to agree on the use case | |
| 09:36:08 | sean-k-mooney | well server group api is preferable to schduler hit | |
| 09:36:36 | bauzas | sean-k-mooney: from an UX, I think so | |
| 09:36:51 | bauzas | but, you know how much I like our server group implementations | |
| 09:37:54 | bauzas | like --min 2 --hint spread_my_stuff | |
| 09:45:31 | gibi | bauzas: you can look at the soft-anti-affinity weigher for reference how to do it | |
| 09:46:00 | gibi | ie how to do weigher for soft things | |
| 09:47:01 | gibi | jkulik: adding existing instance to server group needs a decision from a) allow adding an instance only if the policy is valid b)allow adding instance even if the policy is not valid yet but will be at the next move | |
| 09:47:28 | gibi | jkulik: I think in the past we was not able to agree on which way we should go | |
| 09:47:32 | gibi | but you can try again | |
| 09:53:40 | jkulik | we've opted for a) ... | |
| 09:53:51 | jkulik | where would be the right point to discuss this? | |
| 09:54:17 | sean-k-mooney | https://github.com/openstack/nova-specs/tree/master/specs | |
| 09:54:31 | sean-k-mooney | sorry my wifi dropped so missed the last few minutes | |
| 09:54:49 | sean-k-mooney | so not sure waht a) is | |
| 09:55:07 | sean-k-mooney | but if you want to creat a spec to discuss the desgin upstream copy https://github.com/openstack/nova-specs/blob/master/specs/zed-template.rst | |
| 09:55:24 | sean-k-mooney | and fill it in and we can discuss on the spec and on irc | |
| 09:56:47 | sean-k-mooney[m] | ah so looking at my matix client i see i did not miss much | |
| 09:56:58 | sean-k-mooney[m] | i dont like multi create | |
| 09:57:04 | sean-k-mooney[m] | so i dont think we should add this tere | |
| 09:58:24 | sean-k-mooney | gibi: correct we did not come to an agreement on how to handel the case where the instance did not comply with the policy | |
| 09:58:44 | sean-k-mooney | i did not like the idea of the add operation implictly live migratinging the instnace | |
| 10:00:29 | sean-k-mooney | we have basicaly 3 options, 1 reject the request if the policy would be violated, 2 accpet but automticaly trigger a move operation to reconsile the state, 3 allow it to be invalide and retturn some kind or warnign and leave it to the end user to reconsile the state with a move operation | |
| 10:00:35 | sean-k-mooney | at a later date | |
| 10:01:11 | jkulik | is moving an instance allowed for normal users? | |
| 10:01:28 | sean-k-mooney | technially yes but only via a resize or shelve | |
| 10:01:42 | sean-k-mooney | live migrate and cold migrate are admin only | |
| 10:11:56 | gibi | sean-k-mooney: yeah, from those options I would go with either reject the add if violates the policy, or accept it but only warn (or extend the server group api to show if the policy is invalid), but I definitely don't want to trigger a move automatically | |
| 10:26:32 | sean-k-mooney | jkulik: gibi this was the previous spec on the topic https://review.opendev.org/c/openstack/nova-specs/+/782353 | |
| 10:28:39 | jkulik | sean-k-mooney: thanks. that will be helpful | |
| 10:29:43 | jkulik | oh, that's proposed as a server-action | |
| 10:33:17 | jkulik | fyi, this is how we built it downstream https://github.com/sapcc/nova/commit/7220be3968ee1dd257c9add88228cc5bb9857795 (+ some commits afterwards to fix certain stuff) | |
| 10:41:19 | sean-k-mooney | i see that still has the same problem | |
| 10:41:42 | frickler | does that ring a bell for someone? "nova.exception.InternalError: Unexpected vif_type=unbound" unstable failure in OSC jobs, shows as JSONDecodeError https://zuul.opendev.org/t/openstack/build/181d8177eab5428a82facc4d95ce00e2 | |
| 10:42:13 | sean-k-mooney | vif_type unbound is what the netron itnerface has before you set the host-id | |
| 10:43:05 | sean-k-mooney | frickler: so } openstackclient.tests.functional.compute.v2.test_server.ServerTests.test_server_attach_detach_floating_ip might be racing | |
| 10:43:09 | sean-k-mooney | with the server boot | |
| 10:43:29 | sean-k-mooney | if it has not finished booting when you try to attach the floating ip then you woudl get that issue i guess | |
| 10:43:56 | frickler | oh, so yet another set of tests needing wait-for-ssh things | |
| 10:44:11 | sean-k-mooney | maybe have not looked at the test yet | |
| 10:44:34 | sean-k-mooney | its not nessiarly sshable | |
| 10:44:38 | sean-k-mooney | it woudl need to be active | |
| 10:45:01 | sean-k-mooney | so this is the test https://github.com/openstack/python-openstackclient/blob/master/openstackclient/tests/functional/compute/v2/test_server.py#L339= | |
| 10:45:16 | sean-k-mooney | it shoud be waiting for active | |
| 10:45:39 | sean-k-mooney | it looks like the error is coming form self.server_create | |
| 10:46:12 | sean-k-mooney | ah from here https://github.com/openstack/python-openstackclient/blob/20e7b01af8f0fb4cf0f4af253270ad470926ba4e/openstackclient/tests/functional/compute/v2/common.py#L89= | |
| 10:46:46 | sean-k-mooney | frickler: so its assuming that a value will be populated in the output i guess | |
| 10:47:28 | sean-k-mooney | from the trace it looks like it got an empty responce of something like that | |
| 10:47:54 | sean-k-mooney | json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) | |
| 10:48:42 | sean-k-mooney | frickler: without a request id it might not be easy to see what the api returned | |
| 10:49:39 | sean-k-mooney | 136.246758s that seamed to take a very long time | |
| 10:49:49 | sean-k-mooney | is there a timeout for wait? | |
| 11:15:58 | frickler | neutron says "Concurrent port binding operations failed on port 5b1348e9-4048-4b39-a1df-1161a798052e" before nova fails, so more likely an issue on their side | |
| 11:19:08 | sean-k-mooney | concurrent? | |
| 11:19:13 | sean-k-mooney | how | |
| 11:19:35 | sean-k-mooney | that could only happne if we failed reschulded and tried to bind again | |
| 11:19:47 | sean-k-mooney | but they were sitll binding the port to the first host | |
| 11:20:08 | sean-k-mooney | so i guess yes that woudl be a neutorn issue | |
| 11:20:28 | sean-k-mooney | that is not as far as i am aware one of the exctpiotn they are allowed to raise at teh api level | |
| 11:42:33 | frickler | that's just a warning in the q-svc log and iiuc they retry and succeed after that. but it may be that they send a notification to nova about the first attempt anyway | |
| 11:43:55 | sean-k-mooney | maybe i know ralonsoh has a wip patch for somethign else that i dont think will actully help but a race was mentioned in cotext to that | |
| 11:44:58 | sean-k-mooney | frickler: https://review.opendev.org/c/openstack/neutron/+/846422/3 | |
| 11:45:09 | sean-k-mooney | https://bugs.launchpad.net/neutron/+bug/1979072 | |
| 11:45:17 | sean-k-mooney | that shoudl actully be fixed in nova | |
| 11:45:30 | ralonsoh | sean-k-mooney, right, this is just a WIP patch | |
| 11:45:51 | ralonsoh | trying to address an issue that is on the Neutron side | |
| 11:46:03 | sean-k-mooney | right please dont | |
| 11:46:06 | ralonsoh | however that doesn't address the problem of "concurrent port binding" | |
| 11:46:10 | sean-k-mooney | at least not with a periodic | |
| 11:46:11 | ralonsoh | don't what? | |
| 11:46:18 | sean-k-mooney | try an fix it form neutron | |
| 11:46:45 | ralonsoh | ok but the problem is anytime we have this issue, the bug is bug Neutron | |
| 11:46:50 | sean-k-mooney | we need to fix this form the nova side to avoid posible races between nova and neturon | |
| 11:47:20 | sean-k-mooney | right so there are two ways to fix this in nova. 1 make sure we delete the inactive port bidning when we revert | |
| 11:47:31 | sean-k-mooney | i think we try that already today but it can fial | |
| 11:47:41 | sean-k-mooney | second when we live migrate or try to create a portbidning | |
| 11:47:49 | sean-k-mooney | and it already exits delete and recreate | |
| 11:48:03 | sean-k-mooney | that will prevent this form breaking in the future | |
| 11:48:09 | frickler | the failure in osc isn't related to migration. it happens on initial server create. so I don't understand what could cause the duplicate there | |
| 11:48:37 | sean-k-mooney | if the initall port create faild and we resuchlde then we will try binding it to a second host | |