Wednesday, 2025-10-29

*** mhen_ is now known as mhen03:00
yunhokim_Hi, compute_task.migrate_server notification has sent as error when vm migration failed due to lack of host. But resize also use same notification and payload. Can we add delimiter in payload to figure out which event occurs during migration or resize?07:40
gibiyunhokim_: resize and cold migrate is the same action internally in nova. A cold migrate is a resize without flavor change. The instance.resize_prep.start and instance.resize_prep.end notifications has an extra new_flavor field. If you compare the flavorid in the new_flavor and flavor fields and they are differ then the it is a resize, if they are the same then it is a cold migration. At the moment 08:46
gibithis is the best we can do. If you want to improve on it we might be able to add the new_flavor fields to the rest of the resize notifications08:46
yunhokim_Thanks for apply. I just find the code that you mentioned from conductor. I will check that can improve.09:59
iurygregoryHello nova folks, just a reminder that today at 15:30 UTC we have cross-project session with ironic, where? Mitaka room11:20
sean-k-mooneyhttps://etherpad.opendev.org/p/nova-2026.1-ptg#L9312:00
sean-k-mooneyiurygregory: it says nova host in the grizzly room12:00
sean-k-mooneyiurygregory:but that really means join https://meetpad.opendev.org/nova-2026.1-ptg12:00
sean-k-mooneysince we are not using zoom rooms and are usign the meetpad/jitis rooms instead12:01
iurygregorysean-k-mooney, oh ok!12:12
* iurygregory updates ironic etherpad12:13
sean-k-mooneyiurygregory:oh uyou sadi 15:3012:13
sean-k-mooneyiurygregory: for that we are in your room 12:13
sean-k-mooneyhttps://etherpad.opendev.org/p/nova-2026.1-ptg#L10412:13
sean-k-mooneyi looked at teh mainilla session sorry12:14
iurygregoryoh ok12:14
sean-k-mooneyiurygregory: so we shoudl be joining https://meetpad.opendev.org/oct2025-ptg-ironic at 15:3012:14
iurygregoryyeah12:14
iurygregoryI will join the nova room to remind about it12:14
sean-k-mooneyoh you were not askign where it is you were saying it was in mitaka before12:15
iurygregoryyeah =)12:15
sean-k-mooneyiurygregory: so im proably still going ot be in the watcher room at that point so i likely wont be able to attend but i think i replied in supprot fo the ironic topic on the ml? unless im misrememebring12:16
sean-k-mooneyiurygregory: the restore backups to a different availability zone topic if for cinder right?12:17
iurygregorysean-k-mooney, you did12:17
sean-k-mooneygiven you cant use AZ with ironic really since you cant really use host aggartes with ironic12:17
sean-k-mooneyon the nova side12:17
sean-k-mooneyits proably less broken then it was in the past now that we supprot the ironic sharding feature12:18
iurygregoryyeah, we only have two topics the graphical console and  boot the machines from NVMe-over-TCP (nova+cinder)12:18
sean-k-mooneycool12:18
iurygregoryfeel free to add info in the etherpad if you want also12:18
iurygregoryhttps://etherpad.opendev.org/p/ironic-ptg-2026.1#L66712:18
sean-k-mooneyiurygregory: this might be of relevence to ironichttps://review.opendev.org/c/openstack/nova-specs/+/47181512:19
iurygregorysean-k-mooney, for which topic? 12:20
sean-k-mooneyalthough that more about supproting the vlan trunk info for neutron trunk ports in genreal in the metadata12:20
sean-k-mooneyiurygregory: not for any of the current ones it just hat mentionign it because one of the use cases is "Once the BM server is booted up with Ironic, its networking interfaces can be12:20
sean-k-mooneyautomatically configured and brought up."12:20
sean-k-mooneyiurygregory: i belive ye implented a feature very much like this on your side in the last release or twoo so this may now onlybe relevent to other virt drivers12:21
sean-k-mooneyjust sharing for awareness12:21
iurygregoryack12:26
iurygregorytks sean-k-mooney 12:26
iurygregoryfyi TheJulia ^ 12:26
TheJuliacardoe: w/r/t the spec sean mentioned, any n-g-s impact anticipated?12:49
cardoeThe vlan trunk? No12:50
cardoeWe run the patches and Mirantis runs the patches in prod for well over a year.12:50
TheJuliabut shouldn't there be switch configuration to represent it?12:50
cardoeOf course. But this is about passing the trunk port data to the server so it knows how to configure its interfaces.12:51
sean-k-mooneyTheJulia: the vlan that is presented to the guest is a public atibute of neutorn turnk prot api meaning the end user get to choose it12:51
cardoeThis is just representing what’s in neutron to the server.12:51
sean-k-mooneyn-g-s would have to cofnigure that mapping on the switch port12:51
sean-k-mooneybut that seperate form passing the infor to the vm in the metadta12:52
cardoeExactly12:52
TheJuliaOkay, looks like there is already code there to handle trunks specifically12:54
cardoeTheJulia: https://github.com/openstack/networking-generic-switch/blob/master/networking_generic_switch/trunk_driver.py12:54
cardoeThere's the implementation of n-g-s handling it already.12:54
TheJuliayeah, I found that and in the mech driver, I just haven't had time and caffination to compeltely wrap my head around it so far this morning12:54
TheJuliaAnyway, thanks for the quick responses!12:54
cardoeYeah we implemented this ages ago in there.12:55
cardoeAlong with tests and tests for tempest which depend on the change to nova.12:55
cardoeThere’s additional tests for neutron as well and bug fixes for some corner cases with neutron and its trunk handling.12:56
TheJulia... yeah, I remember now12:56
TheJuliaI had to fix the tests from blindly running12:56
cardoeNeutron accepted the change to tighten up the spec on their side as well.12:57
cardoeIt was a series of patches developed by Mirantis, Red Hat and another company. The unnamed company is who I pressed on their CTO to stop developing OpenStack downstream and get involved upstream. To pus their developers to join the projects.12:58
cardoeI naively said I just got elected to the TC. Let me show you how it’s not hard to engage the community and get a benefit from that. I thought this has a spec and patches written by a group covering multiple companies. It’ll be easy.13:00
cardoeI pointed the CTO to asks by projects for more people to get engaged. He told me their work just gets ignored. I thought I could get more developers to engage nova and neutron.13:02
cardoeI was proven wrong.13:03
UgglaInfo: Start of PTG session in ~20mn13:42
UgglaTopic: Discuss if the CPU comparison beetween src host and dst host can not be improved or is it still relevent ?13:42
nisha04uggla: Hi regarding the session schedule on etherpad. Japan morning with US folks also works for me. I can also join the original PTG timeslot (14:00 to 18:00 UTC) on Thu/Fri if the morning session is difficult. What do you think? 14:03
nicolairuckelHow can I see which room I have to join for my topic?14:50
nicolairuckelFor the PTG14:50
nicolairuckelUggla, do I just join the Nova room?14:51
auniyalhttps://ptg.opendev.org/ptg.html -14:51
auniyalyou can join here https://meetpad.opendev.org/nova-2026.1-ptg14:51
nicolairuckelthanks!14:52
Ugglanicolairuckel, yes please join using the link above from auniyal14:52
UgglaWe are still in the cinder/nova x team session.14:52
opendevreviewmelanie witt proposed openstack/nova master: libvirt: add configuration option for volume AIO mode  https://review.opendev.org/c/openstack/nova/+/96484815:41
opendevreviewmelanie witt proposed openstack/nova master: libvirt: add configuration option for volume AIO mode  https://review.opendev.org/c/openstack/nova/+/96484815:46
dansmithUggla: man, feels like this is not the best use of nova's time, eh?16:05
Uggladansmith it was not what was expected.16:07
Ugglacinder should join later.16:08
dansmithwere there specific topics we were supposed to be getting discussed? because if so, we should probably decide if we're going to discuss those and if not, bail16:08
dansmithcinder is on the call16:08
dansmiththis is all ironic->cinder discussion AFAICT16:08
Ugglayep they have requested us too. But I agree.16:11
UgglaI just hope this topic will stop soon to discuss ours.16:11
tkajinam:-P16:15
gibiI guess we break until the top of the hour16:52
bauzasUggla: where is the nova-neutron discussion ?17:03
bauzasI joined the neutron room but I was alone17:03
Ugglanop it is manilla one17:03
Ugglaon our room17:03
Ugglabauzas ^17:03
dansmithUggla: is there a link to the room somewhere? I'm missing it17:25
bauzasUggla: I think we could discuss the AZ-soft-anti-affinity topic from noonedeadpunk at the very beginning of the nova sessions tomorrow 17:26
Uggladansmith: https://meetpad.opendev.org/oct2025-ptg-neutron17:26
bauzas2 hours for confidential computing topics seems to be good, but we could throw 30 mins from that and give it to the AZ thing17:26
Ugglabauzas, I agree but more at the end. Because confidential computing owners are located in Japan17:27
dansmithUggla: thanks, might be good to have these all linked17:27
Uggladansmith, https://ptg.opendev.org/ptg.html17:27
dansmithI know where to find them, I mean on the etherpad :)17:28
Uggladansmith, you are a bit hard with me today. :)   17:28
dansmithnot intending to be17:30
noonedeadpunkbauzas: Uggla would be great to get info about timing today, as it would highly influence my plans for tomorrow (need to have a 8h drive during tomorrow, so need to schedule it or stops)17:40
bauzasnoonedeadpunk: what would be your preference time-wise ?17:41
noonedeadpunkI think closer to the end would be better for me...17:42
noonedeadpunkbut probably can do 14 utc as well17:43
noonedeadpunkI'm more flexible today then I'll be tomorrow :D17:43
noonedeadpunk15/16 utc slots are least convenient17:44
Ugglanoonedeadpunk, I think we can have something Thu around 15h30/15/45 --> 1600 UTV17:44
Uggla*UTC17:44
Ugglaor Friday 16:30 UTC17:45
noonedeadpunkfriday 16-30 conflicts with TC 17:45
UgglaFriday 15:30 ?17:46
noonedeadpunkworks for me, yes17:47
Ugglanoonedeadpunk sold I will try to update the schedule to reflect that.17:47
noonedeadpunk++ thanks!17:47
noonedeadpunkif you'll be re-shuffling schedule on Friday - I have another topic for there already17:48
noonedeadpunkso if they could be relatively together - that would be grand17:49
tbabelHello, looking for help wrapping my head around instance boot workflow. In particular i'm curious how the image is downloaded to a compute node(in the event it doesn't exist). Does it use the nova service user or possibly user credentials themselves? Asking because i'm trying to resolve a glance/image polilcy issue and not quite sure where to target a fix at this point. Any tips are greatly appreciated!17:56
bauzasUggla: nice try for letting people hearing French 17:58
Uggla?17:59
bauzasbut I'd propose you to cut your mic, there are other ways to learn French17:59
Ugglajust realize it was open, sorry about that18:00
UgglaI hope it was not too much disturbing18:00
opendevreviewFlorian proposed openstack/nova master: Add check for PCIe devices attach limit for volume and ports  https://review.opendev.org/c/openstack/nova/+/95558418:39
melwitttbabel: I think it would be the user's credentials (the one creating a new instance)19:16
tbabelThat's what it seems like but searches looking for more info are giving conflicting results. I have been able to verify that when the user is given a different role the download can happen and saved to a base image on the compute node. But wanted to see if this was something we can configure and force it to only use the nova service user to do such operations. 19:18
melwitttbabel: yeah as far as I know there is no special treatment for fetching a base image ... nova does the same thing either way and if the image isn't cached yet, it caches it after it downloads it19:20
tbabelso far i haven't been able to find any config options or even more info/docs around this workflow. I assumed it would have been the nova service user doing it as it's being saved on the compute node where other users can use it without running in to download image policy issues.. just trying to make sense of it all19:20
Ugglanisha04, gmaan, dansmith, melwitt I have set a meeting US/JPN Friday 00:00 UTC for the graceful shutdown topic. Goal is to have a more friendly JPN timeframe as we promised during openinfra summit. I hope that it will work for you.19:20
Ugglagmaan kindly agree to run this topic, and he will be able to make a quick recap on Friday 16:30 UTC for EU folks.19:20
melwitthm yeah, I see what you're saying. /me checks something19:21
dansmithUggla: er, probably not unless you really need me there19:26
melwittUggla: thanks for the heads up19:26
melwitttbabel: I was just looking in the code and there is a GET /images as part of the create path which I guess serves as the policy check https://github.com/openstack/nova/blob/30bf8c1025ea24823ebde3eacede4ea34ec6be8c/nova/compute/api.py#L1040 however I appreciate that it is not the same as download permission. so if there is asymmetry there you could get inconsistent behavior as far as I can tell19:29
melwittdepending on whether the image is cached on the compute host or not19:30
tbabelYeah, that's def what i'm seeing. If the image isn't cached and the user without roles to download the builds go to error with a 403 from glance. It'd be nice if there were a way to force the nova service user to do that operation. 19:31
tbabelI may have to do pre-caching to work around this and keep our policy in tact19:32
Uggladansmith, should be great if you could attend this meeting. But I know you are an early bird, so if it's too late I will understand19:35
gmaantbabel: melwitt I think nova use service user to talk to glance but need to check what policy are on glance side19:35
melwitttbabel: yeah I was about to suggest that, pre-caching seems like the only workaround at the moment. having an option like that sounds reasonable to me, i.e. it is reasonable for a deployer to have different permissions for download vs get19:37
melwitt*having an option to make nova service user do image downloads to computes19:37
tbabelagreed!19:38
melwittgmaan: yeah I wondered that but AFAICT it is the calling user, not the nova user19:38
melwittif you find otherwise please link me bc I missed it :)19:39
tbabelit's possible that nova initiates the call with a service user but checks the permissions 19:39
tbabelbecause i can change the role on the user and make it work, so it's not using the nova service user solely19:40
gmaantbabel: melwitt yeah, you are right, it is always using auth from context (not the nova service user) https://github.com/openstack/nova/blob/30bf8c1025ea24823ebde3eacede4ea34ec6be8c/nova/image/glance.py#L6619:45
tbabeldrats! Thanks for helping confirm!19:47
nicolairuckelAs we discussed earlier, I opened a bug report on libvirt for the NVRAM permissions: https://gitlab.com/libvirt/libvirt/-/issues/82819:50
gmaanwe do it for other service like neutron and cinder but not for glance. I think we missed it. 19:50
gmaanI am adding it a quick topic in PTG if we get time to discuss it. to know if any specific reason not to do that or it is just missed. 19:51
gmaanand glance needs to make GET image for service role also. Currently glance does not allow it for service role19:52
tbabelgmaan: Thank you! 19:54
melwittgmaan: I think the initial GET should be the calling user though, user has to have permission to use the image right. but when it reaches nova-compute and a download is needed, I could see that being the nova service user19:56
gmaanmelwitt: yeah, true. even for GET image proxy API also we must continue to use the user token. but for nova-compute call we should pass some flag like 'privileged_user'  and in that case we call glance with configured glance service user19:59
melwittgmaan: yeah makes sense20:00
gmaanOne thing I am not sure about and maybe good to discuss in PTG, that if that can be an issue where a user can still create instances from an image which is not allowed for them. But that is already a case for already cached images  (on first instance or pre-cache mechanism) on that compute node. 20:04
melwittgmaan: yeah, that's the thing. have to define what permission does a user need to create an instance. is GET enough (this happens in nova-api already)? or should they have download permission? 20:07
tbabelthere's a couple cases there I think, even for the initial GET. In our case we allow all to get_image but don't want them to download_image. So the initial GET check will allow them to use it because it's a public image they can view/choose/select. 20:08
melwittyeah. I was thinking if let's say nova didn't exist, a user would have to have download permission to be able to create a VM with that image20:09
melwittso I dunno20:09
gmaan'but don't want them to download_image.' you mean even cache in compute right? even that is internal compute workflow 20:09
gmaanyeah, it seems tricky if service user should dowload it for them20:10
tbabelwe want them to be able to use/build a vm with it, but not download them image locally or save it in any way outside of the system in general20:10
melwittah, ok20:10
gmaani see20:10
tbabelmaybe we need another glance policy or something along those lines20:11
melwittthat makes sense actually. image binary content is the property of the cloud but users can still make VMs20:11
melwittI guess if they made a VM with that image then they have the content anyway? I dunno20:11
melwitteither way good for PTG discussion I think :)20:12
gmaanyeah or snapshot VM or other hack:)20:12
clarkbmelwitt: yes it seems liek you could just dd the data off of disk20:12
melwittyeah20:12
tbabelgreat question tbh, i'd have to prod the folks on my side further about the desire to block the download20:13
gmaanmelwitt: tbabel: anyways I added this topic in PTG etherpad under nova glance cross sessions - https://etherpad.opendev.org/p/nova-2026.1-ptg#L13320:28
gmaanUggla: ^^20:28
gmaanfeel free to update/add if something i missed20:28
melwittthanks gmaan 20:29
opendevreviewmelanie witt proposed openstack/nova-specs master: Re-propose vTPM live migration  https://review.opendev.org/c/openstack/nova-specs/+/96156421:59
opendevreviewmelanie witt proposed openstack/nova-specs master: Re-propose vTPM live migration  https://review.opendev.org/c/openstack/nova-specs/+/96156422:44

Generated by irclog2html.py 4.0.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!