Earlier  
Posted Nick Remark
#openstack-nova - 2017-04-11
13:58:40 jaypipes mriedem: sure, just gimme a few. need to restart my workstation..
13:58:49 sdague mriedem: I guess the question is, what do we think people need to do with this?
14:00:05 mriedem sdague: alex_xu: just left replies in https://review.openstack.org/#/c/455023/
14:00:15 mriedem sdague: to list ports attached to their server
14:00:25 mriedem sdague: same reason we have os-volume_attachments
14:00:38 sdague so that they can go operate on those ports in neutron?
14:00:48 mriedem or detach a port from the server in the same api
14:00:49 sdague like after they get that, what do they do with it next?
14:01:26 mriedem GET /os-interface - nothing attached, POST /os-interface/port_id - attach a port, GET /os-interface, see my port is attached, DELETE /os-interface/port_id - detach the port
14:01:35 jaypipes mriedem: ok, back...
14:01:43 mriedem jaypipes: replied to comments inline
14:01:54 johnthetubaguy peter-hamilton: thanks for taking a look at those
14:02:04 peter-hamilton johnthetubaguy: not a problem
14:02:10 mriedem alex_xu: pointed out duplication with the /ips API such that we could drop the fixed_ips and mac_addr part of os-interface
14:02:18 peter-hamilton johnthetubaguy: can you provide more info on versionedobjects?
14:02:20 mriedem we could drop port_state since it doesn't really make sense
14:02:23 mriedem or help
14:02:28 peter-hamilton johnthetubaguy: i'm not that familiar with them
14:02:42 mriedem peter-hamilton: https://github.com/openstack/oslo.versionedobjects
14:02:44 sdague /ips is all super weird, and that's all in the main server doc iirc
14:02:52 peter-hamilton mriedem: thanks!
14:02:58 johnthetubaguy peter-hamilton: sure thing, the rest of those instance extra entries are basically serialised versioned objects, helps with upgrades, etc, long term
14:03:06 mriedem sdague: it is, in fact, more of /ips is in the main server doc than it is in /ips
14:03:09 mriedem sdague: details wise
14:03:26 peter-hamilton johnthetubaguy: ok, so it would just match the current convention for InstanceExtras
14:03:33 johnthetubaguy peter-hamilton: yeah
14:03:42 mriedem peter-hamilton: the nova objects are in https://github.com/openstack/nova/tree/master/nova/objects
14:03:49 peter-hamilton johnthetubaguy: thanks
14:03:56 mriedem instance_extra stuff is used in https://github.com/openstack/nova/blob/master/nova/objects/instance.py
14:04:09 peter-hamilton johnthetubaguy: i'm fine with making that a versionedobject then
14:04:15 mriedem https://github.com/openstack/nova/blob/master/nova/db/sqlalchemy/models.py#L372
14:04:28 peter-hamilton johnthetubaguy: i'm working through some updates to the spec now
14:04:30 johnthetubaguy peter-hamilton: the extra bit of detail might be here, in case that helps with context: https://github.com/openstack/nova/blob/master/nova/objects/instance.py#L718
14:04:39 mriedem if we store something in the nova database and it's passed over rpc, it should be a versioned object
14:04:43 peter-hamilton johnthetubaguy: thanks, i'll look it over
14:04:45 johnthetubaguy peter-hamilton: sweet, will try hit that as soon as its updated
14:04:58 johnthetubaguy +1 mriedem
14:08:27 dansmith mriedem: is this docs failure known? http://logs.openstack.org/92/443292/15/check/gate-nova-docs-ubuntu-xenial/a9a4dc5/console.html
14:08:45 dansmith seems like the kind of thing that would be wide failure
14:08:46 mriedem dansmith: not by me
14:08:53 dansmith okay
14:09:04 mriedem lemme checkade logstash
14:09:09 sdague mriedem: I don't understand the dropping of mac address, how would you determine what guest interface is what port if you don't have that?
14:09:35 alex_xu sdague: good point~
14:10:04 mriedem sdague: I only mentioned that b/c the /ips API also has it
14:10:12 mriedem so maybe we remove mac from /ips and leave in os-interface
14:10:14 sdague dansmith: it looks like that job ran on python 3.5, which is the issue
14:10:30 dansmith sdague: talking in infra now, it's known
14:10:37 sdague mriedem: well, if you have > 1 port I'm not sure how ips helps
14:10:40 mriedem yeah http://logstash.openstack.org/#dashboard/file/logstash.json?query=message%3A%5C%22AttributeError%3A%20'dict_keys'%20object%20has%20no%20attribute%20'sort'%5C%22&from=7d
14:11:39 dansmith pabelanger said they'd send out a note shortly
14:11:46 openstackgerrit Gábor Antal proposed openstack/nova master: Add json style checking for sample notifications https://review.openstack.org/443677
14:11:56 mriedem the /ips api is also a bit goofed up since it keys off the network label
14:12:24 mriedem so it's less about showing fixed/floating ips for a server and more about showing addresses for a server within a network
14:13:06 mriedem and of course we have /os-fixed-ips/
14:13:29 mriedem but that's not tied to the server
14:13:47 mriedem and /os-floating-ips but that's not tied to a server either
14:13:49 sdague ok, so, let's not go through everything that's wrong, that will just take us in loops :)
14:13:58 mriedem right,
14:13:58 mriedem so,
14:14:02 sdague how compat are you trying to be here?
14:14:17 mriedem can we agree that at some point in the future, we want to expose bdm and vif tags out of the rest api?
14:14:28 mriedem since those are a nova-only concept
14:15:16 mriedem well, i guess you can set tags on ports in neutron too
14:15:28 mriedem but you can't tag volumes in cinder, and they aren't used the same way in nova anyway
14:16:04 sdague https://etherpad.openstack.org/p/nova-os-interfaces - scratch space, because there seem like there are so many options
14:16:10 sdague yeh, I think tags exposed would be good
14:16:19 mriedem sdague: my goal is one day expose tags for both bdms and ports in a single microversion, and i planned on exposing vif tags out of the os-interface API
14:16:27 sdague sure
14:16:33 mriedem i'm totally fine with putting the os-interface response on a diet
14:16:40 mriedem i.e. remove port_status and fixed_ips
14:16:48 mriedem leave port_id, net_id, and mac_addr
14:17:01 sdague so, the real question I wonder is if we are making enough change to those, if we change the resource url at the same time
14:17:21 mriedem GET /servers/ports?
14:17:29 jaypipes mriedem: honestly, I hate all the existing APIs for dealing with both BDMs and vNICs.
14:17:29 mriedem GET /servers/{server_id}/ports?
14:17:30 sdague I was going to say interfaces
14:17:49 sdague jaypipes: ok, well hate only gets so far :)
14:17:59 mriedem jaypipes: yeah, provide your alternatie
14:18:02 mriedem *alternative
14:18:10 jaypipes fine, I will.
14:18:14 mriedem because i'm about to ragequit on this spec
14:18:16 sdague it seems like this is the way to understand relationships so you can chain through
14:18:27 sdague well, etherpad sketch things first
14:22:20 sdague is net_id readily available?
14:22:42 sdague like how much of this data exists cheaply for us?
14:23:08 mriedem it's cheap
14:23:16 mriedem it's all in the instance info_cache
14:24:19 openstackgerrit Andy McCrae proposed openstack/nova master: Don't force CONTENT_LENGTH to be an int() https://review.openstack.org/455710
14:24:58 jaypipes sdague: honestly, I'm thinking in terms of the end user here. Which end user needs to know the subnet_id or the net_id?
14:25:06 openstackgerrit Andy McCrae proposed openstack/nova master: Allow CONTENT_LENGTH to be present but empty https://review.openstack.org/455710
14:25:27 sdague jaypipes: if you have multiple networks and some can get out and others cant?
14:25:33 mriedem jaypipes: we agreed to drop fixed_ips from the response, which drops the subnet_id
14:25:38 openstackgerrit Mario Villaplana proposed openstack/nova master: virt/ironic: Implement rescue and unrescue https://review.openstack.org/416487
14:25:43 sdague maybe mordred's pov would be good
14:25:46 jaypipes sdague: it's just downright confusing to the end user, IMHO. I'd rather see an API that exposes things the end user is interested in in relation to the instance itself (not the port object in Neutron, which is what MANO/VNFM users are interested in)
14:25:50 sdague as he fights with network discovery all the time
14:26:10 mordred I do indeed!
14:27:27 sdague mordred: we're trying to fix the interfaces API in nova, because it remains full of some nova-net gorp. And the real question is what should it return in it's new state
14:27:31 mordred so - as a I read - a few quick thoughts: the addresses dict as it is today is horrible to work with, I'd love something new - I'd also love for port_ids to be returned inside of the server resource for all ips reported

Earlier   Later