Earlier  
Posted Nick Remark
#openstack-nova - 2017-10-18
15:29:54 mriedem ?
15:30:05 mriedem so the ocata compute allocation overwrite thing is less of a concern there
15:30:07 johnthetubaguy mriedem: there is a spec on that ;)
15:30:13 dansmith no migrations at all?
15:30:16 mriedem johnthetubaguy: sure, but not in pike
15:30:16 dansmith I thought evac worked at least
15:30:24 mriedem evac is the only one i can think of
15:30:27 mriedem but,
15:30:28 johnthetubaguy oh, rebuild does I guess
15:30:35 mriedem you don't care about the allocations on the dead source host
15:30:45 mriedem although these are nodes, not hosts
15:31:16 mriedem hmm, so how does evac work for ironic - the nodes might not be down, but the nova-compute service is,
15:31:29 mriedem so you evacuate and move all of those instances to other ironic nodes managed by another compute host?
15:32:07 mriedem well regardless,
15:32:12 mriedem because of gibi's fixes,
15:32:26 mriedem when/if the source compute comes back up, we remove the allocations from the old instances that were on it
15:33:01 mriedem so yeah the callback to the driver to ask if it should update allocatoins is probably ok for ironic,
15:33:03 mriedem simpler,
15:33:06 mriedem lesser of all evils,
15:33:09 mriedem and temporary
15:34:22 dansmith not not evil, but less evil
15:34:42 mriedem like mike pence
15:40:24 dtantsur johnthetubaguy, cdent, whas was the question, could you please give a tl;dr?
15:41:02 johnthetubaguy dtantsur: hit this bug: https://bugs.launchpad.net/nova/+bug/1724589
15:41:03 openstack Launchpad bug 1724589 in OpenStack Compute (nova) "Unable to transition to Ironic Node Resource Classes in Pike" [High,In progress] - Assigned to John Garbutt (johngarbutt)
15:41:05 edleafe dtantsur: if you update an ironic flavor with a custom RC, nova may schedule to an existing node
15:41:29 edleafe because we don't create the allocation for nodes with that custom RC
15:42:23 dtantsur wait, wasn't that periodic task in the ironic virt driver written to update the allocations?
15:43:11 dansmith dtantsur: no, the flavors
15:43:29 dansmith dtantsur: when it was written the compute node would unceremoniously heal allocations
15:43:32 edleafe dtantsur: that was supposed to be part of it, but only the flavor migration was added
15:43:38 dansmith dtantsur: right over top of the scheduler, which is why we made it stop,
15:43:44 dtantsur oooooh
15:43:51 dansmith dtantsur: but that periodic in the ironic driver was depending on that
15:44:09 dtantsur was the update bit removed in Pike or Queens or both?
15:44:29 johnthetubaguy Pike
15:44:29 dansmith dtantsur: pike once all compute nodes have been updated
15:44:44 dansmith dtantsur: it would keep doing it as long as ocata nodes were in the cluster
15:46:30 dtantsur so, is our only option to update the periodic task to fix up allocations as well?
15:46:38 dtantsur I don't know nova well enough to suggest anything else :)
15:48:08 dansmith dtantsur: we're going to let ironic have a vote on the "should we keep healing" decision
15:50:05 efried cdent I wrote that test case, but I can't get it to fail properly. I suspect it may be due to that bug, though.
15:50:20 efried cdent Mebbe I post it and see if you can find holes.
15:50:34 cdent efried: sounds like a grand plan
15:52:22 dtantsur dansmith: I just don't see other options. I don't think we should ask operators to go into Placement and fix up stuff themselves. or should we?
15:52:39 dansmith dtantsur: nobody is suggesting that
15:52:40 dtantsur johnthetubaguy: btw you may also hit https://bugs.launchpad.net/nova/+bug/1723423 in your testing
15:52:41 openstack Launchpad bug 1723423 in OpenStack Compute (nova) "Ironic node cannot be used if it does not report VCPU" [Undecided,In progress] - Assigned to Dmitry Tantsur (divius)
15:53:48 johnthetubaguy dtantsur: so ironic should eventually return 0 for all the resources that are no longer being claimed?
15:54:46 dtantsur johnthetubaguy: sorry, I don't quite get it. Which of the bugs are you referring to?
15:55:07 openstackgerrit Andrey Volkov proposed openstack/osc-placement master: CLI for resource classes https://review.openstack.org/511182
15:55:08 openstackgerrit Andrey Volkov proposed openstack/osc-placement master: [WIP] RP list: member_of and resources parameters https://review.openstack.org/511183
15:55:20 johnthetubaguy dtantsur: the one you just linked too, that might be a bit of the picture I was missing
15:55:41 johnthetubaguy dtantsur: once the resource class is updated, we stop reporting the vcpu mem and disk from ironic?
15:56:46 dtantsur johnthetubaguy: we don't, no. only if you remove 'cpus' key from node.properties
15:56:51 efried cdent Actually the problem is that AllocationCandidates refuses to find anything in the shared RP as long as the compute node also has inventory in the same RC (DISK_GB).
15:56:52 dtantsur which is what I tried doing in my testing
15:57:01 efried alex_xu yt?
15:57:47 cdent efried: are you based on alex’s stuff? that may be a semi-intentional holdover from the early policy of “we don’t do that”
15:57:59 johnthetubaguy dtantsur: OK, I didn't know that was a thing, makes sense now, thanks.
15:58:00 cdent in which case you’ve found a version (there are many) of the bug
15:58:11 efried cdent Yes, I'm based on his in-flight patch to implement traits in allocation candidates.
15:59:17 efried cdent Got a handy dashboard of placement bugs? This one is worth filing separately if we don't already have it.
15:59:19 dtantsur so, back to the first bug. are there any options except for fixing the periodic task? I really don't know
15:59:48 cdent efried: just make a nova one tagged placement: https://bugs.launchpad.net/nova/+bugs?field.tag=placement
16:00:20 johnthetubaguy dtantsur: we went through some, they all seem a lot worse, like calling into placement to correct the allocations after we migrate the instance flavor
16:00:21 efried cdent Cool, but don't want to dup if there's already one out there.
16:00:43 efried cdent Oh. That's the dashboard. Got it :)
16:01:22 openstackgerrit Merged openstack/nova-specs master: PCI NUMA Policies https://review.openstack.org/361140
16:05:00 dtantsur johnthetubaguy: okay.. wanna try to make a patch? at least you have a reproducer already
16:05:18 efried cdent What do we call the "main" RP to distinguish it from the shared RPs? Today it's always the "compute node RP" - but do we have a generic name for it?
16:06:22 cdent efried: we haven’t really settled on anything. alex_xu tried to use “root” in his stuff but that overlaps with nested
16:06:30 efried cdent Right
16:06:58 efried I'll use "compute node" for the sake of the bug, but eventually we should have a word.
16:07:01 cdent the other one is the “sharing” rp, so maybe the main one is the “non-sharing” (that’s a bit weak though)
16:09:01 cfriesen cdent: we could have multiple non-shared RPs per compute node, no? I think I remember hearing that some Intel folks were talking about creating a separate non-shared RP to provide L3 cache.
16:09:44 cfriesen if so then it's really the "nova compute node RP" or something like that. :)
16:09:44 openstackgerrit John Garbutt proposed openstack/nova master: Keep updating allocations for Ironic https://review.openstack.org/513085
16:09:54 johnthetubaguy dtantsur: that is my first stab at it ^
16:11:28 cdent cfriesen: non-sharing-root-provider is more complete then
16:11:41 cdent was trying to leave that complexity out for mow
16:12:37 cfriesen cdent: although in the case of L3 cache it would be properly modelled as a per-NUMA-node resource and would need nested providers. :)
16:13:17 cdent let’s hope so
16:15:08 edleafe "greedy rp"? (i.e., not sharing)
16:16:00 mriedem efried: dansmith: i went through https://review.openstack.org/#/c/510244/ for the granular allocation candidates request syntax,
16:16:17 mriedem only sticking point right now is this means you can only specify one set of resource classes/traits which are spread across providers, right?
16:16:25 mriedem because all numbered groups are applied to the same RP
16:16:30 efried mriedem Correct.
16:16:48 efried mriedem Why would you need more than... oh.
16:16:54 mriedem i'm trying to think if that screws us later
16:17:09 efried mriedem Actually, no, I think that's aight.
16:17:23 mriedem i'm mostly worried about the shared storage scenario,
16:17:27 mriedem which i know we're punting, but
16:17:34 dansmith wait, what?
16:17:42 dansmith the point of this is you specifying traits/classes that go together
16:17:45 efried mriedem Well, the spec deliberately leaves out shared RP semantics.
16:18:10 openstackgerrit Rodolfo Alonso Hernandez proposed openstack/nova-specs master: Network bandwidth resource provider https://review.openstack.org/502306
16:18:20 efried mriedem But we do have a couple of pretty big holes even without this, when it comes to traits + aggregates.
16:18:24 efried I'm writing one up now :)
16:19:05 dansmith ah, I see

Earlier   Later