Earlier  
Posted Nick Remark
#openstack-nova - 2017-02-10
18:49:52 jroll that seems sane to me
18:50:03 jroll idk what else is special case
18:50:10 superdan we kinda do that today, but in old format,
18:50:13 jroll write all the resources returned into the placement api
18:50:33 superdan I would think we should be converting the drivers to communicate in the new format anyway
18:50:47 mriedem Guest54279: you want moshele who isn't around right now
18:50:52 superdan and since we're pike now, we need to rip out the old reporting format anyway
18:51:44 jroll so
18:52:05 jroll in pike we need ironic nodes reporting both cpu/disk/ram AND a resource class
18:52:11 jroll in queens we want just a resource class
18:52:24 jroll I feel like just writing everything returned by the driver is the right thing to do
18:52:36 jroll and we'll just change what the driver returns each cycle
18:52:51 superdan jroll: right so the ironic driver would return that extra thing right now and then stop later
18:53:04 jroll not sure why we need all this stuff to remove allocations for cpus, etc
18:53:42 jroll I need to buy a whiteboard for my office already :|
18:53:54 leakypipes sorry guys, was on a call.
18:54:48 jroll superdan: I know we're hyper to get this code done, but I'd almost rather map this plan out on the ML (or at the PTG if we still don't have a plan by then)
18:54:57 jroll and code according to that plan
18:55:00 superdan jroll: yeah
18:55:13 superdan jroll: I just haven't had time to look at this stuff until now and so I'm asking questions based on that
18:55:35 jroll superdan: right, I haven't had enough time either, tbh
18:56:24 jroll I kinda have it in my head, need to write it down and have people tell me where I'm wrong
18:56:33 jroll but I need to get ocata out the door first >.>
18:56:36 superdan I can do the latter part
18:56:45 jroll I'm sure you can
18:57:14 mriedem so maybe we do wed morning all resource providers/placement stuff at the ptg?
18:57:20 mriedem 10-noon is nova/cinder on thursday
18:57:28 mriedem jroll: or would you rather do wed afternoon?
18:57:33 mriedem maybe you don't care
18:57:44 jroll mriedem: yeah I think afternoon would be better
18:57:47 mriedem ok
18:57:54 mriedem let you guys get your ironic-specific stuff started on wed morning
18:57:59 jroll yeah
18:58:11 jroll I know at least a couple people wanted to float over for placement stuff
18:59:15 leakypipes superdan: what you're talking about there (fix the stuff in the virt driver's get_available_resource()) call is EXACTLY what I had originally proposed and that approach was shot down as too invasive of the virt layer :)
18:59:19 mriedem scottda: so for whatever reason, at 3am last night, i was thinking maybe we should just change the default catalog_info for nova/cinder to be v3 in pike
18:59:22 leakypipes superdan: lemme get a link ... one sec.
18:59:34 superdan leakypipes: well, this is too invasive to the RT layer, IMHO :D
18:59:37 mriedem scottda: anyone with older config would be using cinder v2, new nova installs would be cinder v3 by default
18:59:58 mriedem scottda: that would make us test nova + cinder v3 by default in the gate in pike
19:00:09 leakypipes superdan: see here for an original proposed solution to this: https://review.openstack.org/#/c/334038/
19:00:22 superdan leakypipes: we might also haveanother method for just RP stuff, and just stop calling the old one at some point
19:00:25 leakypipes back in the good ole days of Mitaka :)
19:00:28 superdan to avoid mixing the two
19:00:39 leakypipes superdan: ya, totes agreed.
19:00:53 superdan leakypipes: where is the giant nak from zeus on that patch?
19:00:59 leakypipes superdan: I think we have to live with some more cruft int he RT for a time (until Queens at earliest).
19:01:09 mriedem ha yeah it's all +1s in there
19:02:07 jroll the get_inventory() method landed but not the implementations for the drivers, wat
19:02:12 superdan leakypipes: cruft being the reporting of both things? or what/
19:02:40 mriedem leakypipes: no that was also abandoned https://review.openstack.org/#/c/334035/
19:02:49 mriedem i don't know why it takes you to git.o.o
19:02:54 jroll mriedem: oh, weird
19:02:56 jroll thanks
19:03:16 cfriesen has anyone run into problems in the field due to heat trying to scale out with a flavor that has been deleted? Or is that sort of thing usually dealt with by issuing notifications of upcoming flavor changes?
19:03:35 mriedem cfriesen: no one uses heat in the field
19:03:42 cfriesen lol
19:03:50 mriedem btw, let me just say, trying to sort this ptg topics etherpad into some kind of agenda is giving me heartburn
19:04:28 jroll mriedem: just watching our new ptl sort ironic's topics gave me heartburn
19:04:32 leakypipes pretty sure it was bauzas that didn't like the get_inventory() stuff, but I can't find his comments now. maybe comments were only on IRC>...
19:05:14 leakypipes ah, no.. it was figleaf :)
19:05:35 leakypipes this patch here, comment from figleaf on PS3: https://review.openstack.org/#/c/415920/
19:05:44 mriedem i'll go fill out foundation marketing surveys instead, that'll be much more fun
19:06:31 superdan leakypipes: well, regardless, I think that's the way to go IMHO
19:06:34 leakypipes that patch series originally added an update_inventory() method to the virt driver interface.
19:07:15 mriedem update_inventory() in each virt driver does seem gross
19:07:24 mriedem but get_resource_thingies() seems fine
19:07:30 mriedem if only ironic needs to return anything, then so be it
19:07:47 mriedem that's why i was thinking, just add a 'resource_class' key to the get_available_resources() dict
19:08:18 superdan mriedem: yeah, just "show me your resources, beeyotch" in the virt drviers
19:08:24 superdan not "update 'em too"
19:08:27 leakypipes mriedem: err, that already exists :)
19:08:52 superdan jroll: that's what I'm talking about
19:08:54 leakypipes https://github.com/openstack/nova/blob/master/nova/virt/ironic/driver.py#L331
19:09:17 mriedem ok,
19:09:26 leakypipes that's how things *already* work :) only for Ironic of course, though.
19:09:32 mriedem so why do we need the extra 'if resource_class: do special ironic stuff' in RT?
19:09:42 superdan because it's the wrong layer
19:09:47 superdan instead of returning the node class,
19:09:49 superdan we should return resources
19:09:53 mriedem because it's doing the whole drop old types, add new resource class
19:09:56 superdan so that the RT doesn't need to translate
19:09:56 leakypipes mriedem: because Ironic doesn't require the node.resource_class to be present.
19:10:15 superdan the ironic driver can return the VCPU, DISK, and IRONIC_FOO things when appropriate
19:10:21 leakypipes Take a look at the first PS on this: https://review.openstack.org/#/c/415921/
19:11:22 superdan leakypipes: why not just "return inventory"?
19:11:25 leakypipes specifically, go here:
19:11:26 leakypipes https://review.openstack.org/#/c/415921/8..1/nova/virt/libvirt/driver.py
19:11:31 leakypipes line 5471
19:11:59 superdan I don't like the semantics of this, but the general idea is what I'm saying
19:12:12 leakypipes superdan: because there was a complaint that "the virt driver then needs to understand the internals of the resource provider and inventory modeling of the placement API"./
19:12:30 jroll I don't think it does
19:12:42 jroll it just needs to know what a VCPUS is, what a MEMORY_MB is, etc
19:12:42 superdan it just needs to know about resources, which is completely reasonable IMHO
19:12:53 superdan right
19:12:54 superdan and it knows about those today
19:13:00 superdan we just have to translate them from useless to usefulish in the RT
19:13:10 superdan and then we get shit like "if ironic, do other stuff" too high in the stack
19:14:54 superdan leakypipes: okay so I have sufficiently shit all over your thing, but I think that the end result is getting to do it like you originally wanted right?
19:15:02 leakypipes superdan: and hierarchies of providers, and traits, etc...

Earlier   Later