Earlier  
Posted Nick Remark
#openstack-nova - 2017-04-03
17:39:03 sdague mriedem: great
17:48:25 openstackgerrit Rodolfo Alonso Hernandez proposed openstack/nova master: Read Neutron port 'binding_profile' during boot https://review.openstack.org/449257
18:21:01 tjones mriedem: one of my guys want to work on https://review.openstack.org/#/c/402256 but we cannot restore it. does the owner have to restore? I thought we could take it over
18:24:51 ildikov mriedem: would the Cinder Nova meeting work for an hour earlier (1600 UTC) on Thursdays?
18:25:25 mriedem tjones: i've restored it
18:25:32 mriedem ildikov: for me yes
18:25:44 ildikov mriedem: cool, tnx
18:30:08 clarkb tjones: any core or the owner can restore
18:41:38 openstackgerrit Chris Dent proposed openstack/nova master: Optional separate database for placement API https://review.openstack.org/362766
18:44:20 openstackgerrit Simon Dodsley proposed openstack/nova-specs master: Enhanced KVM Storage QoS https://review.openstack.org/340168
18:46:16 openstackgerrit Simon Dodsley proposed openstack/nova-specs master: Enhanced KVM Storage QoS https://review.openstack.org/340168
18:56:36 openstackgerrit Matt Riedemann proposed openstack/nova-specs master: List instances using Searchlight (spec) https://review.openstack.org/441692
18:56:37 mriedem sdague: there you go ^
18:58:06 openstackgerrit Simon Dodsley proposed openstack/nova-specs master: Enhanced KVM Storage QoS https://review.openstack.org/340168
19:14:45 mordred mriedem, sdague: SO - over the weekend I was working on replacing the create server snapshot image call in shade with pure-rest - and I discovered that the value that nova returns in the header is wrong on at least 1 public cloud - but nobody has likely noticed because novaclient doesn't directly use the url returned, instead it pops the id off the end and uses that
19:14:56 mordred I'm fairly certain there is at least one bug somewhere
19:15:09 mordred but I'm not 100% sure in what, or where to file it
19:15:28 sdague mordred: can you be more specific about which cloud, and in what way it is wrong?
19:15:32 mordred yes!
19:15:39 sdague so we could at least narrow down where the disconnect is
19:17:09 mriedem talking about https://developer.openstack.org/api-ref/compute/?expanded=create-image-createimage-action-detail#create-image-createimage-action right?
19:17:23 mordred I was testing against vexxhost, which is running newton I believe ...
19:17:26 mordred (and yes)
19:17:36 mordred one sec - getting the actual value from my logs so I can paste the right things
19:18:26 mriedem might have been related to some glance v1 stuff that we intentionally broke in newton
19:18:28 mriedem for glance v2
19:18:39 mriedem i seem to remember some issues there with returning locations to glance api servers
19:19:30 mriedem https://github.com/openstack/nova/blob/master/nova/api/openstack/compute/servers.py#L1112
19:20:08 mriedem https://github.com/openstack/nova/blob/master/nova/image/glance.py#L58
19:20:13 mordred RESP: [202] Content-Type: text/html; charset=UTF-8 Content-Length: 0 Location: http://172.21.1.10:9292/images/f5d5b63b-e710-4d59-aa12-a9bd42f6652a Openstack-Api-Version: compute 2.1 X-Openstack-Nova-Api-Version: 2.1 Vary: OpenStack-API-Version, X-OpenStack-Nova-API-Version X-Compute-Request-Id: req-4b6fb5ed-3055-4d84-a16f-4057685ce737 Date: Sun, 02 Apr 2017 13:26:20 GMT
19:20:18 mordred that's the response I got
19:20:52 mordred but the Location _should_ have been https://image-ca-ymq-1.vexxhost.net/v2/images/f5d5b63b-e710-4d59-aa12-a9bd42f6652a
19:21:06 mriedem yeah i was going to say, it's wrong b/c it's missing v1 or v2 right?
19:21:14 mordred well - and also the host is wrong
19:21:20 mriedem the host comes from the config in nova
19:21:24 mriedem for glance api servers
19:21:26 mordred 172.21.1.10:9292 is unreachable by me as a user
19:21:41 mordred so it seems it's returning the thing that is the internal url
19:21:41 sdague so, the host is going to because they have private glance servers
19:21:44 mordred yah
19:21:52 mriedem yeah comes from config https://github.com/openstack/nova/blob/master/nova/image/glance.py#L107
19:22:03 mriedem we'd have to get the host from the service catalog right?
19:22:05 sdague yeh, for historical reasons that's just a randomly picked one of their api_services
19:22:06 mriedem for publicUrl
19:22:19 sdague mriedem: yeh, it's more complicated than that, but yes
19:22:24 mordred kk. so this is still just part of the whole "use the catalog for glance stuff" effort
19:22:30 sdague because the glance stuff doesn't use the catalog anywhere
19:22:33 sdague mordred: yes
19:22:33 mordred yah
19:22:43 mordred cool - ok - so no new issue to file
19:22:44 mriedem is that an effort?
19:22:51 mriedem no one is working on this
19:23:34 mordred maybe effort is the wrong word "aspirational future state that people would love to be in but nobody is currently driving"
19:23:36 mriedem mordred: you should report a bug regardless
19:23:39 mordred kk
19:23:41 mordred will do
19:23:51 mordred also - I'm just stealing novaclient's workaround for now
19:24:02 mriedem i'm surprised we actually returned a location header
19:24:10 mordred which is to just pop the uuid off the end of the url and return _that_
19:24:13 sdague mriedem: that's been there for a long time
19:24:30 mriedem sdague: there's lots of things that have been around for lots of years that surprise me :)
19:24:35 sdague :)
19:25:01 sdague returning location is actually a pretty good pattern, it's just that it depends on too much config being correct
19:26:12 sdague I'm trying to figure out if vexxhost's config is going to hurt something else in terms of migration
19:26:13 mriedem sdague: so is the basic idea, long-term we want to drop CONF.glance.api_servers and just have nova lookup the image service url in the catalog?
19:26:21 sdague mriedem: yes
19:26:29 mriedem same for neutron and cinder
19:26:32 mriedem since those are config driven
19:26:34 mordred yah
19:26:57 mriedem oh right and raj_singh had a patch to use ksa with glance in nova...
19:27:05 sdague right, so we probably are going to have to have a slightly more complicated case for glance where we consider an internal and a public path
19:27:14 mriedem https://review.openstack.org/#/c/412634/
19:27:32 sdague because glance is one of those services where your would tend to build a really high bw internal path to the api service
19:27:43 mordred mriedem: I've also got this one: https://review.openstack.org/#/c/438512/
19:27:48 mriedem we make that configurable for placement
19:27:53 mriedem which url to use i mean
19:27:58 mordred mriedem: which needs a little more cleanip before I bother you fine people with it much more
19:28:15 sdague mriedem: well... except we reflect urls straight to the user
19:28:22 sdague so we're going to need 2 config options
19:28:27 mriedem sdague: right i know
19:28:46 mriedem internal defaults to internalUrl or adminUrl or whatever, and public defaults to publicUrl
19:28:56 mriedem i was thinking about this https://github.com/openstack/nova/blob/master/nova/conf/placement.py#L31
19:29:02 sdague mriedem: yeh
19:29:13 mordred yah - I'd argue to not have that
19:30:09 mordred internal and public are known interfaces. nova should reflect urls based on public to API consumers and should use internal to talk to other services - we shouldn't make operators tell nova to do that- if they don't want an internal url, they should just register the same url twice with keystone
19:30:10 sdague mordred: well, we tried to get away with be prescriptive with placement
19:30:12 mordred but I'm unreasonable
19:30:19 sdague and people got mad
19:30:23 mordred of course they did
19:31:02 sdague mordred: so, lots of deployments only use public
19:31:09 sdague or at least some do
19:31:17 sdague and just route correctly
19:31:24 mordred yah. that would be more smarter
19:31:40 sdague is there anyone else with a newton cloud?
19:32:20 mordred dunno - I only know vexxhost is because I was chatting with mnaser about a config-drive issue over the weekend
19:32:48 mordred but given the way novaclient works here, it's highly unlikely many real-world folks are broken by this issue, fwiw
19:34:06 mordred I mean - honestly rather than fixing it - just returning a json dict in the body with the image_id in it would be a win - those urls aren't really used much in the rest of the overall api flow
19:34:24 mordred and the first thing you're going to do with this as a user is make a call to glance to get the image dict by id
19:34:43 mordred (since you have to poll that for status to know when it's done)
19:35:00 mriedem mordred: yeah that's why i said i was surprised,

Earlier   Later