| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2017-09-07 | |||
| 18:46:29 | Nisha_Agarwal | mriedem, no :( thats why i want to leave a spec before PTG starts | |
| 18:46:34 | mtreinish | mriedem: it the intent of: https://github.com/openstack/nova/blob/master/tox.ini#L30 to only run that 1 test module? | |
| 18:46:40 | mtreinish | s/it/is/g | |
| 18:46:56 | mriedem | mtreinish: idk | |
| 18:47:03 | mriedem | it was added with the osprofiler stuff | |
| 18:47:31 | mtreinish | ok, because that test path doesn't do anything, and we've been running unit tests twice... | |
| 18:47:34 | mriedem | Nisha_Agarwal: it looks like dtantsur|afk has reviewed the spec at least | |
| 18:47:40 | Nisha_Agarwal | mriedem, yes | |
| 18:48:11 | mriedem | Nisha_Agarwal: does it fall under anything around L90 here? https://etherpad.openstack.org/p/nova-ptg-queens | |
| 18:48:14 | Nisha_Agarwal | mriedem, dtantsur|afk, wants that first we should solve the issue on the nova side before we fix on ironic side | |
| 18:48:53 | Nisha_Agarwal | mriedem, yes and no both | |
| 18:49:38 | Nisha_Agarwal | mriedem, yes in the sense that the topic is to avoid such ugly hack, but not with how nova supports the ironci node today | |
| 18:50:52 | mriedem | Nisha_Agarwal: ok can you add something under that "Ironic problems" section then and link in your spec? | |
| 18:51:12 | Nisha_Agarwal | mriedem, i was looking forward from the aspect that nova supports the 1. Multiple resource classes for ironic node. 2. Atleast the basic flavor inventroy should get scheduled from nova for ironic node, how it used to work before pike | |
| 18:51:47 | Nisha_Agarwal | mriedem, yes :) | |
| 18:52:15 | Nisha_Agarwal | mriedem, so on nova side both above points can be covered in single blueprint or u see them as two blueprints? | |
| 18:52:33 | Nisha_Agarwal | and hence one/two specs? | |
| 18:52:50 | mriedem | i don't understand the problem yet since i haven't dug into the spec, so i can't really say | |
| 18:53:22 | Nisha_Agarwal | mriedem, currently ironic node just gets scheduled based on custom resource class | |
| 18:53:59 | Nisha_Agarwal | and even basic inventory like ram, disk and cpus are not used for the ironic node scheduling | |
| 18:55:00 | Nisha_Agarwal | since nova now treats each of these resources as different resource class, hence ironic shud also support multiple resource class so that it can be used for scheduling by nova | |
| 18:55:42 | mriedem | right, be the instance in nova consumes the entire ironic node | |
| 18:55:59 | mriedem | that's why the min/max units are 1 | |
| 18:56:17 | Nisha_Agarwal | yes, i understand the resourceclass structure | |
| 18:56:35 | mriedem | sorry, i should say, the max unit is the full amount of whatever resource class on the node | |
| 18:56:50 | Nisha_Agarwal | thats what ironic should have for any resource it wants to use for scheduling IMO | |
| 18:57:21 | Nisha_Agarwal | yes, min is 1, max= total | |
| 18:57:34 | Nisha_Agarwal | and step-size shud also be as what is total | |
| 18:57:52 | Nisha_Agarwal | allocation ratio also 1:0 | |
| 18:58:30 | Nisha_Agarwal | if we have this kind of structure for ironic resource, then ironic resources can be claimed fully at the placement | |
| 18:59:40 | mriedem | right this https://github.com/openstack/nova/blob/master/nova/virt/ironic/driver.py#L801 | |
| 18:59:52 | mriedem | min/max/step/total/allocation are all 1 | |
| 19:00:21 | Nisha_Agarwal | mriedem, total and max should be the value of the resource | |
| 19:00:29 | Nisha_Agarwal | rest all shud be 1 | |
| 19:00:58 | Nisha_Agarwal | and if we schedule it from placement it can be fully claimed | |
| 19:01:01 | mriedem | ^ is for the custom resource class | |
| 19:01:17 | mriedem | total and max being the value of the resource is only for vcpus/ram/disk | |
| 19:01:28 | mriedem | https://github.com/openstack/nova/blob/master/nova/virt/ironic/driver.py#L769-L794 | |
| 19:01:52 | Nisha_Agarwal | mriedem, yes. i was looking for scheduling to happen based on vcpus/ram/disk | |
| 19:02:15 | mriedem | yeah i see the argument in the spec about not using the Exact filters | |
| 19:02:39 | Nisha_Agarwal | we have customers who in their production(not on master branch), use non-exact filter | |
| 19:02:50 | Nisha_Agarwal | for ironic node scheduling | |
| 19:03:41 | Nisha_Agarwal | with the custom resource class that scheduling doesnt happen | |
| 19:04:56 | Nisha_Agarwal | mriedem, thats the main reason we want atleast scheduling to happen for these resources. Eventually we would want to leverage the same resource class structure in ironic for any other quantitative resources | |
| 19:05:32 | Nisha_Agarwal | which cannot be handled by capabilities whenever they are deprecated and taken over by traits | |
| 19:06:43 | openstackgerrit | Merged openstack/nova master: Refactor out claim_resources_on_destination into a utility https://review.openstack.org/499718 | |
| 19:07:50 | mriedem | Nisha_Agarwal: so you're aware of these release notes in pike right? http://docs-draft.openstack.org/77/501477/1/check/gate-nova-releasenotes/1dc7513//releasenotes/build/html/unreleased.html#id2 | |
| 19:08:14 | Nisha_Agarwal | mriedem, yes. | |
| 19:08:48 | Nisha_Agarwal | but the same filter_scheduler could be used for scheduling ironic nodes as well, isnt it? | |
| 19:09:25 | openstackgerrit | Matthew Treinish proposed openstack/nova master: Set regex flag on ostestr command for osprofiler tests https://review.openstack.org/501842 | |
| 19:09:32 | Nisha_Agarwal | mriedem, s/filter_scheduler/enabled_filters | |
| 19:13:17 | mriedem | i think that depends on if you're using the IronicHostManager doesn't it? | |
| 19:14:10 | mtreinish | mriedem: it also looks like that second command breaks openstack-health. We're only capturing the subunit for the last run | |
| 19:14:20 | mtreinish | so we only ever track that one test: http://status.openstack.org/openstack-health/#/job/gate-nova-python27-ubuntu-xenial | |
| 19:14:54 | mriedem | guh | |
| 19:15:00 | mriedem | idk, what are other projects doing for the osprofiler test? | |
| 19:15:03 | mriedem | running it in a separate job? | |
| 19:15:12 | mtreinish | I have no idea | |
| 19:15:16 | mriedem | cinder doesn't run it | |
| 19:15:23 | mtreinish | oh, well that answers that | |
| 19:15:33 | mriedem | nor glance | |
| 19:15:35 | mriedem | i'm not sure why nova does | |
| 19:15:49 | Nisha_Agarwal | mriedem, yeah but could we configure that? | |
| 19:16:27 | Nisha_Agarwal | means IronicHostManager is not configurable IMO, and Nova use it for ironic nodes | |
| 19:16:33 | mriedem | Nisha_Agarwal: yes it looks like if use_baremetal_filters is False, which is the default, it uses the normal enabled_filters | |
| 19:16:50 | Nisha_Agarwal | mriedem, yes thats true. ^^ | |
| 19:17:07 | mriedem | and as of pike, enabled_filters no longer has ram/disk filters in there by default | |
| 19:17:07 | mtreinish | mriedem: should I just drop that from the tox.ini? | |
| 19:17:09 | mriedem | because of placement | |
| 19:17:51 | mriedem | idk, is DinaBelova around? | |
| 19:18:04 | Nisha_Agarwal | mriedem, even non-exact filters like RamFilter, CoreFilter, diskFilter are deprecated? | |
| 19:18:22 | mriedem | Nisha_Agarwal: those weren't deprecated, just removed from the default enabled_filters list for new installs | |
| 19:18:34 | mriedem | since they are redundant with placement | |
| 19:18:49 | Nisha_Agarwal | ok. that makes sense | |
| 19:19:28 | mtreinish | mriedem: if we need to keep it around I can switch nova over to stestr which would let us combine the results into a single subunit stream | |
| 19:19:40 | Nisha_Agarwal | but they are replaced with resource classes n schedulin still happen based on them | |
| 19:19:46 | mriedem | stestr is your testrepository fork? | |
| 19:19:59 | mtreinish | yeah | |
| 19:20:16 | mtreinish | we just switched ostestr over to use that internally which is how I found all of this | |
| 19:21:16 | mriedem | reading the note at the top of https://review.openstack.org/#/c/254703/60/nova/tests/unit/test_profiler.py i don't know if we could just make the osprofiler stuff run first or not | |
| 19:22:34 | mriedem | but whatever, if we need to combine results then yeah do whatever | |
| 19:23:10 | mtreinish | mriedem: I mean yeah we could swap the order too, you'd lose the capture on the osprofiler test, but that's much lower impact than losing all the unit tests | |
| 19:23:23 | mriedem | i don't care about the capture on that | |
| 19:23:30 | mriedem | but i'm not sure if swapping it causes problems | |
| 19:23:40 | mriedem | because it instruments the classes | |
| 19:24:12 | Nisha_Agarwal | mriedem, so if we want scheduling for non-exact filters we need the resource classes for disk/vcpus/ram in place | |
| 19:24:24 | Nisha_Agarwal | for ironic nodes too | |
| 19:24:42 | mtreinish | mriedem: it sholud be isolated between runs because python exits after the tests run | |
| 19:24:55 | mtreinish | things definitely fail if you run all the tests with OS_PROFILER set to true | |
| 19:25:18 | mriedem | Nisha_Agarwal: "if we want scheduling for non-exact filters" is the major question | |
| 19:25:33 | mriedem | and it's been my limited understanding that is not what people have wanted long-term | |
| 19:25:42 | Nisha_Agarwal | mriedem, Atleast thats done in customers env | |
| 19:26:10 | mriedem | i'm really not the best person to talk about this though, it was jroll before and dtantsur|afk now, plus people running ironic deployments | |
| 19:26:35 | mriedem | Nisha_Agarwal: it would be interesting to know how many operators are running w/o the exact filters | |
| 19:26:39 | mriedem | and why | |
| 19:26:43 | mriedem | like, in the operators ML | |
| 19:27:48 | Nisha_Agarwal | ironic team says nova should agree to make changes for all this then its fine to do corresponding changes in ironic | |
| 19:28:29 | Nisha_Agarwal | mriedem, i cannot get such list but i do know one customer atleast(cannot name the customer) who does have such env | |
| 19:28:44 | mriedem | Nisha_Agarwal: can you start a thread about this in the openstack-operators mailing list? | |
| 19:28:51 | Nisha_Agarwal | and they just have ironic nodes in their datacenter | |