Earlier  
Posted Nick Remark
#openstack-nova - 2018-05-17
13:43:50 efried ?
13:43:50 efried compute_provider_additional_traits = CUSTOM_FOO, CUSTOM_BAR
13:43:50 efried belmoreira: You're suggesting a config option like
13:44:06 mriedem yes, and i don't think we should do that
13:44:07 belmoreira efried yes
13:44:10 dansmith you'd have to have a negative as well so you could ever remove traits you had previously set
13:44:13 mriedem it makes nova a proxy,
13:44:15 dansmith mriedem: agree
13:44:23 mriedem and blocks everyone on nova supporting this thing
13:44:28 mriedem when you can already do it external to nova
13:44:34 efried belmoreira: yes, I agree with mriedem and dansmith.
13:44:47 mriedem i already don't really care for the ironic trait proxy stuff we do
13:45:02 belmoreira my issue is how to manage all this things at scale
13:45:28 efried belmoreira: You would be editing config files, one per host, in any case.
13:45:40 mriedem your config mgmt tool is already doing the logic to put the custom traits in the specific compute host config file yes?
13:45:41 efried belmoreira: Rather than doing that, run a placement CLI once per host.
13:45:47 belmoreira a configuration management tool doing API calls doesn't looks good to me
13:45:56 mriedem why can't that same code just put the traits in placement once nova-compute is running and the rp is registered?
13:46:15 mriedem belmoreira: how do you create keystone endpoints?
13:46:25 mriedem and users/projects
13:46:38 efried Are you equating "API calls" with invoking CLIs?
13:47:07 mriedem openstack-ansible does all of this quite a bit i think
13:47:13 mriedem that's how they do the cells v2 setup
13:47:24 mriedem it's really the only way since we don't have rest apis for cell and host mappings
13:47:55 belmoreira mriedem is true for keystone. We built our own machinery to create/delete projects. And the experience is not great
13:49:36 belmoreira efried: no. The problem is given credentials to a configuration management tool to populate these properties
13:50:19 belmoreira changing configuration files is much easier and less worrying
13:54:20 openstackgerrit Matt Riedemann proposed openstack/osc-placement master: Fix error message asserts in functional test https://review.openstack.org/569048
13:54:21 openstackgerrit Matt Riedemann proposed openstack/osc-placement master: Resource class set (v1.7) https://review.openstack.org/514644
13:54:22 openstackgerrit Matt Riedemann proposed openstack/osc-placement master: Usages per project and user (v1.8, v1.9) https://review.openstack.org/514646
13:54:23 openstackgerrit Matt Riedemann proposed openstack/osc-placement master: CLI allocation candidates (v1.10) https://review.openstack.org/514647
13:54:24 openstackgerrit Matt Riedemann proposed openstack/osc-placement master: New dict format of allocations (v1.11, v1.12) https://review.openstack.org/542819
13:54:25 openstackgerrit Matt Riedemann proposed openstack/osc-placement master: Transactionally update allocations (v1.13) https://review.openstack.org/546674
13:54:26 openstackgerrit Matt Riedemann proposed openstack/osc-placement master: Add nested resource providers (v1.14) https://review.openstack.org/546675
13:54:27 openstackgerrit Matt Riedemann proposed openstack/osc-placement master: Limit allocation candidates (v1.15, v1.16) https://review.openstack.org/548043
13:54:28 openstackgerrit Matt Riedemann proposed openstack/osc-placement master: Allocation candidates parameter: required (v1.17) https://review.openstack.org/548326
13:54:53 mriedem gibi: https://review.openstack.org/#/c/514644/ should be ready to go now
13:55:19 openstackgerrit Yikun Jiang (Kero) proposed openstack/nova master: Add policy to InstanceGroup object and api models. https://review.openstack.org/563375
13:55:20 openstackgerrit Yikun Jiang (Kero) proposed openstack/nova master: Add policy field to ServerGroup notification object https://review.openstack.org/563401
13:57:08 gibi mriedem: done
13:57:18 mriedem yay
13:57:58 melwitt nova meeting in 3 min
14:09:17 openstackgerrit Sylvain Bauza proposed openstack/nova-specs master: Proposes Multiple GPU types https://review.openstack.org/557065
14:17:13 mriedem tssurya: check the max_attempts config option, if it's 1 then we shouldn't be calculating alternate hosts in the scheduler
14:17:23 mriedem and belmorei_ said in boston that cern doesn't do retries
14:17:41 dansmith mriedem: well, let me just hand you my thunder then
14:18:28 mriedem tssurya: dansmith reminded me that max_attempts=1 means no retries and dansmith reminded me that belmorei_ said in boston that cern doesn't do retries
14:18:40 dansmith haha
14:20:44 belmorei_ mriedem: correct :) we have max_attempts=1
14:21:31 dansmith so if it's trying to get alternates in that case, it's probably a bug
14:22:28 mriedem yeah need to figure that part out, although i thought edleafe added unit tests for that scenario to assert that we didn't try calculating alternates if max_attempest=1
14:22:36 mriedem tempest on the brain
14:23:01 dansmith ah,
14:23:08 dansmith max_attempts grabs one alternate it looks like
14:23:15 dansmith instead of max_attempts-1 ?
14:24:06 dansmith https://github.com/openstack/nova/blob/master/nova/scheduler/filter_scheduler.py#L161-L161
14:24:16 edleafe num_alts = CONF.scheduler.max_attempts if return_alternates else 0
14:24:36 edleafe so yeah, it will return 1 alternate with max_attempts=1
14:24:52 dansmith which is wrong
14:25:20 mriedem arvindn05: how are you coming on that traits-in-images + rebuild patch?
14:25:38 dansmith we also would do too much extra work if num_alts is zero
14:26:06 dansmith belmorei_: tssurya: if you can confirm that with max_attempts the scheduler is asking for one extra alternate that would be good
14:26:29 dansmith would mean about an exact doubling of placement and filter load I guess
14:26:42 mriedem shouldn't be any more placement load,
14:26:44 mriedem just filtering
14:26:58 mriedem the alternates are pulled from the compute node list we get after placement allocation candidates are retrieved
14:26:59 dansmith it asks placement again doesn't it?
14:27:07 mriedem not for new allocation candidates
14:27:09 edleafe alternates only get re-filtered when building > 1 instance per request
14:27:10 mriedem or it shouldn't...
14:27:19 belmorei_ dansmith: will do
14:27:23 dansmith mriedem: okay
14:29:09 mriedem there are some unit tests setting max_attempts to 1 but i'm having a hard time seeing what they assert
14:29:28 mriedem probably just need a simple tests where max_attempts=1, single instance in the request, and make sure we don't mess with alternate calculation
14:29:34 mriedem *test
14:29:42 openstackgerrit Stephen Finucane proposed openstack/nova-specs master: Rename spec to match blueprint https://review.openstack.org/568870
14:29:43 openstackgerrit Dan Smith proposed openstack/nova master: WIP: Fix interpretation of max_attempts for scheduling alternates https://review.openstack.org/569127
14:29:48 mriedem dansmith: want to keep this backport train a comin https://review.openstack.org/#/c/568369/
14:29:51 dansmith belmorei_: tssurya ^ is what I expect we'll do
14:30:00 dansmith *we'll need
14:30:05 belmorei_ this is an interesting issue. We get in average 20s for scheduling... We are debugging and let you know when we have more info
14:30:27 dansmith 20s to schedule one? that's.. uh, terrible
14:33:49 melwitt yeah ...
14:37:01 openstackgerrit Eric Fried proposed openstack/nova master: libvirt: get_inventory => update_provider_tree https://review.openstack.org/560444
14:37:02 openstackgerrit Eric Fried proposed openstack/nova master: libvirt: Don't report DISK_GB if sharing https://review.openstack.org/560459
14:37:03 openstackgerrit Eric Fried proposed openstack/nova master: WIP: Normalize inventory from update_provider_tree https://review.openstack.org/569132
14:37:18 efried bhagyashris_: ^
14:42:49 dansmith belmorei_: tssurya: something else to maybe look at.. by default we ask for 1000 placement results on each schedule, which is probably insane
14:43:04 dansmith you might try tweaking down max_placement_results to see if that makes a difference
14:43:12 dansmith depending on where you see the hotspot is
14:43:48 belmorei_ in our case that shouldn't happen because we use the request_filter
14:44:10 dansmith what do you mean?
14:44:20 dansmith you mean because you're limiting to a cell with only 200 hosts?
14:44:32 belmorei_ the request_filter to use placement_aggregates
14:44:42 dansmith yeah, okay
14:45:04 dansmith well, still, on an empty cell you'd get back the whole cell, but fair enough
14:45:10 mriedem are the compute node resource providers in placement within aggregates?
14:45:24 mriedem in other words, are you getting back 200 allocation candidates or 10K?
14:45:24 dansmith mriedem: I think that's the implication :)
14:45:37 mriedem sure but have they asserted that's all linked up properly

Earlier   Later