Friday, 2025-11-07

cardoeclif: So with the trait based port scheduling, wondering how the dynamic portgroup parts will work. So I'm looking at the inspection data and it'll tell me from LLDP data what the paired NICs are available. It'll also hint to me the name on the switch. I've been naming my Ironic baremetal ports with $NODE_NAME-$UEFI_NAME (I personally would have liked just $UEFI_NAME but Ironic requires the name to be unique)00:28
cardoeSo in that case maybe it would make sense to have an enable/disable flag on the PortGroup object so that at inspection time I can create the PortGroup but have it disabled and when its disabled the current operations will treat the port singularly (like for deployment) but trait based scheduling would be able to enable the PortGroup should it be desired.00:30
JayFthat's not really how it works for TBN? 01:21
JayFIt will create a dynamic portgroup on demand01:21
JayFso you would have zero starting portgroups01:21
cardoeYeah I understand. I’m just theory crafting here. Obviously the other way is that I need to set some traits on the ports based on what the inspection comes up with.03:10
cardoeI'm saying I don't wanna do this manually and the pairing of the ports matters. So I wanna use inspection to drive it.03:13
opendevreviewDoug Goldstein proposed openstack/ironic master: fix: local_link_connection inspection hook does not fail on missing port  https://review.opendev.org/c/openstack/ironic/+/96637303:17
cardoeYou can see what I'm tinkering with now.03:18
cardoeNot saying the idea is good.03:18
rpittaugood morning ironic! happy friday! o/07:37
FreemanBoss[m]Happy Friday ironic 07:41
rpittauplease check this quick but very important change, thanks! -> https://review.opendev.org/c/openstack/bifrost/+/96628313:45
JayF+2, but it's not the end of the world to slurp test there13:48
alegacyi've got my patches split.  working on the single process support now.14:20
alegacyis the intent for both the conductor and networking manager to be part of the same process or is it ok for them to be in different sub processes but still started from the one process?14:20
alegacyI ask because launcher.launch_service(mgr) launches another sub process unless the service launcher is set with no_fork=True which is tied to: no_fork=CONF.vnc.enabled14:21
alegacydtantsur: ^^14:21
rpittauJayF: thanks! that's not for slurp, it's just normal upgrade14:22
JayFOh I understand, I'm just trying to think of a scenario where a slurp would work but the half slurp wouldn't14:36
opendevreviewRiccardo Pittau proposed openstack/ironic-python-agent-builder master: Use Debian Trixie for debian based IPA ramdisks  https://review.opendev.org/c/openstack/ironic-python-agent-builder/+/96625314:51
opendevreviewRiccardo Pittau proposed openstack/ironic-python-agent-builder master: Use Debian Trixie for debian based IPA ramdisks  https://review.opendev.org/c/openstack/ironic-python-agent-builder/+/96625314:55
clifcardoe: if you categorize your ports properly you should be able to use filter expressions to assemble portgroups in the way you want15:13
clifif you you want filter expressions to consider additional data points we can discuss that15:14
cardoeWell define categorizing my ports properly...15:15
cardoeCause on the VXLAN side the suggestion has been to use the category column like physical_network for fabric.15:15
clif:) there's a new 'category' field on both ports and portgroups that an operator can use freely15:15
clifso if you wanted a portgroup consisting of a particular set of ports you could label them all 'blue' and then filter portgroup assembly on 'blue' ports15:16
cardoeWell sounds like the inspection hooks need to be updated for this.15:16
clifI probably don't fully understand your use case yet, but I'm getting to the point of actually doing network operations based on how tbn is planning the network15:17
clifso the inspection hooks can set fields on port{group}s?15:17
cardoeThey already do15:17
clifwhat updates would they need?15:18
cardoeWell today ports that can be part of the same portgroup just have some extra data stuffed into the inspection inventory.15:18
cardoeBut it sounds like that code should set the category to something15:18
clifthat would be easiest imo15:19
dtantsuralegacy: my impression was that ironic-networking as a separate process, always. This is why I requested it to be in a separate pod in Metal3, remember?15:19
dtantsurthis is assuming that ironic-networking does not require database access (you told me it does not)15:19
cardoee.g. today to use portgroups automagically the operator would do "openstack baremetal node inventory save <node-here>" parse the resultant output JSON and then run "openstack baremetal port group create blahhhhhhh" based on that JSON data.15:20
alegacydtantsur: ...yes, I don't have any use cases where that would be necessary, but TheJulia and JayF both added a review comment that it should work in the singleprocess launcher if required.  15:21
dtantsuralegacy: as the person who requested (and probably created) the singleprocess launcher, I consider this optional.15:22
dtantsurThe idea would be to run it in a thread from inside the conductor (not from the Launcher object)15:23
alegacyoh15:23
dtantsuryou can check how API and JSON RPC are run in the singleprocess mode already15:23
dtantsurbut again, I don't think it's an MVP requirement15:23
JayFI don't have a crazy-strong opinion, but we don't have a singleprocess launcher anymore if we don't put -networking in it.15:30
JayFWe have an API+Conductor combo process that may still need some side dishes15:30
JayFwhich I guess is OK, but having all the potential ironic services still able to spin up together is a nice boon15:30
JayFI'll point out that singleprocess mode also powers some dev workflows (e.g. `tox -e local-ironic-dev`) but I don't think that will apply strongly here15:31
dtantsurI don't mind eventually figuring this out, but is it really an MVP blocker?15:31
JayFThe comment on the CR that I seconded from TheJulia read to me like an uncertainty we COULD do it in singleprocess15:31
dtantsurI should probably read the comment, but why not?15:32
JayFI don't mind doing it later; I mind (a little?) if we can't add it later15:32
JayFI don't wanna badly proxy someone elses' code review comment especially when it's just likely I misread it15:32
alegacyDoesn't sounds like there's a really hard need for it in the short term.  If it's ok, I'd like to defer it.15:33
dtantsurCan someone point me to the patch in question? I cannot find it15:34
alegacyhttps://review.opendev.org/c/openstack/ironic/+/962493/comment/a36c24bb_fc9cce97/15:35
alegacythat's the patch that I'm splitting.  I've abandoned it... others are almost ready.15:35
dtantsurokay, I did not check the abandoned patches15:35
dtantsurWell, I see zero indication here that the same approach cannot be used for NetworkingRPCService that we used for everything else? I.e. start a thread from the conductor?15:36
dtantsurI also don't think TheJulia is claiming it's not possible, only that it's not done?15:36
TheJuliaburried in calls, huh, what?!?15:37
dtantsurTheJulia: this is re ironic-networking launched as part of ironic singleprocess (which I'm saying is not a critical requirement for me atm)15:39
JayFAs long as we know we can hook it up later, I'm okay with it15:41
TheJuliayeah, I mean, its a separate process or separate process launcher which can be hooked up at some point15:42
TheJuliasort of a chicken/egg challenge, can't do it out of the box in advance of merging the code15:42
TheJuliaFWIW, it is also super simple if its modeled correctly, and local dev or single process should likely be second order work since someone has to sit down and make it work outside of it15:50
opendevreviewAllain Legacy proposed openstack/ironic master: Add standalone networking service for ironic  https://review.opendev.org/c/openstack/ironic/+/96646617:21
opendevreviewAllain Legacy proposed openstack/ironic master: Add networking driver framework infrastructure  https://review.opendev.org/c/openstack/ironic/+/96646717:21
opendevreviewAllain Legacy proposed openstack/ironic master: Implement networking service RPC API methods  https://review.opendev.org/c/openstack/ironic/+/96646817:21
opendevreviewAllain Legacy proposed openstack/ironic master: Add generic switch driver support  https://review.opendev.org/c/openstack/ironic/+/96646917:21
opendevreviewAllain Legacy proposed openstack/ironic master: Add standalone experimental network interface  https://review.opendev.org/c/openstack/ironic/+/96647017:21
opendevreviewAllain Legacy proposed openstack/ironic master: Add standalone networking service installation guide  https://review.opendev.org/c/openstack/ironic/+/96647117:21
opendevreviewAllain Legacy proposed openstack/bifrost master: Add support for OVS as a virtual switch  https://review.opendev.org/c/openstack/bifrost/+/96203817:22
opendevreviewAllain Legacy proposed openstack/bifrost master: Add support for standalone ironic networking  https://review.opendev.org/c/openstack/bifrost/+/96239417:22
*** dking is now known as Guest3071621:10

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