| Posted | Nick | Remark | |
|---|---|---|---|
| #openstack-nova - 2017-01-18 | |||
| 16:31:03 | cdent | EmilienM, bauzas: I'll say again: [t 43Pk] | |
| 16:31:03 | purplerbot | <cdent> I wonder if the problem here is that we don't understand well enough how keystoneauth1 is working, and thus the pathways to that exception we are seeing may be more complex than we know? [2017-01-18 16:26:39] [n 43Pk] | |
| 16:31:47 | bauzas | cdent: well, I agree with you on the point that EndpointNotFound is kinda obscure to me | |
| 16:32:01 | bauzas | cdent: I'm supposing that keystone failed finding the endpoint | |
| 16:32:14 | bauzas | but the endpoint can be / | |
| 16:32:21 | sdague | bauzas: it's not that keystone failed | |
| 16:32:21 | cdent | it happens at two different places in the keystoneauth1 stack | |
| 16:32:29 | cdent | once when actually making a request and filtering the results | |
| 16:32:35 | melwitt | mriedem: I think if something in compute queried cell mapping through the object, it would go through conductor and be able to read from the api db | |
| 16:32:35 | cdent | but also when trying to construct a url | |
| 16:32:35 | bauzas | sdague: I'm all ears :) | |
| 16:32:46 | sdague | it's that the resolution of the endpoint from the token ended up with something unknown | |
| 16:33:16 | bauzas | a-ha | |
| 16:34:54 | bauzas | sdague: I don't see any problem with http://paste.openstack.org/show/H7pXYOKWuBjQROqkZjQm/ | |
| 16:35:02 | mriedem | melwitt: hmm, so like, list cell mappings, if one, get that one and register a host with it? | |
| 16:35:12 | mriedem | s/a host/my host/ | |
| 16:35:15 | bauzas | sdague: except the fact that they call http://ip:8778/placement | |
| 16:35:16 | cdent | sdague: by "resolution" do you mean looking at what's at the endpoint, for finding the endpoint in what's in the token? | |
| 16:35:32 | cdent | s/for finding/or finding/ | |
| 16:35:34 | bauzas | I thought the latter | |
| 16:36:48 | sdague | cdent: it's looking through the token | |
| 16:37:00 | sdague | the end point information isn't an api call | |
| 16:37:05 | sdague | it's all embedded in the token | |
| 16:37:38 | melwitt | mriedem: it seems like that would work. technically it would be two cell mappings because of cell0 | |
| 16:38:46 | mriedem | melwitt: true, so list cell mappings, exclude cell0 by uuid, and if one left, register with it | |
| 16:39:31 | mriedem | melwitt: i'm not sure why we didn't think of just auto-registering that way, unless we wanted to auto-register in a more generic way for the multi-cell case | |
| 16:39:47 | melwitt | mriedem: I think so | |
| 16:40:09 | mriedem | but it seems we could do the simple thing for now and hit most small/medium deployment scenarios that don't have any cells today | |
| 16:40:20 | mriedem | idk | |
| 16:40:24 | mriedem | just thinking of options | |
| 16:40:47 | mriedem | melwitt: not sure if you saw the discussion here https://review.openstack.org/#/c/420981/ | |
| 16:41:24 | melwitt | mriedem: yeah, I dunno the history on the auto-register stuff. it's not straightforward for multi-cell because of the need for a "staging cell" and then a command to re-map something. for single-cell, I didn't know what the original plan was | |
| 16:41:55 | melwitt | I saw you refer to alaski's patch from some weeks ago, but I hadn't looked at it before | |
| 16:42:03 | cdent | EmilienM, bauzas: so, where are we? | |
| 16:42:18 | EmilienM | I'm currently in the matrix reading tripleo logs | |
| 16:42:18 | bauzas | honestly, I'm puzzled | |
| 16:42:30 | mriedem | melwitt: yeah i was looking at it this morning, n-cpu does a new rest api call to n-api to register it's host with a cell mapping | |
| 16:42:45 | bauzas | I'm trying to compare the req-id in nova and match it in the keystone logs | |
| 16:42:46 | mriedem | but there are some parts in there about storing the parent cell uuid in the main db for some reason | |
| 16:42:56 | sdague | mriedem: is there a reason the conductor can't just do that? | |
| 16:43:05 | mriedem | sdague: that's what melwitt and i are talking about | |
| 16:43:13 | sdague | mriedem: I'm not sure I get why n-cpu needs to make an n-api call | |
| 16:43:14 | sdague | ok | |
| 16:43:35 | melwitt | yeah, I thought it could just go through conductor via objects | |
| 16:44:04 | sdague | ok, got to run to lunch, biab | |
| 16:45:33 | cdent | mriedem, sdague, bauzas: if this merges, all the functional tests pass in python35: https://review.openstack.org/#/c/421529/ | |
| 16:45:34 | bauzas | cdent: EmilienM: FWIW, I'll need to drop very soon, I have a meetup to go | |
| 16:45:59 | mriedem | so in the short-term i probably need to just look at making devstack-gate call back into the primary node at the end of the setup (before tempest) to call discover_hosts instead of doing this https://review.openstack.org/#/c/420981/ | |
| 16:47:10 | melwitt | ah, I see | |
| 16:47:11 | mriedem | +W | |
| 16:47:33 | cdent | thanks bauzas and mriedem . dims we have arrived in the future. | |
| 16:47:51 | mriedem | melwitt: yeah so sean's main point is that my patch relies on the fact that it sets up the computes after the controller (i think) | |
| 16:48:00 | mriedem | as in i think that's the main point | |
| 16:48:12 | melwitt | right | |
| 16:48:48 | mriedem | regardless of whether or not i can rely on the db connection in nova.conf, because DATABASE_HOST is still on the subnode when it's setup so i could build my own one-off nova.conf for running discover_hosts if i wanted, | |
| 16:48:49 | bauzas | cdent: EmilienM: humpf, nothing looks wrong when I see the keystone logs http://logs.openstack.org/66/421366/1/check/gate-puppet-openstack-integration-4-scenario004-tempest-centos-7/f138bcc/logs/apache/keystone_wsgi_main_access_ssl.txt.gz | |
| 16:48:55 | mriedem | but i think that defeats the point he's making | |
| 16:49:06 | bauzas | cdent: EmilienM: but I can't introspect the token | |
| 16:49:15 | bauzas | so, honestly, I'm really stuck | |
| 16:50:37 | melwitt | mriedem: oh, to get to the db regardless of whether the controller is up yet? yeah | |
| 16:51:02 | dims | cdent : yay :) | |
| 16:51:15 | openstackgerrit | Anusha Unnam proposed openstack/nova: Add keypairs field to InstancePayload https://review.openstack.org/419730 | |
| 16:52:40 | mriedem | melwitt: right. i mean i'm not sure how many deployments actually setup computes first. | |
| 16:53:32 | melwitt | mriedem: yeah. we didn't, computes were last/parallel after controllers | |
| 16:54:21 | openstackgerrit | Sujitha proposed openstack/nova: Adding auto_disk_config field to InstancePayload https://review.openstack.org/419185 | |
| 17:00:11 | openstackgerrit | Matt Riedemann proposed openstack/nova: DNM: Test interface attach/detach for Ironic https://review.openstack.org/421638 | |
| 17:03:31 | mriedem | why god does this fail functional tests on newton but is no different from the change on master https://review.openstack.org/#/c/416760/ | |
| 17:03:38 | mriedem | why hast thou forsaken my backport | |
| 17:03:46 | _gryf | bauzas, cdent, EmilienM, does any of you was able to reproduce/isolate that error on devstack? I was spent some time yesterday, but without any luck | |
| 17:04:04 | bauzas | _gryf: which error ? | |
| 17:04:14 | bauzas | the one we discussed above? | |
| 17:04:22 | alaski | mriedem: the reason for the cell_info is that a compute does not know what cell it is in. But it is configured to use a specific db. So it queries the db it knows about for its cell, then calls to the API and says "hey, I'm a compute in cell 'foo', register me" | |
| 17:04:25 | _gryf | bauzas, yes | |
| 17:04:32 | bauzas | _gryf: nope | |
| 17:04:39 | _gryf | bummer | |
| 17:04:59 | alaski | mriedem: that avoids the api cell from needing to go through and discover the new host | |
| 17:05:17 | _gryf | I'll try to investigate it further anyway | |
| 17:09:31 | mriedem | alaski: so that's plumbed into discover_hosts here https://review.openstack.org/#/c/369634/1/nova/cmd/manage.py@1530 in the case that the compute_nodes list is empty? | |
| 17:09:53 | mriedem | i.e. if compute_nodes then we create the host mappings for them in discover_hosts, if not we provide the info into the cell db to auto-register itself when it creates the compute node | |
| 17:10:19 | gabor_antal | Hey there, can I have a question? In kilo, there was a config flag name "allow_migrate_to_same_host". But in liberty (and since then) it is disappeared. Why it was removed? How can I get something like that nowadays for testing? | |
| 17:10:51 | mriedem | gabor_antal: allow_resize_to_same_host | |
| 17:11:21 | alaski | mriedem: it wasn't fully fleshed out, but it was written under the assumption that discover_hosts would be run once per cell to set it up and then after that auto-registration would happen. | |
| 17:11:42 | alaski | mriedem: if auto-registration is the path forward finding a way to avoid the initial discover_hosts would be preferable | |
| 17:11:53 | gabor_antal | mriedem: thanks, checking that out. | |
| 17:12:13 | mriedem | alaski: yeah we were talking about a simple auto-register in the single-cell case, which most deploys will be at first in ocata | |
| 17:12:33 | mriedem | alaski: since we know that besides cell0, if there is just a single cell, it's the one we want the host mapping in when creating a compute node record | |
| 17:13:15 | mriedem | alternatively we could mark a specific cell as the 'default' cell or 'staging' cell or something like that | |
| 17:13:19 | mriedem | which new computes show up in | |
| 17:14:06 | mriedem | anyway with <2 weeks to FF auto-registration is probably not going to happen this release anyway so i should probably stop thinking about it | |
| 17:14:06 | melwitt | when you say that, it makes me think we'd need a list_cells_and_hosts that shows what hosts are mapped to what cells | |
| 17:14:31 | cdent | mriedem: I've got a few cycles to poke at https://review.openstack.org/#/c/416760/ if you like? | |
| 17:14:34 | alaski | mriedem: yeah, there's a fair amount to consider to get this done | |
| 17:14:50 | mriedem | melwitt: i think we could just do like a nova-manage cell_v2 list_hosts or something that shows which cell each host is in, and vice-versa | |
| 17:14:52 | alaski | melwitt: that seems generally useful anyways | |
| 17:15:03 | mriedem | cdent: go nuts | |
| 17:15:10 | cdent | jfak;fjdasopvicu9v8 | |
| 17:15:12 | mriedem | cdent: i suspect i'm just missing something before that backport | |
| 17:15:20 | melwitt | mriedem: yeah | |
| 17:15:31 | mriedem | cdent: but i can recreate this locally http://logs.openstack.org/60/416760/1/check/gate-nova-tox-db-functional-ubuntu-xenial/f192837/testr_results.html.gz | |
| 17:15:52 | cdent | k | |