Earlier  
Posted Nick Remark
#openstack-nova - 2017-03-21
13:22:10 openstackgerrit Stephen Finucane proposed openstack/nova master: Refactor: remove _items() in nova/api/openstack/compute/attach_interfaces.py https://review.openstack.org/447698
13:22:32 openstackgerrit Stephen Finucane proposed openstack/nova master: Add description to policies in agents.py https://review.openstack.org/445208
13:24:07 sfinucan sdague: Could you take a look at https://review.openstack.org/#/c/430909/ and successors when possible, please?
13:24:40 sdague sfinucan: why are you making a change like this - https://review.openstack.org/#/c/430717/6/nova/conf/netconf.py ?
13:25:10 sfinucan sdague: It makes the addition of deprecated lines easier for me
13:25:23 sdague why?
13:25:25 sfinucan plus, there's precedent for making everything in '/conf' ultra-consistent
13:25:34 sfinucan I can simply bulk copy-paste
13:27:10 sfinucan but the "making everything in /conf ultra-consistent" is big enough. I've enough of those done that the little differences between each start to get annoying, heh
13:27:24 mriedem jroll: yeah good catch, _compute_node_to_inventory_dict in the old flow hardcodes min_unit to 1
13:27:33 bauzas EmilienM: mriedem: I'm around to help, could you please tell me the current situation ?
13:27:43 mriedem bauzas: jroll is working on the change
13:28:11 jroll bauzas: read bug 1674236
13:28:11 openstack bug 1674236 in tripleo "CI / promotion: Nova isn't aware of the nodes that were registered with Ironic" [Critical,Triaged] https://launchpad.net/bugs/1674236
13:28:26 sdague sfinucan: honestly, that's kind of exactly the whitespace over eagerness that we stopped doing a couple of years ago. We made E12* non enforcing for a reason.
13:29:10 sfinucan yup, I'd completely agree...outside of '/conf'
13:29:37 sdague no, anyway, we don't want different rules in different places
13:29:46 sfinucan I want to enforce the "consistency is key" mindset in there, in the hopes that it will deliver consistency in the end result
13:29:52 sfinucan which, for the most part, it has been doing
13:30:42 sdague well, I disagree that over prescribed code indentation really impacts useful end user docs :)
13:31:01 sfinucan but it does describe people's mindsets going in there
13:32:05 sfinucan Also, I've done enough of work with that aspect of nova to surely justify the benefit of the doubt
13:33:23 bauzas jroll: mriedem: okay, gaining context :)
13:33:31 sdague I fought really hard against the whitespace wars in the past of people being overly prescriptive, I'm not really interested in bringing that mindset back for any reason
13:35:40 openstackgerrit Jim Rollenhagen proposed openstack/nova master: Ironic: hardcode min_unit for standard resources to 1 https://review.openstack.org/448098
13:36:09 jroll EmilienM: cdent: bauzas: this should definitely fix the bug, trying to figure out now if I need to change allocations code as well so we don't schedule two (undersubscribed) instances to one node
13:36:33 EmilienM jroll: would you recommend us to change something in tripleo also?
13:37:06 jroll EmilienM: well, I believe flavors should always exactly match nodes, but tripleo not doing that is a "feature", so I'd leave it alone
13:37:19 EmilienM ok
13:37:26 EmilienM jroll: thank you!
13:37:40 jroll np :)
13:37:54 EmilienM jroll: I'm going to try this one
13:38:11 jroll EmilienM: thanks
13:40:15 EmilienM jroll: https://review.openstack.org/#/c/447522/ - I'll let you know how it foes
13:40:17 EmilienM goes*
13:41:31 jroll thanks
13:41:54 bauzas EmilienM: jroll: okay, beginning to review https://review.openstack.org/#/c/448098/ FWIW
13:43:00 EmilienM bauzas: thx
13:44:02 bauzas jroll: oh, excellent catch on https://review.openstack.org/#/c/448098/1/nova/virt/ironic/driver.py
13:44:38 jroll bauzas: yeah, was fun
13:44:43 bauzas I think it's a situation where the scheduler is still needed until we implement all the features per the placement engine
13:44:47 jroll we are going to have to change how we do allocations here though :(
13:45:21 bauzas jroll: why so ? you're telling placement to accept returning RPs that have more resources
13:45:25 bauzas jroll: ah I see
13:45:33 jroll :P
13:45:41 bauzas jroll: so you would create an allocation that would eat all the left resources ?
13:45:41 jroll yeah, we don't want to leave free resources there
13:45:56 bauzas yeah, I honestly thought it was already the case
13:46:06 jroll bauzas: maybe. or hack instance.flavor to eat everything
13:46:10 bauzas an ironic allocation is free-or-none
13:46:13 cdent so does this mean we need yet more special casing?
13:46:33 mriedem jroll: did you run functional tests?
13:46:43 bauzas jroll: well, operators defined flavors that weren't really meaning this or that number of resource usage
13:46:48 mriedem jroll: i think there is a functional RT test that will fail
13:46:51 jroll bauzas: right, we have code that does this in our virt driver, but the RT decides we're wrong
13:47:05 jroll mriedem: there probably is, I haven't looked at them
13:47:13 jroll nor ran
13:47:13 bauzas jroll: we could tho tell them to add an extra spec that would signal 'eat me all the cake'
13:47:20 bauzas I mean a trait
13:47:28 mriedem that's not a trait
13:47:36 bauzas a what then ?
13:47:37 mriedem that's like a config option
13:47:41 jroll 'indivisible' is a trait :P
13:48:08 jroll cdent: yes, somewhere. unclear (to me) where
13:48:11 mriedem i guess i need to read the traits spec on the definition
13:48:15 bauzas VCPU=5&MEM_GB=1&eat_me_all_thecake ?
13:48:27 jroll mriedem: I'm mostly joking :)
13:49:12 bauzas jroll: that said I'm concerned we could merge https://review.openstack.org/#/c/448098/1/nova/virt/ironic/driver.py without modifying allocations that would allow to pick the same ironic node for two instances
13:49:42 jroll bauzas: I mean, I can WIP it, I just put it up for now so EmilienM could test and such
13:49:42 bauzas jroll: I do wonder if fixing ironic allocations shouldn't be merged first
13:50:01 bauzas jroll: well, it's a race
13:50:07 bauzas jroll: so the CI could be happy tho
13:50:24 jroll bauzas: let me be clear, I don't want this merged without fixing allocations as well
13:50:36 bauzas a-ah ok, then I agree
13:50:46 jroll bauzas: and if tripleo can boot at least one instance, it's progress
13:50:55 jroll or rather proves that was the issue
13:51:24 bauzas jroll: AFAIK, the Exact* filters are not default in config right?
13:51:32 bauzas jroll: speaking of the IronicHostManager config
13:51:39 bauzas I can verify
13:51:48 bauzas but I'm pretty sure TripleO hasn't modified that
13:52:12 jroll bauzas: it is a default, I think, if CONF.filter_scheduler.use_baremetal_filters=true
13:52:35 bauzas jroll: I know we don't have the same enabled filters if that conf opt is in use, yep
13:52:49 bauzas jroll: I just don't remember if the Exact* filters are part of those
13:52:56 jroll yeah, confirmed, it isn't default but is part of the baremetal set
13:53:04 jroll conf/scheduler.py line 298
13:54:20 bauzas jroll: so then the scheduler should get the exact same number of nodes with or without that fix you wrote
13:54:32 bauzas oops
13:54:41 bauzas the scheduler should *return*
13:55:00 bauzas but lemme see the 3O config
13:55:17 jroll bauzas: http://logs.openstack.org/22/447522/1/check-tripleo/gate-tripleo-ci-centos-7-ovb-nonha/7563947/logs/etc/nova/nova.conf.txt.gz
13:55:20 bauzas yup
13:55:21 jroll use_baremetal_filters=False
13:55:41 bauzas EmilienM: is the above the undercloud nova.conf ?
13:55:56 mriedem bauzas: jroll's fix isn't any different from how it worked before get_inventory was added
13:55:59 mriedem unless i'm missing something
13:56:07 mriedem so if you're worried about an allocation bug, it's latent
13:56:34 bauzas mriedem: jroll's fix tries to address the fact that operators could ask the scheduler to return hosts that have more space than asked
13:56:53 jroll mriedem: hm, you might be right
13:56:53 EmilienM bauzas: yes
13:57:08 bauzas okay, so the problem is there

Earlier   Later