Tuesday, 2016-03-29

*** huayi has joined #openstack-smaug01:41
*** x00350071 has quit IRC02:06
*** x00350071 has joined #openstack-smaug02:08
*** huayi_ has joined #openstack-smaug02:29
*** huayi has quit IRC02:30
openstackgerritzengchen proposed openstack/smaug: Implement time trigger with Eventlet  https://review.openstack.org/29688003:33
*** yuval has joined #openstack-smaug06:12
*** gampel1 has joined #openstack-smaug06:21
yuvalping chenzeng07:03
yinwei_computeryuva, chenzeng is on the way flying back to chengdu07:06
yinwei_computergampel1: if we agree that multiple parents is allowed in our resource graph, I will have liu an to implement network protectable in following way07:08
yinwei_computer1. make basic network sub resources into one plugin, including network, port, fixed ip, subnet, router07:09
yinwei_computer2. for get_dependent_resources: if the parent is project, it will return all network resources not attached to any server; if the parent is server, it will return network resource attached to the server;  Here the network resource means the item described in item 1;07:14
yinwei_computer3. for both image and volume protectable, it seems that we need add logic to handle dangling resources case.07:15
chenyingping gampel107:16
yinwei_computerying, you're back?07:16
yinwei_computeror work from home?07:16
chenyingYes I am back today. in company.07:17
chenyingyinwei, Will we consider multiple parents now?07:21
*** Zengchen has joined #openstack-smaug07:24
*** Zengchen has quit IRC07:27
*** chenhuayi has joined #openstack-smaug07:28
yinwei_computerchenying, I'm still checking it with Eran07:40
yinwei_computerthere're some cases which couldn't get handled with single parent07:40
chenyingOk07:45
chenyingping gampel107:45
gampel1 hi  yinwei_comput07:46
gampel1hi   chenying07:46
chenyingHi Eran  Could you help tag python-smaugclient a inital version?07:46
chenyingsmaug-dashboard need a version of python-smaugclient, and add this to requirements.txt.07:46
gampel1I will add you now as core and you could do that sorry for the delay07:47
chenyingOk Thanks.07:47
saggiHi everyone!07:48
chenyingbtw, I am back today. in company now. :D07:48
gampel1done07:48
gampel1yinwei: ping07:48
gampel1great we need to move everything fwd07:48
gampel1there are allot of patches with merge conflict and un addressed comments07:49
gampel1chenying:  let me know if you need my help07:50
chenyingyes thanks.07:51
chenyingsaggi Xinyong and I have several questions about the operation log api. Would you pls help address the comments?07:53
saggiI'm looking at the patch now07:58
yinwei_computergampel1: I will have Bin, Liu an, Rong to address the comments08:02
openstackgerritwangliuan proposed openstack/smaug: Implement the  protection flow  https://review.openstack.org/28101108:40
*** yinwei_computer has quit IRC09:22
*** yinwei_computer has joined #openstack-smaug09:22
*** gampel has quit IRC10:44
*** gampel has joined #openstack-smaug10:45
openstackgerritwangliuan proposed openstack/smaug: Fix missing "enabled_providers" in global config  https://review.openstack.org/29866411:07
yinwei_computerping saggi11:09
yinwei_computerping gampel111:09
yinwei_computerping yuval11:09
yuvalyinwei_computer: ping11:12
yinwei_computerhello, yuval11:13
yuvalhey, how are you?11:13
yinwei_computerdoing good11:13
yinwei_computeris saggi there with you?11:13
saggiyinwei_computer: I'm ere11:14
saggihere11:14
yinwei_computergood11:14
saggi:)11:14
yinwei_computerEran asked me to check the details of network plugins with you guys11:14
yinwei_computerhe might be out for another meeting11:15
saggiyinwei_computer: He's always in at least two meetings at once11:15
yinwei_computerit's good you guys both there11:15
yinwei_computerhah11:15
yinwei_computer:)11:15
yinwei_computerok11:15
yinwei_computersaggi, could you tell more about your reply?11:16
yinwei_computerI mean the email reply, where you said the dependency is implicit and not presented in the tree11:17
saggiyinwei_computer: Sure, in general we agree that it's a good idea to separate the core from the l3aas.11:17
saggiThis stems from the general idea that the port and sg are properties of a VM11:17
saggibut routers\fip\etc are orthogonal to any single vm11:17
yinwei_computeryes, agree11:18
saggiBut let's imagine that we have a subnet 10.0.0.0/1611:18
yinwei_computeryes, go ahead11:18
saggiIt's l2 so there might be a VM that has a port on it11:18
saggibut there might also be a router that has a port on it11:19
saggiThis means that there is a logical connection between the l3 component and any l2 component that has a router connected to it11:19
yinwei_computeryes11:19
yinwei_computerthat's what I asked in my reply11:19
openstackgerritYuval Brik proposed openstack/smaug: Split Provider configuration into files  https://review.openstack.org/29867311:19
yinwei_computerif this is the case, it seems that we need first build l2 subnet than l3 router, right?11:20
saggiWhen we restore, we will need to create any subnet for that router even if there is no VM connected to that subnet11:20
yinwei_computeryes11:20
yinwei_computerthen why not this dependency is not in the tree11:20
yinwei_computersorry, why this dependency is not in the tree11:21
saggiSince it will show l3 depending on all almost the networks in the system11:21
saggiwhich is not very helpful11:21
yinwei_computerit should be explicit11:21
yinwei_computerif we don't show this in the tree, how could restore procedure make use of this dependency?11:22
saggiIt will be in the l3 md11:22
saggiI understand that. But from the users11:22
saggipoint of view11:22
saggiit can't really do anything with the dependent l2 networks.11:23
saggisince they are required for l3 restore11:23
saggiUnlike volumes11:23
yinwei_computerwhen you say user's point of view, do you mean we still make this dependency into the dependency graph smaug internally keeping, but won't show it in UI to users?11:24
saggiThe problem is that we can't have that. So what I want to figure out is if we can just have the l3 contain all the subnet information as part of it's own md and also each vms11:24
yinwei_computerI'm not sure if I get your point11:24
saggivms' l2 info11:24
saggiLet's first define how will an l2 resource dependent on a VM look like.11:25
saggiFrom what I understand we don't want to split port\subnet\sg11:25
yinwei_computeryes11:25
saggiWe will just have a single resource like (VM Network Info)11:26
saggiWhich will contain all the ports\subnet\sg information11:26
yinwei_computerlet's go through from this begin point11:26
yinwei_computernp, go ahead11:26
saggiThis means that if I back up 3 vms. I will have 3 VmNetworkInfo. Which might contain duplicate information.11:27
yinwei_computerand this network resource could be shared with other VMs11:27
yinwei_computeras child11:27
saggilike a subnet will be defined multiple times.11:27
yinwei_computerno11:27
saggihow?11:27
saggisince the all have different ports11:27
saggiSo if a VM has 2 ports in 2 different subnet it will have to child NetworkInfos?11:28
yinwei_computerlet me see11:28
yinwei_computerthe root is we have l2 sub resources into one resource11:29
saggiroot?11:29
yinwei_computersome of them are 1:1 to vm, some are 1:n to vm11:29
saggiroot issue?11:29
yinwei_computerroot cause of the dilemma, I mean11:29
yinwei_computeryes11:29
saggiok11:29
saggiyes, we might have a subnet\sg defined multiple times11:30
saggisince they don't have their own object11:30
saggibecause they are a must have implicit dependency11:30
saggiIf you want to back up a port you MUST back up the sg and subnet11:31
saggiunlike volumes and vms11:31
yinwei_computerI see your point11:31
yinwei_computerlet me see the sequences11:31
yinwei_computerwe only allow one unique combination of network subresources, so we only have one l2 protectable/protection plugin11:32
saggiyes11:32
saggiWe could solve it inside the protection plugin for l2.11:33
saggiIt would make sure to only create the subnet once.11:33
yinwei_computerif we limit all l2 resources into one resource node, they might be repeated since some of them are excluded by one vm, like port, some are shared by vms, like l211:33
yinwei_computerhow about this11:33
yinwei_computeralthough we only have one protectable plugin, we still make different resource graph node for different sub resource11:34
yinwei_computersince resource graph node is an internal implementation for smaug11:34
saggiInternally?11:34
yinwei_computeryes, inside the network protectable plugin11:35
yinwei_computerdoes current protectable plugin framework allow for this?11:35
saggiYou suggest letting protectables add complex entities to the tree11:36
* saggi is thinking about it...11:36
yinwei_computerone protectable may add more than one kind of resource graph node into the tree11:36
yinwei_computerpreviously, our principle is one protectable only supports one resource type11:37
yinwei_computernow, the case is the resource itself may include sub resources11:37
saggiWe have support for one protectable supporting multiple resource types.11:37
saggiThe issue is that those resource types shouldn't be visible to the user11:38
saggionly internally during tree building11:38
yinwei_computeryes11:38
saggiYou suggest adding "internal protectables"11:38
saggior something similar11:38
yinwei_computerthose sub resource types are invisible for users11:38
* saggi is thinking about it a bit more...11:38
yinwei_computerjust used for building resource graph and building protect/restore task flow11:39
saggiBecause protectables already define connections bottom->up we could just have a flag in the registry for internal resource types.11:40
yinwei_computersorry, I didn't get your suggestion11:41
yinwei_computerwhat interface do you mean in protectable plugin?11:42
saggiWhen you define a protectable plugin you define what types you might depend on. Which means that having types that don't report their relationship is simpler than if we had that the other way around.11:42
saggiWhich means we can register a plugin as hidden for a type.11:44
* saggi is making a graph to make sure we are on the same page11:46
yinwei_computerok, thanks11:49
yinwei_computerRe-checked current protectable plugin interface, I'm thinking if we could make another abc class:CompositeProtectablePlugin based on protectable plugin interface.  It will also implement the the interfaces of the protectable plugin, but it will dispatch the sub resource type to its sub protectable plugin.  And in protectable registry, we map all su12:00
yinwei_computerb-resources with the same prefix to the composite protecatble plugin.12:00
saggiyinwei_computer: yuval just came in I12:04
saggiI'm catching him up12:05
yinwei_computersay, we define resource type as network-l2, but inside it the protectable plugin provider could define sub resource types, like network-port, network-subnet, network-sg.  The network protectable is a CompositeProtectablePlugin, and configured with those sub protectable p12:05
yinwei_computerlugins12:05
yinwei_computerok12:05
yinwei_computersure12:05
yinwei_computerwe guys may need think more about the details12:05
yinwei_computerat least, we are clear on the issues: one protectable plugin can't be split, how to share the sub resources and build dependency inside12:06
*** gampel has quit IRC12:10
*** gampel1 has quit IRC12:10
*** gampel has joined #openstack-smaug12:11
*** saggi has quit IRC12:12
*** gampel1 has joined #openstack-smaug12:15
yinwei_computergampel1: saggi is making a graph while I proposed a comopsiteProtectablePlugin way.  I think we both need think more about the implementation detail.12:16
*** gampel has quit IRC12:16
yinwei_computerI may need catch the bus home, and will check liu an tommorrow as well.12:17
*** saggi has joined #openstack-smaug12:27
*** gampel has joined #openstack-smaug12:27
chenyingping gampel112:29
saggichenying: I'm here, what's up?12:31
chenyingHi eran  I need you help. how to tag python-smaugclients a inital version?12:32
chenyingHi saggi Do you know how to tag python-smaugclients a inital version?12:35
saggichenying: Maybe this can help you http://docs.openstack.org/infra/manual/drivers.html ?12:38
chenyingOk Thanks12:41
*** CrayZee has joined #openstack-smaug12:56
*** yuval has quit IRC13:05
*** chenhuayi has quit IRC13:35
*** openstackgerrit has quit IRC15:06
*** openstackgerrit has joined #openstack-smaug15:06
*** x00350071 has quit IRC17:07
*** x00350071_ has joined #openstack-smaug17:07
*** huayi_ has quit IRC18:29
*** gampel1 has quit IRC18:37
*** huayi_ has joined #openstack-smaug19:12
*** huayi_ has quit IRC20:12
*** huayi_ has joined #openstack-smaug20:18

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!