Earlier  
Posted Nick Remark
#openstack-nova - 2020-06-18
14:56:49 dansmith personally, I do not understand how relying on a centralized (even if HA'd) load balancer is better than the clients knowing the options and being able to help themselves out of a failure to talk to one
14:56:51 mordred if this is a thing that has to stay around
14:56:52 efried Easy for me to say, I won't be the one doing it.
14:57:01 sean-k-mooney dansmith: ok that more hevy wait then kolla does so i guess that is different in ooo
14:57:15 mordred then I want to just say screw it and support it in the client layer
14:57:34 efried dansmith: ftr, api_servers isn't really a load-balancer. I think it's a deafdumbandblind round robin.
14:57:36 mordred it's way too fundamental of a piece of config to stich in in the way it's being done
14:57:44 mordred a very dumb one
14:57:46 mordred it doesn't do retries
14:57:53 efried or failovers, or anything.
14:57:55 mordred yah
14:57:59 efried You simply get the next one on each subsequent api req
14:58:14 mordred it's probalby _less_ HA
14:58:17 efried heh
14:58:22 efried indeed
14:58:37 mordred maybe it's time to one-more-time go to the mailing list
14:58:40 dansmith I understand, but it still gets you 66% success instead of zero if 1/3 is down, and it could be made to do the right thing
14:58:44 mordred maybe life has changed for peopel since queens
14:58:56 dansmith mordred: this was not queens when we had this discussion, fwiw
14:58:59 sean-k-mooney mordred: for the better?
14:59:09 mordred dansmith: no? that's the release mentioned in the nova config docs
14:59:14 dansmith mordred: anyway, don't use my name in the email, I'm not prepared to argue for it anymore
14:59:21 mordred dansmith: I won't
14:59:28 dansmith mordred: that's when it was deprecated I think, but the concern about removing it was within the last year
14:59:34 mordred nod
14:59:49 dansmith but also, we were told that it was going to go away regardless so those people are assuming it's going or gone I think
15:00:06 mordred oh - well that's something perhaps
15:00:27 artom stephenfin, did the flavor extra spec validation spec ever go anywhere?
15:00:38 stephenfin artom: it landed last cycle
15:00:47 stephenfin API microversion 2.84, I think?
15:01:43 artom stephenfin, 2.86, but yeah, thanks for the pointer
15:01:56 artom So we could use that for the cpu_dedicated_mask, right?
15:02:08 efried Deprecate: https://review.opendev.org/#/c/692227/ (merged)
15:02:08 efried I don't see a patch (at least owned by me) proposing removing it.
15:02:09 artom Context is my latest comment on https://review.opendev.org/#/c/468203/15
15:03:19 efried Comments in above patch contain ML links mordred
15:03:45 efried and also refers to some people who wanted to keep it.
15:04:04 stephenfin artom: fair comment. In the middle of something at the moment but I'll get a reply to it
15:04:30 stephenfin we can't rely on the validation though, mind you, since it's an API change
15:04:30 artom stephenfin, no rush. Today's my "upstream day", trying to do some reviews where I can :)
15:04:42 stephenfin *in an API microversion
15:07:55 mordred efried: ooh! so it is deprecated!
15:08:42 mordred efried: how many releases do we have to wait to remove a deprecated thing? can we remove that now in victoria? or do we have to wait until w?
15:09:25 dansmith mordred: should probably ask the ptl
15:10:15 stephenfin mordred: it's six months or one release, whatever is greater
15:10:29 stephenfin though that's obviously tempered by impact
15:10:35 dansmith I thought it was two releases for config options
15:10:49 dansmith you can't remove it in the N+1 release, but you can in the N+2,
15:10:59 dansmith else we'd break N->N+1 config compatibility
15:11:05 mordred gotcha. so we can remove in W
15:11:11 mordred but not today
15:12:16 stephenfin you deprecate in N, and remove in N+1
15:12:45 stephenfin if you removed in N, you'd be breaking N-1 -> N compatibility
15:13:22 stephenfin that gives people the duration of N to get off $deprecatedthing
15:13:34 dansmith isn't N-1->N+1 the same thing I said, but with N->N+2?
15:14:45 dansmith oh, you're saying we deprecated it in U so people in U should know to get off of it so it can be gone in V? I guess technically that's right, but I really thought it was supposed to be two releases
15:15:03 stephenfin yes :) you had me confused there
15:15:19 stephenfin docs say the same https://docs.openstack.org/nova/latest/contributor/process#smooth-upgrades
15:15:25 stephenfin i.e. continue to support and test features for at least one release before they are removed
15:16:10 sean-k-mooney ya so 1 release is the miniume we usuall take 2-3 to remove it
15:16:16 stephenfin definitely not black and white
15:16:18 sean-k-mooney depeneing on how much of a pain it is
15:16:24 stephenfin sean-k-mooney: if we ever remove it :)
15:16:31 dansmith given it could break people's glance setup without warning,
15:16:34 dansmith I'd say it's pretty high impact
15:16:46 stephenfin "will be removed in a future release" <-- my boilerplate
15:16:52 sean-k-mooney we would need a nova-status check at a minium right
15:17:26 stephenfin I wouldn't say without warning, since we do have a big "this thing is deprecated" warning
15:17:27 sean-k-mooney also ooo would have to be modified proably
15:17:59 dansmith sean-k-mooney: for something like this, yeah I'd think so
15:18:00 stephenfin I guess it comes down to how difficult the migration is
15:18:14 stephenfin from $old_way to $new_way
15:18:30 stephenfin I don't know about that so I'll defer to others
15:25:37 sean-k-mooney old way is template a config option. new way is either add the service to a load blancer or deploy a new loadbalncer and add it to that
15:26:47 sean-k-mooney i think the only thing we use this for in ooo wa rabbitmq but i could be wrong about that
15:27:01 sean-k-mooney i think in ooo we go to glance vai haproxy
15:27:27 sean-k-mooney but in general people could have been using this for any of the api endpoint?
15:47:31 gibi nova weekly meeting will start in 12 minutes on #openstack-meeting-3
15:49:04 mordred sean-k-mooney: well - we wouldnt' be removing this for rabbit
15:49:13 mordred sean-k-mooney: this is only about talkig to openstack api services
15:49:48 mordred it's possible we've not been properly clear about that
15:50:21 sean-k-mooney mordred: why would we remove it for one and not the other
15:50:34 sean-k-mooney its equally bad in both cases
15:50:48 sean-k-mooney or good depending on your view
15:50:49 mordred sean-k-mooney: "use services from the keystone catalog and via the normal api consumption channels" is the driver
15:51:14 mordred rabbit doesn't get configured via the catalog nor consumed using a standard set of connection information
15:53:38 sean-k-mooney mordred: have you tought about a keystone feature to allow the same behavior :P
15:54:30 mordred yes - it was _strongly_ opposed by the keystone team - becaues they did not want to build a bad load balancer
15:54:32 sean-k-mooney but ok if its the openstack services only im not sure if that changes the edge configuration
15:54:50 mordred yeah - and really, it's ONLY glance
15:54:59 mordred that's the only place this option exists
15:55:27 mordred so it's not even that there is a generalized mechanism for talking to api services with a list of endpoits in nova -- it's _just_ for glance
15:55:50 mordred and I'm pretty sure the reason it's special is that way back in the day glance wasn't considered user-facing, so why would you have it in your load balancer
15:56:40 sean-k-mooney well in the edge configurtion you want your edge site to use a local glance api
15:56:55 sean-k-mooney and leavge the glance multistore feature
15:57:21 sean-k-mooney now i dont know if that needs this
15:57:54 sean-k-mooney or can we configure the glance store seperatly and have multiple endpoints in keystone
15:58:15 sean-k-mooney but i feel like we would need the later?
15:59:07 sean-k-mooney you dont want just one endpoint as you would have to do anycast routing tricks if you wanted to hit the local api
16:10:27 mordred sean-k-mooney: well - for those you can totally still use endpoint override

Earlier   Later