Earlier  
Posted Nick Remark
#openstack-nova - 2018-02-12
18:18:22 jaypipes edleafe: i.e. "place these things *as near to each other* as possible" or "place these related things as far away as possible"
18:18:51 jaypipes edleafe: in the soft affinity cases, the distance being relative and not yes/no enables that sorting of potential destinations
18:19:59 edleafe jaypipes: how widespread is that need? IOW, 20% of use cases? 1%?
18:20:14 jaypipes edleafe: the soft affinity thing?
18:20:57 edleafe jaypipes: yeah. It seems like overkill to build all our affinity/anti stuff to handle these types of things
18:21:09 jaypipes edleafe: BTW, the "soft" stuff is also interpreted as "if the strict condition doesn't hold, then just get me the thing that closest matches my condition" -- i.e. sorting..
18:21:25 edleafe jaypipes: when the vast majority just want yes/no
18:21:28 jaypipes edleafe: it may indeed be overkill. but it's what we currently have.
18:21:43 edleafe jaypipes: where do we have it?
18:22:24 jaypipes edleafe: the soft affinity "filters" are implemented as weighers.
18:22:28 openstackgerrit Matthew Edmonds proposed openstack/nova master: improve support matrix notes https://review.openstack.org/540534
18:22:38 jaypipes edleafe: https://github.com/openstack/nova/blob/master/nova/scheduler/weights/affinity.py
18:24:01 edleafe jaypipes: that doesn't use any sort of "distance" concept. It just favors those things that meet (anti)affinity
18:24:39 jaypipes edleafe: correct.
18:26:10 jaypipes edleafe: the distance thing is something we need in order to understand the difference between various failure domain sizes. it's also necessary for informing placement about the different "levels" of affinity. right now, Nova only knows one level (the compute *host* (note: *not* the compute *node*). In other words, Ironic can't use the existing affinity filters/weights in Nova.
18:26:31 jaypipes edleafe: this is partly to address that issue: https://review.openstack.org/#/c/529135/
18:27:52 edleafe jaypipes: yeah, I like that
18:28:15 openstackgerrit Eric Berglund proposed openstack/nova master: Use correct arguments in task inits https://review.openstack.org/543571
18:28:59 jaypipes edleafe: of course, that doesn't touch placement...
18:29:11 edleafe jaypipes: understood
18:30:16 edleafe jaypipes: my concern is that adding the new tables and relations you proposed on Friday would not be necessary for the vast majority of (anti)affinity cases. We could do it with placement aggs
18:31:20 openstackgerrit Lee Yarwood proposed openstack/nova master: Enable test_volume_backed_live_migration in tempest https://review.openstack.org/528104
18:31:35 mriedem edleafe: we don't really know what the vast majority of anything is
18:31:36 mriedem usage wise
18:31:37 openstackgerrit Merged openstack/python-novaclient stable/pike: Avoid tox_install.sh for constraints support https://review.openstack.org/543115
18:32:04 edleafe mriedem: and what we do know may change
18:32:06 openstackgerrit Merged openstack/python-novaclient stable/pike: Zuul: Remove project name https://review.openstack.org/541370
18:32:06 mriedem i want a minimum of 3 DB servers, put on different hosts if you can, but don't fail if you can't
18:32:07 openstackgerrit Merged openstack/python-novaclient stable/ocata: Avoid tox_install.sh for constraints support https://review.openstack.org/543114
18:32:07 edleafe s/may/will
18:32:36 mriedem we're going to be proposing a spec for something that builds on the soft affinity stuff
18:32:44 mriedem to put a limit on the softness
18:32:51 edleafe mriedem: sure. The complicating part is I want three servers, at least two racks away from each other
18:33:07 edleafe not just on different racks
18:33:22 mriedem yeah the distance concept is complicated
18:35:34 cdent what does "two rack away" even mean?
18:36:48 edleafe cdent: it would depend on the operator mapping out their DC, and assigning values to each "location"
18:36:50 dansmith cdent: separated by power and TOR switch
18:37:09 dansmith cdent: so two adjacent racks might share a power domain, but not TOR switch,
18:37:27 cdent dansmith: I understand why people want what you just described in terms of "power" and "TOR" but don't see how that is a "distance of 2"
18:37:28 dansmith so two away would mean not adjacent at the next level up in separation
18:37:45 cdent so "2" is something the operator is defining?
18:37:46 dansmith cdent: it's a simpler way to accomplish the same thing
18:37:51 dansmith yeah
18:38:06 dansmith I think we said we'd try to work up some guidelines
18:38:19 dansmith that they could follow to try to have some sort of a uniform idea about said things,
18:38:25 edleafe dansmith: couldn't it be simplified to "not in the same power domain"?
18:38:42 dansmith but at the end of the day, it'll come down to your layout
18:39:24 dansmith edleafe: sure, but then you start providing the "not power domain and not network domain and not cooling domain", and distance is a simpler way to describe relative closeness of two thngs
18:40:15 edleafe dansmith: I'm not following. Are those domains nested?
18:40:19 dansmith I believe that was jaypipes' original intent, to provide a way to use a simple metric for such things instead of requiring the user to know about and upload a full map
18:40:42 dansmith edleafe: in my example yeah
18:41:32 edleafe dansmith: ok, so that could be simplified to "not in the outermost grouping I care about", right?
18:41:48 openstackgerrit Mark Goddard proposed openstack/nova master: Don't JSON encode instance_info.traits for ironic https://review.openstack.org/543574
18:42:14 dansmith edleafe: well, that's not the outermost group
18:42:27 dansmith because you'd still have potentially room, building, site, region, etc
18:42:37 edleafe dansmith: of course
18:43:05 dansmith we could define the way people have to nest things (i.e. TOR is always smaller scope than power) but that won't fly of course
18:43:07 edmondsw mriedem I just added the queens-rc-potential tag to https://bugs.launchpad.net/nova/+bug/1748950
18:43:10 edleafe dansmith: you would define these groupings by what you care about as far as affinity is concerned
18:43:10 openstack Launchpad bug 1748950 in OpenStack Compute (nova) "PowerVM driver passing bad kwargs into Task init method" [Undecided,In progress] - Assigned to Eric Berglund (esberglu)
18:43:39 mriedem edmondsw: how did this not fail CI?
18:43:42 dansmith yeah, we could totally add a way to define the groupings, and a complex way to say which things you do and don't care about
18:43:59 dansmith all I'm saying is that distance as a simple metric to abstract that is pretty straightforward
18:44:03 edmondsw mriedem it only happens if you have non-ascii characters in the instance
18:44:03 edleafe dansmith: or we could add a simple way to say that
18:44:05 mriedem edmondsw: oh i see, unicode
18:44:32 edmondsw mriedem it actually did cause a log error in CI which is how we noticed it, on update_server_name
18:44:43 edmondsw but didn't fail the test
18:44:50 edmondsw was just on cleanup
18:45:25 mriedem is there no way to have a test for this fix?
18:46:54 edmondsw mriedem yeah, good point... I'd asked esberglu to look at test but then had a brain fart when reviewing I guess
18:47:27 mriedem pew
18:48:29 openstackgerrit Matt Riedemann proposed openstack/nova-specs master: Re-propose use Neutron's new port binding API https://review.openstack.org/543578
18:50:31 mriedem efried: want to re-propose this for rocky? https://review.openstack.org/#/c/505209/
18:51:48 openstackgerrit Dan Smith proposed openstack/nova master: Drop compute RPC 4.x compatibility https://review.openstack.org/543580
18:52:35 jaypipes dansmith, mriedem: https://etherpad.openstack.org/p/going-the-distance has ideas about the distance concept...
18:52:48 mriedem nice pad name
18:53:26 mriedem dansmith: you want to -W that rpc change until we release so someone doesn't accidentally merge it?
18:53:52 dansmith mriedem: rc1 is tagged so we're good no?
18:54:21 mriedem i don't know if we'll have something that requires a backport before GA
18:54:39 dansmith I'm going to argue against that really hard,
18:54:42 openstackgerrit Merged openstack/nova master: doc: mention that --on-shared-storage is not needed with nova evacuate https://review.openstack.org/542512
18:54:47 dansmith but also, it won't invalidate this
18:54:48 mriedem granted backporting an rpc change for rc2 would be..
18:54:54 dansmith but no crazy rush so that's fine
18:55:08 openstackgerrit Merged openstack/nova master: Update reno for stable/queens https://review.openstack.org/542658
18:59:12 esberglu edmondsw: What's the best way to test this? I can assert that the __init__ methods are being passed the right args
18:59:29 edmondsw esberglu autospec?
19:04:11 openstackgerrit Matt Riedemann proposed openstack/nova-specs master: Add z/VM Driver in Rocky https://review.openstack.org/536186
19:06:28 openstackgerrit Merged openstack/nova-specs master: Modify grammatical errors https://review.openstack.org/541765
19:15:58 mriedem melwitt: need to re-propose https://review.openstack.org/#/c/500975/ for rocky
19:19:29 openstackgerrit Mark Goddard proposed openstack/nova master: Unplug all VIFs from ironic nodes during tear down https://review.openstack.org/537626
19:25:47 mriedem jianghuaw: remember to bring this bp up during the nova meeting at some point (after the holiday at this point) https://blueprints.launchpad.net/nova/+spec/xenapi-image-handler-option-improvement
19:26:32 mgoddard mriedem: I've just seen your ML email about backports. Would https://bugs.launchpad.net/nova/+bug/1748942 qualify? The fix is simple, and limited to the ironic virt driver
19:26:33 openstack Launchpad bug 1748942 in OpenStack Compute (nova) "Ironic virt driver should not JSON encode traits in instance_info" [Undecided,In progress] - Assigned to Mark Goddard (mgoddard)
19:26:57 mgoddard mriedem: fix is this: https://review.openstack.org/#/c/543574/1
19:27:49 mriedem mgoddard: so traits-based scheduling with ironic+nova doesn't work without this fix?
19:28:27 mriedem or what is instance_info.traits used for?
19:28:36 mriedem i thought that was something to do with the capabilities filter in nova

Earlier   Later