Earlier  
Posted Nick Remark
#openstack-nova - 2017-07-18
14:07:19 mriedem sean-k-mooney: https://bugs.launchpad.net/nova/+bug/1704788
14:07:19 openstack Launchpad bug 1704788 in OpenStack Compute (nova) "Hardcoded choices for nova scheduler driver" [Undecided,Confirmed]
14:07:28 sean-k-mooney mriedem: i taught we just had to register a nova.scheduler.driver stevador entry point
14:07:37 mriedem that was broken in ocata
14:07:46 mriedem by restricting the scheduler driver config option to use the choices kwarg
14:07:54 mriedem where your only choices are the known in-tree drivers
14:08:04 mriedem https://review.openstack.org/#/c/349666/
14:08:22 mriedem sean-k-mooney: https://review.openstack.org/#/c/349666/16/nova/conf/scheduler.py@63
14:08:55 sean-k-mooney mriedem: ah well honestly i think we need to keep this plug point unless we move the scheduler selection into placement which i dont think is the right approch
14:09:36 mriedem sean-k-mooney: why do we need to support out of tree scheduler drivers?
14:09:45 mriedem we want to make filter scheduler driver use placement
14:09:50 mriedem we want to deprecate caching scheduler driver
14:09:57 mriedem the other 2 in tree drivers are basically fakes for testing
14:10:13 mriedem note that the scheduler driver plugin != the scheduler filter plugin
14:10:39 mriedem unless the argument is the same as why we allow out of tree virt drivers
14:10:43 sean-k-mooney mriedem: several operators use costom scheduler and if we want to get to a point where we have a unifed scheduler that means introducing more filters or create a new scheduler
14:11:07 mriedem sean-k-mooney: we don't want to get to a point of a unified scheduler
14:11:10 mriedem gantt is dead
14:11:21 mriedem the nova scheduler is going to be biased toward compute things for nova
14:11:28 mriedem placement is the place to put generic things
14:11:33 sean-k-mooney nova does not most compay i talk to in the mano space do
14:11:34 mriedem consumable by all other services
14:12:12 bauzas mriedem: that's why I asked for questions about why people want custom drivers
14:12:17 bauzas mriedem: not filters
14:12:54 bauzas mriedem: my main point would be that nova would only pass to the scheduler driver hosts that are supported by placement
14:12:55 mriedem i can see it's going to take me awhile to get all of this shit off my shoe that i stepped into yesterday
14:13:12 sean-k-mooney mriedem: i agree with jay that placement should not make scheduling decision but instead return a list of candiates that a scheduler then claims from. the filter schedueler is a good default but it may not be smart enough to cover all usecases
14:13:26 bauzas mriedem: how then the scheduler driver would return a destination between all those supported hosts is possibly something custom
14:13:38 mriedem sean-k-mooney: what does a custom driver buy you that custom filters can't?
14:14:53 sean-k-mooney mriedem: the abblity to intergrate with external inventory systems in addtion to placement to make a desission. i may not like the design of ONAP but in there model they own all inventory resources which is a conclift with how nova works today
14:15:12 bauzas mriedem: I thought about something
14:15:28 bauzas mriedem: what if we would pass a new choice named 'custom'
14:15:55 bauzas mriedem: that would mean that if you choose 'custom', then you need to modify setup.cfg to add a 'custom' entrypoint
14:15:59 mriedem sean-k-mooney: still, you can't do that in a filter?
14:16:00 sean-k-mooney bauzas: i like the idea of tighing the contract for scheduler drivers for queens on to requried them to support placement.
14:16:17 openstackgerrit Sean Dague proposed openstack/nova master: Ironic: Support boot from Cinder volume https://review.openstack.org/215385
14:16:29 bauzas sean-k-mooney: you can call external inventory systems within a filter
14:16:53 bauzas sean-k-mooney: that said, it will call N times the 3rd party system, N being the number of hosts
14:17:05 edleafe mriedem: sean-k-mooney: like the way that TrustedFilter can call out?
14:17:10 bauzas that's the only limitation of that within a filter
14:17:18 bauzas edleafe: shhhhhttttt
14:17:25 mriedem edleafe: yes that or the attestation filter
14:17:28 mriedem or did i just make that up
14:17:32 bauzas edleafe: I *really* *hate* TrustedFilter
14:17:39 bauzas because it's in tree
14:17:45 edleafe bauzas: me too, but it's "in-tree" :)
14:17:47 sean-k-mooney edleafe: yes that is one example where it needs to talk to an atestation server.
14:17:58 bauzas mriedem: attestation server = silly TrustedFilter
14:18:13 mriedem oh yes
14:18:23 mriedem trusted filter is gone in queens
14:18:26 mriedem so don't complain too much
14:18:29 sean-k-mooney mriedem: bauzas i could do most of this with a costom filter + costum weigher to update the external inventory system with the final choice
14:18:54 mriedem i'd argue the custom external inventory system should be pumping custom resource class information into placement
14:18:58 mriedem which the filter scheduler can then use
14:19:15 edleafe mriedem: that would be best
14:19:25 bauzas hangout time ?
14:19:32 edleafe mriedem: but not always feasible
14:19:40 sean-k-mooney bauzas: the trusted filter today dose not vaildate that the plathfrom trust is still present just that you labled it as such. with the atestation server it dose a mesuared boot and attest the trust is still valid
14:19:42 bauzas I really wanted to explain my thoughts but my brain translates too slow
14:20:02 bauzas so I hope my thoughts could be clearer if I would voice
14:20:09 mriedem i can't spend all morning on this, so if there is further discussion we should probably move it to the ML
14:20:21 bauzas to make it clear, thoughts are :
14:20:28 mriedem i'll mark that bug as rc potential though since i think we need to handle it somehow
14:20:34 bauzas 1/ placement for all drivers
14:20:47 mriedem nack to 1
14:20:50 mriedem you can't enforce it
14:21:02 bauzas I'd love to
14:21:20 mriedem bauzas: just start a ML thread
14:21:22 sean-k-mooney bauzas: mriedem i can support my usecase with costome filter and weighers but a custom self contaitned driver just seemed cleaner so dont block on this cleanup on my account
14:21:22 bauzas placement would give to the driver which hosts to schedule
14:21:26 mriedem and we'll bikeshed to exhaustion there
14:21:39 sean-k-mooney dansmith: mriedem i just wanted to hilight that there may be usecase implications that would be limited
14:21:51 sean-k-mooney bauzas: ^ not dansmith
14:21:53 mriedem sean-k-mooney: honestly anyone that wants that level of custom is just going to carry a patch to revert the change to break the entrypoint anyway
14:21:59 bauzas how the driver is choosing between hosts (either by looping over filters or doing at once a choice) is left to the internals of the driver
14:22:36 bauzas like, ChanceScheduler should just random.choice() between what's passed by placement, that's it
14:22:48 gibi jaypipes: asking for MAGIC only leads to HTTP 500 with a stack trace: http://paste.openstack.org/show/615732/
14:23:17 bauzas but having ChanceScheduler having a different list of hosts from FilterScheduler seems to me very wrong
14:23:24 jaypipes gibi: aha! :) that's the source of the issue I think
14:23:25 sean-k-mooney mriedem: ya probably but for interop reason it would be nice if they did not need too.
14:23:31 jaypipes gibi: cdent fixed that bug.
14:23:40 jaypipes gibi: one sec, grabbing link to patch for you to apply.
14:23:49 gibi jaypipes: thanks
14:23:55 gibi jaypipes: sounds good
14:24:00 mriedem sean-k-mooney: if you have a custom out of tree scheduler driver, there is no interop guarantee
14:24:03 bauzas how a scheduler driver works should be a blackbox, but inputs of that blackbox should necessarly be identical between all drivers
14:24:08 mriedem sean-k-mooney: so it makes no difference imo
14:24:11 sean-k-mooney mriedem: the other way to solve this is to allow claims against placement api resouces to be passed as part of the nova boot and have a filter that will use those claimes for the placement.
14:24:23 bauzas mriedem: no, you could interop if you decide between the same hosts
14:24:23 jaypipes gibi: try this out: https://review.openstack.org/#/c/484162/
14:24:37 sean-k-mooney mriedem: yes that is true
14:24:45 gibi jaypipes: OK, I will report back soon
14:24:48 jaypipes btw, mriedem and dansmith, https://review.openstack.org/#/c/484162/ is a good fix (and important one)
14:24:53 bauzas mriedem: what I think people want is crazy foos of decision making based on weather or name of my pants
14:25:07 mriedem jaypipes: starred
14:25:14 dansmith bauzas: that was impressively unintelligible
14:25:39 bauzas dansmith: isn't the intent ? :)
14:26:04 dansmith bauzas: I dunno, I just saw that notification pop up and noticed not all those words belong together
14:26:11 bauzas everyone wants their blackbox for deciding which kid they have is the best
14:26:16 dansmith if that was the intent, then.. bravo :)

Earlier   Later