Earlier  
Posted Nick Remark
#openstack-nova - 2017-03-28
13:51:50 openstackgerrit Stephen Finucane proposed openstack/nova master: nova-manage: Deprecate 'agent' commands https://review.openstack.org/450795
13:57:18 openstackgerrit Stephen Finucane proposed openstack/nova master: conf: Rename '[neutron] ovs_bridge' https://review.openstack.org/450266
13:57:19 openstackgerrit Stephen Finucane proposed openstack/nova master: conf: Move 'floating_ips' opts into 'network' https://review.openstack.org/431039
13:57:19 openstackgerrit Stephen Finucane proposed openstack/nova master: conf: Deprecate 'default_floating_pool' https://review.openstack.org/431038
13:57:20 openstackgerrit Stephen Finucane proposed openstack/nova master: conf: Add neutron.default_floating_pool https://review.openstack.org/431037
13:57:32 openstackgerrit Maciej Szankin proposed openstack/nova master: Add fix_opt_description to database conf https://review.openstack.org/450799
13:57:45 tdurakov paul-carlton2 eliqiao shaohe_feng pkoniszewski yuntongjin mdbooth kashyap kmartin claudiub tobasco abhishekk mrhillsman raj_singh wznoinsk siva_krishnan, live migration subteam meeting in 3 minutes on #openstack-meeting-3
13:58:26 mdbooth johnthetubaguy: Are you still changing the cinder spec?
13:59:43 johnthetubaguy mdbooth: I am happy with the latest rev being reviewed again
14:02:49 openstackgerrit Diana Clarke proposed openstack/python-novaclient master: Fix 'nova list --fields' error in no instances case https://review.openstack.org/396074
14:06:09 mdbooth ildikov: Got a sec?
14:06:11 openstackgerrit Gábor Antal proposed openstack/nova master: Transform instance.volume_attach notification https://review.openstack.org/401992
14:06:36 mdbooth ildikov: Wanted to talk about locking and shared connections.
14:07:50 openstackgerrit Maciej Szankin proposed openstack/nova master: config options: remove libvirt imagecache https://review.openstack.org/378497
14:10:03 mriedem oh hello
14:10:19 mdbooth mriedem: Have you been induced? Inducted?
14:10:56 ildikov mdbooth: hi, I'm here
14:11:26 mdbooth ildikov: Yeah, just wanted to talk through locking around the shared connection thing.
14:11:49 mdbooth It's not super urgent, but potentially detailed :)
14:12:51 mriedem induced? the baby isn't due for another week.
14:12:53 ildikov mdbooth: I'm not sure I'm the expert on that one, but happy to dig into my memories about it from the PTG, etc.
14:13:10 mdbooth ildikov: So, I've already got a patch which solved this issue using the current apis here: https://review.openstack.org/#/c/383859/
14:13:24 ildikov mdbooth: I think shared connections are just confusing in general at this point...
14:14:09 mdbooth If we could reduce the complexity of that with the new apis I'd be all for it, but I've thought it through, and I've got quite a lot of context on this, and I don't see how it's possible to do race-free outside the host driver
14:14:53 mdbooth Well, we could construct something, but I think it would be more complex and fragile than doing it on the host
14:15:02 mriedem alex_xu: per the question about the multinic implementation of the neutron backed in nova, you might want to update this blueprint for pike https://review.openstack.org/#/c/384261/
14:15:47 mdbooth ildikov: Anyway, happy to have that detailed discussion whenever.
14:16:19 mdbooth ildikov: The high level point, though, is that any api call which says "you're the last user" is inherently racy
14:16:34 ildikov mdbooth: so the new API's supposed to make it better, but beyond talking about the locks I'm not sure we fully see it at this point
14:16:52 mdbooth You're always going to have to confirm that. IOW it doesn't really serve any purpose.
14:16:57 ildikov mdbooth: I also think it would be a good discussion to the meeting we have on Thursday, so other folks can chime in too
14:17:27 ildikov I think we want to lock on the host
14:17:33 mdbooth ildikov: Ok, I'll bring it up there.
14:18:05 mdbooth Probably the os-brick part doesn't need to directly concern itself with locking: that could be done by Nova.
14:18:19 mdbooth However, I'm convinced it does need to live on the host.
14:18:56 ildikov mdbooth: I think we are in an agreement on that
14:19:08 ildikov but I might miss something now if that's not the case :)
14:19:38 pjm6 hi there
14:19:57 mdbooth ildikov: Discussion of cinder passing lists of other users of a shared connection initially sounded like a good idea, but now they make me nervous.
14:20:10 mdbooth ildikov: That information can never be safely used, so I'd prefer it didn't exist.
14:20:43 pjm6 there's a way to reset quota of openstack projects?
14:20:58 ildikov mdbooth: we had multiple ideas on that, like sharing the info with Nova whether the driver shares the connection in general or not
14:20:58 pjm6 in stable/ocata there was a bug that when deleting some VMs, the quota were not updated
14:21:00 mdbooth mriedem: Incidentally, I made a thing: https://review.openstack.org/#/c/450383/2/nova/test.py
14:21:07 mdbooth It's a poor man's compiler substitute
14:21:12 ildikov mdbooth: the other was the list of remaining attachments or smth like
14:21:33 ildikov in the new API attachment-delete does not return anything right now
14:21:38 mdbooth ildikov: Yeah, that's the dangerous info
14:21:56 mdbooth The host needs to work that out itself.
14:22:20 mdbooth Even if cinder passes it, Nova can never safely use it
14:22:30 mdbooth However, somebody might be tempted
14:23:15 pjm6 https://bugs.launchpad.net/nova/+bug/1668267
14:23:15 openstack Launchpad bug 1670627 in OpenStack Compute (nova) ocata "duplicate for #1668267 quota is always in-use after delete the ERROR instances " [Critical,In progress] - Assigned to Matt Riedemann (mriedem)
14:23:30 pjm6 this bug, theres a way to reset quota or i must do it manually?
14:23:48 ildikov mdbooth: I think the info on the driver's behavior is what's needed, the rest Nova can figure out after locking
14:23:54 ildikov mdbooth: if this makes sense
14:24:51 mriedem mdbooth: ok
14:25:06 mdbooth ildikov: With a little thought I think we can define an interface between os-brick and Nova which will allow os-brick to do just the attach/detach, and Nova to ensure correctness
14:25:27 mdbooth I suspect we'll need an is_already_connected() call
14:26:02 ildikov does your idea require states in os-brick?
14:26:06 mdbooth With that, attach, and detach, we're probably good.
14:26:29 mdbooth ildikov: Not if we implement it like this. It does require state on the host, though.
14:26:40 mdbooth But the state doesn't need to be managed by os-brick
14:29:05 ildikov mdbooth: if we can do a lock and figure out the state when we do detach that would be the best
14:29:27 alex_xu mriedem: ok, i will check that
14:29:43 ildikov mdbooth: you want to track the connections on the host and store the info?
14:30:01 mdbooth ildikov: My patch stores state, but not persistently.
14:30:29 mdbooth It inspects the host state on startup, then tracks attach/detach while running.
14:30:49 mdbooth And it has a bunch of additional sanity checking in there so it'll recover if things get out of whack anyway.
14:31:16 mdbooth The model is entirely applicable to any shared connection.
14:31:48 mdbooth All I require of the lowest level is: attach, detach, is_connected
14:37:00 ildikov mdbooth: got it, I need to look into the patch a bit
14:37:55 mdbooth ildikov: The patch as-is is specifically for drivers which use mount. Don't get hung up on that, though. The state tracking is the interesting bit.
14:38:12 ildikov yeah, that part what I meant more
14:38:32 ildikov I'm personally always get scared when we start to do state tracking... :)
14:38:44 ildikov mdbooth: :)
14:40:18 mdbooth ildikov: Amongst other things, it fixes a bug we had in the old model. We'd just try to unmount and see if it succeeded or not. Problem is, it *would* succeed if one of the instances using it was stopped. You can scan the entire host state for that every time, or you can keep track of it.
14:41:12 mdbooth Also, it meant we never knew when a failure to unmount was an error.
14:41:13 ildikov I guess scanning every time would be overkill
14:41:39 ildikov although re-scan every once in a while would still be good to make a sanity check
14:42:00 ildikov as we have issues identified with the old model, we should be able to fix that with the new
14:42:08 mdbooth My patch just has sanity checking built in to connect/disconnect
14:43:33 openstackgerrit Balazs Gibizer proposed openstack/nova master: Remove **kwargs passing in payload __init__ https://review.openstack.org/418489
14:44:23 ildikov mdbooth: oh ok, I thought it's only host startup
14:44:56 mdbooth It does a full scan at host startup, but it also has enough context to do more sensible recovery during connect/disconnect
14:45:33 ildikov ok, got it
14:45:40 mdbooth Incidentally, if you re-do the full host scan you'd need to block all connect/disconnect globally while you did it
14:46:10 ildikov that does not sound ideal
14:46:18 openstackgerrit Balazs Gibizer proposed openstack/nova master: Remove **kwargs passing in payload __init__ https://review.openstack.org/418489
14:46:24 mdbooth It's a fundamental requirement, though.
14:47:27 ildikov I just meant that if we would re-do the full scan at all connect/disconnect that does not sound ideal, I get the block
14:48:44 mriedem johnthetubaguy: i'm about to pull a +W on https://review.openstack.org/#/c/373203/ unless you think we need at least one more specs core to review it first?
14:50:01 johnthetubaguy mriedem: I mean, we have quite a few other folks +1s we could upgrade for this one
14:53:18 jaypipes so, gibi, it seems to me that since you've been doing the "top 5 notifications patches" email each week, that we've made steady progress getting patches merged. would you agree?
14:53:45 mriedem johnthetubaguy: works for me, i'll just tell everyone you told me sum(+1) == +2 :)
14:54:05 gibi jaypipes: yes. I expressed exactly this to mriedem last week on the subteam meeting
14:54:14 gibi jaypipes: so I'm happy :)
14:54:16 jaypipes gibi: cool.
14:54:20 jaypipes :)
14:54:33 gibi jaypipes: and thankful for all the reviews

Earlier   Later