15:00:19 #startmeeting kolla 15:00:20 Meeting started Wed Aug 14 15:00:19 2019 UTC and is due to finish in 60 minutes. The chair is mgoddard. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:00:22 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 15:00:25 #topic rollcall 15:00:25 The meeting name has been set to 'kolla' 15:00:34 o/ 15:00:43 \o 15:00:44 hrw, mnasiadka 15:00:45 o/ 15:01:12 o/ 15:01:16 o/ 15:01:35 \o 15:01:45 o/ (sort of - in another meeting) 15:03:18 #topic agenda 15:03:28 * Roll-call 15:03:31 * Announcements 15:03:33 * Review action items from last meeting 15:03:35 * Kolla whiteboard https://etherpad.openstack.org/p/KollaWhiteBoard 15:03:37 * Kayobe Stein release status 15:03:39 * Train release planning 15:03:41 * Ceph ansible migration 15:03:43 * Kolla Ansible TLS Internal API 15:03:45 #topic announcements 15:03:53 None from me. Anyone else? 15:04:34 no major 15:04:37 #topic Review action items from last meeting 15:04:44 o/ (sorry for being late) 15:04:47 mgoddard to ask infra about restarting gerrit 15:04:50 mgoddard or someone else to check stable backports 15:05:09 this week seemed to go very quickly, didn't do either 15:05:16 #action mgoddard to ask infra about restarting gerrit 15:05:23 #action mgoddard or someone else to check stable backports 15:05:32 #topic Kolla whiteboard https://etherpad.openstack.org/p/KollaWhiteBoard 15:06:36 How is CI looking 15:07:03 mgoddard: never been greener when it comes to master/stein 15:07:07 did not check others 15:07:40 that's what I like to hear 15:08:31 Is everyone keeping their feature status up to date in the whiteboard? 15:08:37 (in the priority list) 15:09:06 mine yeah, no progress since last meeting 15:10:15 #topic Train release planning 15:10:40 We covered this in detail last time, no need to go over it again IMO 15:10:58 Please all just keep in mind the train release schedule 15:11:07 #link https://releases.openstack.org/train/schedule.html 15:11:19 (we will lag by 2+ weeks) 15:11:31 #topic Kayobe Stein release status 15:11:50 priteau, dougsz: how are we looking? 15:12:11 I'd like to cut a stable branch soon 15:12:49 There are many patches that we could land soon 15:12:51 quite a few patches with 1x +2 we could land before 15:13:23 https://review.opendev.org/#/q/project:x/kayobe+is:open+branch:master+label:Code-Review%252B2 15:14:21 ok, let's get those patches in this week 15:14:37 Scott Solkhon proposed openstack/kolla-ansible master: Decrypt keyring files using ansible-vault https://review.opendev.org/676441 15:14:49 And also should we proceed with the rename before branching, so there is not too much to change in both master and stable/stein? 15:14:53 if there are others without +2 we want in, please add review priority 15:15:09 sounds good, will try and spend some time on them later today 15:15:25 priteau: https://review.opendev.org/#/c/674505/ ? 15:16:06 I think we need to wait for infra to do the rename 15:16:18 should only need to cherry pick that patch to stable/stein 15:17:34 OK 15:18:06 thanks dougsz 15:18:17 #topic Ceph ansible migration 15:18:24 mnasiadka: you're up 15:18:51 Well, I have started CI work and some docs work 15:19:11 Will continue next week (I’m off tomorrow and on Fri) 15:19:25 So I’ll have more to say/show on Wed 15:20:18 Did you want to discuss the overall approach? 15:20:27 Yeah 15:20:35 We have two options: 15:20:56 1) role with importong ceph-ansible roles like OSA does 15:21:17 2) totally separate flow of ceph deployment 15:21:24 o/ 15:21:56 mgoddard: currently I’m leaning towards 1), but would like to hear comments 15:22:01 OSA's approach is better imo, it's nice to have the familiar interface. vars being the same as ceph-ansible, etc. 15:22:19 importing what already works and people may be familiar with 15:22:22 (2) seems more like us though 15:22:40 "outsource what we can" 15:23:14 maybe we could get something inbetween 15:23:24 yoctozepto: it’s still outsourcing, just we need to run preparation tasks (which we need to do in 2) as well) 15:23:28 like orchestrating the basic set of services 15:23:39 how much of ceph-ansible would we need to reimplement in order to just use the roles? 15:23:42 And then importing role by role from ceph-ansible 15:23:54 ok, this way... 15:24:22 mgoddard: generate vars, reuse our inventory and import roles in correct order 15:24:32 seems reasonable 15:24:58 you have my blessing with (1) 15:25:34 would we execute these roles as part of the normal deploy? 15:25:35 unless it gets super clumsy, I will +2 it once done 15:26:01 one change in the workflow I like about 2 is that it cleanly separates ceph and openstack 15:26:12 mgoddard: we can, or we make it separate command 15:26:18 Or we can do both... 15:26:22 mgoddard: yeah, I originally thought this way 15:26:27 you can't accidentally modify your ceph cluster during an openstack upgrade 15:26:36 exactly ^ 15:27:09 the very reason I have my ceph cluster deployed externally - more control, less worries 15:27:18 I'm open to 1), but would like to see a PoC before committing 15:27:21 though people MAY like the simplicity 15:27:39 Merged openstack/kolla-ansible master: Add missing Octavia policy file to Horizon https://review.opendev.org/676176 15:27:45 mnasiadka: do you have code you could throw at gerrit? 15:28:03 mnasiadka: ^ even not working 15:28:44 How complex is each approach to maintain as Ceph-Ansible evolves? 15:28:53 that's a good question 15:28:53 Mark Goddard proposed openstack/kolla-ansible master: CI: Test accessing dashboard https://review.opendev.org/676412 15:29:03 mgoddard: I have some, I can push but that’s halfway done 15:29:15 2 is very simple to maintain - we just point to ceph-ansible docs 15:31:02 how will we access ceph-ansible code? git clone from within kolla-ansible? 15:31:07 And make a writeup on using generated keys, basically updating external ceph docs 15:31:32 mgoddard: in CI I’m cloning, because CentOS rpms are uninstallable :) 15:32:10 At least 4.0 for now 15:32:15 2 is very simple to maintain - we just point to ceph-ansible docs 15:32:17 lol 15:32:31 we need to make docs of our own anyway 15:32:54 we had some on-channel report about ceph-ansible being incompatible with our manual for external ceph 15:33:05 something cinder/nova key not being separate related 15:33:10 I think there was a bug too 15:33:32 Not really incompatible, just default config is incompatible :) 15:33:48 I clone ceph-ansible currently. Interesting the 4.0 branch started to require a grafana-server section to be defined which resulted in docker version mismatch if a ceph node is also used as a os node. 15:34:26 michaelbarkdoll: true, but you can override grafana container name 15:34:35 modern ops ("infrastructure as code" blah) advocates cloning everything ;-) 15:34:40 as in "git everywhere" 15:35:46 mnasiadka: any idea on ceph-ansible dynamics? 15:35:55 re: supporting the (1) option ^ 15:36:25 yoctozepto: I doubt they will change all role names next release 15:36:47 It’s rather small now, but what do I know 15:36:55 and the options we want/have to use is probably a small set? 15:36:56 RDO surprises us every release 15:37:04 heh 15:37:15 yoctozepto: yeah 15:37:43 So I’m still thinking about improving docs so it matches today state 15:37:46 since (2) is about adapting docs 15:37:55 we should do at least (2) and most probably (1) as well 15:37:57 And then we can think if we do (1) 15:38:29 that's a fair point 15:38:53 ok, then all agreed 15:39:02 move on, mgoddard 15:39:26 #topic Kolla Ansible TLS Internal API 15:39:41 scottsol, stackedsax, kklimonda, generalfuzz: you're up 15:39:54 we met yesterday for a bit 15:40:16 we discussed the "local-proxy" approach, which we all felt like be a good first step, and then as a second step we would switch services to use native tls via wgsi one at a time. 15:41:39 if we add an intermediate step, we would need to support it 15:41:46 which could complicate things long term 15:42:06 generalfuzz: can you elaborate on "local-proxy" 15:42:11 Does every single openstack service support tls? 15:42:37 priteau: all APIs because of HTTP webserver in front 15:42:37 priteau: rephrase: does every single openstack service support WSGI? 15:42:57 rabbitmq for communication also 15:43:01 mariadb checked 15:43:18 I think they're just looking at internal API for now 15:43:37 mgoddard: yeah but answering priteau's doubts :-) 15:43:43 no this is why the intermediate step is being looked at 15:43:59 as a "catch all" 15:44:13 generalfuzz: does the implementation of TLS on the frontend for the internal API offer an improvement in your view? 15:44:20 it may take some time to convince all projects to support wsgi 15:44:21 scottsol: please give an example for those not blessed with the knowledge :-) 15:44:35 i.e. only https://review.opendev.org/#/c/663555 15:45:20 the "local-proxy" apporach Is to have a proxy server on every node that terminates TLS communication before communicating with the service. Currently HAProxy does the termination, and then communicates using http interally to services 15:46:21 mgoddard - I don't thinkso 15:46:56 generalfuzz: understood, thanks 15:47:15 I like the approach, it seems enough for me 15:47:22 no need to encrypt loopback traffic anyway 15:48:35 how do we prevent a port conflict between haproxy and the backend? 15:48:45 backend listens on localhost? 15:49:21 haproxy would need to listen both on the VIP and api_interface_address 15:49:22 ports would be defined as global variables 15:50:33 why the api_interface_address? 15:50:59 if you need to access a particular haproxy instance, you can't use the VIP 15:52:50 I imagine the "local-proxy" to be a separate container from HAProxy, listening on a defined intermediary port to do SSL termination 15:53:08 ^ exactly what I understood too 15:53:31 you want to abuse haproxy for ssl termination 15:53:34 it could be. that's not how the similar original design worked - it reused a singe haproxy 15:54:14 what about using apache within the continer to do the same thing? 15:54:53 then we could use wsgi where available, and just proxy otherwise 15:54:57 The advantage to having separate proxy containers is that It is simple to reroute haproxy Directly to service when they support SSL termination natively 15:56:07 using apache to do this gives us a few things 15:56:08 using apache instead of HAProxy - Does it make any difference? 15:56:31 we don't need to deploy haproxy on every node 15:56:58 WSGI becomes an implementation detail 15:57:06 using apache instead of HAProxy - Does it make any difference? 15:57:12 yeah, we have extra apaches :-) 15:57:18 so the architecture doesn't change when you switch 15:57:40 I like mgoddard's idea more 15:57:41 and we don't need to add an intermediate design which we then have to support or deprecate and remove 15:57:47 especially if most are wsgi anyway 15:58:05 If most are wsgi, then it’s a simple fix? 15:58:18 And then let’s worry about the rest? 15:58:33 is there some wsgi/non-wsgi listing anywhere? 15:58:56 I believe kklimonda did a first pass at that list 15:59:01 if people think the local-haproxy architecture is better, we could do that path instead. I'm just not so keen on doing both :) 16:00:06 I thought the TCP passthrough idea was interesting. I assume we could still do it with apache? Would there be any certificate weirdness? 16:00:13 mgoddard - has there been any work done towards putting apache inside the container where wsgi does not already exist? 16:00:32 scottsol: nope 16:00:50 I think that could be a good solution 16:00:50 but a proxy config should be easy enough 16:01:12 just configure the service to listen on localhost, then you don't get a port conflict 16:01:33 we are out of meeting time I'm afraid 16:01:49 I don’t like that path to be honest... sounds like obfuscation and double work :) 16:01:51 let's carry on in this channel though if people are available - it's good discussion 16:02:04 #endmeeting