14:03:31 #startmeeting kuryr 14:03:32 Meeting started Mon Nov 27 14:03:31 2017 UTC and is due to finish in 60 minutes. The chair is dmellado. Information about MeetBot at http://wiki.debian.org/MeetBot. 14:03:33 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 14:03:35 The meeting name has been set to 'kuryr' 14:03:40 Hi kuryrs ;) 14:03:45 who's here today for the meeting 14:03:47 ? 14:04:00 hi 14:04:07 hi 14:04:20 #chair irenab 14:04:21 Current chairs: dmellado irenab 14:04:40 #chair dulek ltomasbo 14:04:41 Current chairs: dmellado dulek irenab ltomasbo 14:04:48 o/ 14:04:50 o/ 14:05:00 #topic kuryr-kubernetes 14:05:21 0/ 14:05:27 Hi folks, do you have anything about this topic today? ;) 14:05:40 also, ltomasbo irenab dulek I'll be having you chair this if you don't mind 14:05:47 as I'm in another meeting at the same time xD 14:06:03 dmellado: sure 14:06:14 dmellado, I'm also at 2 meetings at the same time :) 14:06:21 lets have an update on current activities? 14:06:22 ltomasbo: you too?X D 14:06:46 dmellado: you should have days without meetings 14:06:49 sure, who wants to start 14:06:54 irenab: I would toally love that 14:07:07 Fridays are more or less like that usually 14:07:18 Okay, I can start. 14:07:35 I'm looking into daemon side VIF choice idea. 14:07:52 Here's more info: https://blueprints.launchpad.net/kuryr-kubernetes/+spec/daemon-pool-port-choice 14:08:05 dulek: the reason is to have less/no work on the controller side? 14:08:05 irenab raised concerns on how this will work with network policies. 14:08:30 irenab: Yes, it's to distribute the work. 14:09:01 dulek: still keeping worker nodes without the need to access neutron API, right? 14:09:20 irenab: That is the plan - all Neutron calls will be done in controller. 14:09:48 And controller->CNI daemon "communication" will happen through KuryrPort objects that are CRDs. 14:09:49 dulek: so the approuch is strongly built on pre created port pools? 14:10:08 100% based on pools. Is that an issue? 14:10:34 I am still concerned about the policies stuff, since not sure how it plays with the pools 14:10:41 leyal: any idea on this? 14:10:56 I'm having those concerns as well. 14:11:22 And that's why it's taking me so long time to even come up with consistent design - it's a lot of moving parts to take care of. 14:11:48 I am not sure that i understand exactly what this change means .. 14:12:10 dulek: can you please elaborate a bit 14:12:11 ? 14:12:26 leyal: You're aware how port pools work currently? 14:12:51 dulek , yes 14:13:23 Okay. So now as we have CNI daemon, which is standalone service that run on every node, we can try to shift some work controller is doing to the CNI daemon. 14:13:53 The idea is to leave pool management to controller (shrinking and expanding pools as pods get created or deleted). 14:14:16 And move the choice of VIF from the pool to kuryr-daemon. 14:14:40 So each kuryr-daemon is aware what ports are assigned to its pool by the controller. 14:14:55 And can just choose VIF from the pool in there. 14:15:25 while pool is key-ed by node-project-sg, right? 14:15:26 Oh and annotate them! 14:15:45 so from network-policy prespective - it's mean that the cni should be aware to the SG of POD .. 14:16:31 Hm, not sure here really. 14:16:40 as it's need to know from which pool it's need to take the interface .. 14:16:59 Current pools design doesn't cope too well with updating a SG of the port. 14:17:18 yep, updating sg rules are ok 14:17:19 currently the SG is part of pool-key .. 14:17:28 creating a new one, means a new pool 14:18:03 ltomasbo: but policy can be assigned to existing pod 14:18:08 Mhm. I'm not sure how network policies are supposed to be modeled - by updating the SG of the port or by creating SG (SGs) for each Network Policy that got created? 14:18:25 irenab, but would that mean, changing the sg assigned to it, right? 14:18:27 yes , but pod can be attached to many SG's as it's can be assigned to many policies .. 14:18:44 irenab: Ah. So there's an issue regardless of my previous question. 14:18:46 dulek: please see the proposal: https://review.openstack.org/#/c/519239/ 14:19:07 ltomasbo: ^^ 14:19:32 an option could be to not delete the ports whose sgs had changed, but putting then back into a new pool 14:20:00 which will require coordination between controller and node 14:20:24 right now it will not matter if you change the sg of a port, the thing is that when you delete that port, the sg will be reapplied, the initial one 14:20:28 ltomasbo, I didn't understand ,we"ll have pool per SG ? 14:20:29 dulek: what details will KuryrPort CRD hold? 14:20:36 my mind concern is what to do with the ports on the pool 14:20:49 *main 14:21:07 but we should support ports that should be attached to multiple SGs 14:21:10 should we leave them, and create new pools? move the ports from a pool to another 14:21:16 irenab: Currently I thought of VIF and nodeName it's assigned to, but this is still being thought out. 14:21:25 the latter will end up in a chunk of calls to neutron, which will kill the performance 14:21:50 yboaron, yes, the key include all the sgs 14:22:16 I think the fundamental issue we need to solve first is to connect current implementation of port-pools and network policies. 14:22:30 dulek: +1 14:22:32 As it sounds to me that designs are not compatible as-is. 14:22:36 so, if a port is in 2 sgs (sg_1 and sg_2 )will be in a different pool than another port with just have sg_1 or sg_2 14:22:40 Even without the bp I'm working on. 14:22:52 but if for example we should bind SG1,SG2, and SG3 to specific port , from which pool it should be allocated ? 14:23:03 dulek +1 14:23:09 dulek: but preferably before the one you work on 14:23:28 irenab: Totally, I don't want to break everything! 14:23:32 dulek , i think that's ok , as the port-pool use group of SG's as key , and we can still can use it in the network-policy .. 14:23:39 yboaron, there should be a pool with ports that already have sg1, sg2 and sg3 14:23:43 another issue is that now , with policies we will have SGs that can be changed dynamically 14:24:28 yes, but we need to consider the performance (regardless of using the pools or not) 14:24:52 we definitelly don't want to change the ports at the pool everytime a network-policy change 14:25:01 I think we may need a dedicated discussion on pool/policies concern 14:25:05 perhaps it is about time to implement the TTL that ivc proposed for the port pools 14:25:08 ltomasbo: I'd expect change of network policy to be rather rare. 14:25:17 so that when a network policy is created, a new pool is created for it 14:25:33 and if the previous one is not use, it will progressively delete the unused ports 14:25:36 irenab, do you think that in real-case it's will change Frequently ? 14:25:57 also, what type of changes? 14:26:06 leyal: no, I think it expresses the application connectivity map, so should be quite stable and predefined 14:26:06 if it is adding rules to a sg, there is no problem with that 14:26:23 and if there are just changes to running pods, that is also independent of pools 14:26:24 but still can be changed 14:26:37 ltomasbo , it's not pool per policy as pod can be attached to many policies .. 14:26:43 ltomasbo: Change to pod = change to port, isn't it? 14:26:53 yes, but not to pool 14:27:07 keep in mind that ports that belong to the pools, are the one that are not in use! 14:27:16 ltomasbo: But if SG of a port changes, we need to move it to another pool, aren't we? 14:27:25 ltomasbo: Oh. Nice. 14:27:34 yes, but it will be pretty easy to create a new pool on deletion 14:27:50 right now the policy is that if the sg was changed while attached to the port 14:27:56 we re-apply SG 14:28:04 Okay, I guess me and ltomasbo need to re-review the network policy spec from perspective of pools. 14:28:08 but we can do differently and put it back into a new pool 14:28:26 ltomasbo: Makes sense. 14:28:50 ltomasbo, you mean where pod is deleted ? 14:28:52 leyal: lets add a chapter in the policy spec on how it is supposed to work with the pools 14:29:14 irenab, leyal: yes, when pod is deleted 14:29:38 ltomasbo, +1 14:29:39 irenab, leyal: but do the network policy affect anything if there is no pods? 14:29:42 even if policy is already deleted? 14:29:53 I mean, when you create a new network policy, you just create an SG, right? 14:30:12 ltomasbo: correct 14:30:13 ltomasbo, yes 14:30:23 ltomasbo: Potentially SGs. 14:30:31 irenab, will do 14:30:34 well, 1-M sgs, 14:30:44 but then, you will create a new pod with the new policy 14:30:53 which means that it will need the new SG(s) 14:31:00 dulek, it's a real SG (maybe not attached to any port ) 14:31:09 and the pool will not exist, so kuryr will create 5 (or X) portsto popluate that pool 14:32:10 so, that should work, but we'll need a few extra polishing patch set to not leave a lot of leftovers 14:32:20 like populated pools that we will no longer use 14:32:49 and put back the modified ports on the new pools instead of the previous one 14:32:55 ltomasbo: it will create one pool or x num of nodes? 14:33:19 no, it just create a pool for a given node/vm 14:33:46 right now you do not populate ports in all the nodes, only in the ones with existing pods 14:33:51 unless you pre-create them 14:34:13 ok 14:35:34 ltomasbo, agree for the polishing-patch , and return the port to the new pools .. 14:36:21 cool, I'll sync with dulek about the impact of that on the cni side 14:36:45 ltomasbo: Okay! 14:37:01 ok, lets follow up on the relevant patches and irc channel 14:37:11 leyal, according to your design , every pod ration should end up with adding pod's port to specific SG , right ? 14:37:17 I guess I've used enough meeting time. Thanks for all the ideas! 14:37:26 creation 14:37:32 xD 14:37:43 yboaron, yes (at least to the default .. ) 14:38:26 that means that we still need to access neutron even if we'll have pre-created port m with the right SG's 14:39:12 yboaron: unless there are already pool with Policies SGs 14:39:32 yboaron, the por on the pool will be attched to the SG .. 14:39:48 ports* 14:40:16 leyal, irenab OK got it 14:40:48 shall we move to other updates/topics? 14:41:04 Yup! 14:41:12 dmellado: anything on testing? 14:41:28 irenab: basically testing the multinode gates 14:41:32 before pushing patches 14:41:41 I'm having some issues due to hardware limitations 14:41:45 but WIP 14:42:02 will be deploying mroe gates as soon as I get to properly test them as well as patches for the devstack configs 14:42:13 what I would require, though 14:42:21 is for volunteers to add more scenario tests 14:42:26 anyone up for that? :P 14:43:03 dmellado: maybe worth to have some page/etherpad to list future tests, so anyone having free cycle can try to pick one 14:43:20 those are marked on the blueprint 14:43:22 hold on 14:43:42 https://blueprints.launchpad.net/kuryr-kubernetes/+spec/functional-testing-catch-up 14:44:05 I'll be spending some time with gena to cover some of those but will add a whiteboard with the split to be assigned tests 14:44:09 + etherpad to comment 14:44:25 dmellado: great, thanks 14:44:28 #TODO (dmellado): create etherpad for scenario tests 14:45:01 dmellado: ltomasbo : regarding the matrox of different backends with kuryr 14:45:06 matrix 14:45:25 irenab: did you identify something that we were missing? 14:45:40 #link https://blueprints.launchpad.net/kuryr-kubernetes/+spec/enhance-upstream-gates 14:46:11 dmellado: I will check 14:46:29 irenab: thanks! 14:47:01 #action irenab to check is something is missing at https://blueprints.launchpad.net/kuryr-kubernetes/+spec/enhance-upstream-gates 14:47:15 dmellado: thank you for the update 14:47:32 any other updates/topics? 14:49:26 #topic open discussions 14:49:47 any non kuryr-kubernetes related topic to discuss? 14:51:04 I just wanted to mention that there is going to be PTG event during the last week of February. as a team we should decide if participate 14:51:56 I guess apuimedo will proceed with this dicussionduring the coming meetings 14:52:37 well, any other topic or shall we close a meeting a bit earlier? 14:53:47 I will count silence as ‘yes ‘to close earlier :-) 14:54:02 thank you all for participation 14:54:06 #endmeeting