Monday, 2016-03-28

*** chenzeng has joined #openstack-smaug00:13
*** chenzeng has quit IRC00:14
chenyingHi eran, Could you help tag python-smaugclient a inital version? smaug-dashboard need a version of python-smaugclient, and add this to requirements.txt.01:45
openstackgerritsmile-luobin proposed openstack/smaug: Implement nova protection plugin  https://review.openstack.org/29561802:22
*** g00357909 has joined #openstack-smaug02:28
*** g00357909 is now known as gongxiaowei02:28
openstackgerritsmile-luobin proposed openstack/smaug: Implement nova protection plugin  https://review.openstack.org/29561802:29
openstackgerritWeAreFormalGroup proposed openstack/smaug: Implement glance protection plugin  https://review.openstack.org/29575203:10
*** huayi has joined #openstack-smaug03:46
*** huayi has quit IRC04:09
*** huayi has joined #openstack-smaug04:09
*** huayi has quit IRC04:11
*** gongxiaowei has quit IRC04:41
*** zhonghua-lee has quit IRC04:56
*** zhonghua-lee has joined #openstack-smaug04:57
*** gongxiaowei has joined #openstack-smaug04:59
*** gongxiaowei has quit IRC06:00
*** huayi has joined #openstack-smaug06:09
*** gongxiaowei has joined #openstack-smaug06:10
*** gampel1 has joined #openstack-smaug06:14
*** yuval has joined #openstack-smaug06:16
gampel1yinwei: hi06:16
gampel1yinwei_computer: ping06:21
*** huayi has quit IRC06:24
*** huayi has joined #openstack-smaug06:27
*** huayi has quit IRC06:32
*** gongxiaowei has quit IRC06:47
*** huayi has joined #openstack-smaug06:47
*** c00281451 is now known as chenzeng06:51
chenzenggampel:yinwei and wangliuan are in the conference now. they will be back at 16:00pm in Beijing.06:52
gampel1  Ok thx07:01
gampel1 chenzeng:' whats the status of your patches07:02
chenzenggampel:i think i and yuval have reached an agreements. the timetrigger will be finished asap.07:03
chenzenggampel:just one question should be verified.07:04
chenzengyuval:how about the question yesterday? have you verified the relationship between thread of rpc and the thread of timetrigger's greenthread07:06
*** huayi is now known as chenhuayi07:11
yuvalchenzeng: the rpc and the timetrigger are on the same thread07:12
chenzengyuval:how to verify?07:15
chenzengyuval:if they are on the same thread, we are no need to restart the greenthread, because they will run in serially07:17
yuvalchenzeng: correct. we only need to restart the greenthread once the timetrigger recurrence has changed07:17
chenzengno, i think we no need to restart greenthread even if changing the trigger recurrence.07:19
chenzengbecause the rpc and the trigger's greenthread will not run at the same time.07:20
yuvalconsider the recurrence of the time trigger is once every year. now we want to change it to once every hour07:21
yuvalif we don't cancel the greenthread and reschedule, the greenthread will sleep for a year07:21
chenzengok, sorry, i forgot this senario. you are right.07:22
chenzengbut how to verify the  they are on the same thread.07:24
*** huayi_ has joined #openstack-smaug07:25
*** chenhuayi has quit IRC07:27
*** huayi has joined #openstack-smaug07:30
*** huayi_ has quit IRC07:31
yuvaltry reading here:07:33
yuvalhttp://eventlet.net/doc/threading.html07:33
yuvaland07:36
yuvalnotice that greenthreads provide thread-like proprties07:36
yuvalsee eventlet/green/threading.py (_GreenThread)07:36
yuvalin threading.py, eventlet patches the threading library07:37
yuvaland when you call threading.current_thread()07:37
yuvalyou actually call greenthread's current_thread, which returns a greenthread, not a real thread07:38
chenzengok, i will try to verify. after verifying the problem, i think the timetrigger is finished. what do you think yuval?07:40
yuvalsounds great. have you thought about using the DynamicLoopingCall?07:56
yuvalchenzeng: if you need anything else, tell me :)07:58
chenzengyuval:no08:01
chenzengyuval:why must use DynamicLoopingCall?08:01
yuvalit is not a must, but it already implements what we are trying to do08:02
chenzengbut yesterday i told you why not use, and you agreed.08:04
chenzengi will check once more. if it is ok, i will use.08:05
*** gongxiaowei has joined #openstack-smaug08:22
yinwei_computerping gampel108:24
yinwei_computerping gampel08:24
gampel1I am in a weekly IRC meeting for dragonflow can talk after the meeting08:26
yinwei_computerok08:29
yinwei_computerI suppose you will end 30 minutes later, right?08:29
*** wangliuan has joined #openstack-smaug08:31
gampel1yes08:38
openstackgerritzengchen proposed openstack/smaug: Implement time trigger with Eventlet  https://review.openstack.org/29688008:42
yinwei_computerping gample109:01
gampel1hi09:01
yinwei_computergampel1: available now?09:01
gampel1yes09:01
yinwei_computerwe could start, liu an will join soon09:02
gampel1ok09:02
yinwei_computerwe saw your comment, yuval and you09:02
yinwei_computermaybe I have some misunderstanding here09:02
gampel1on the neutron plugins09:02
yinwei_computercould you pls. elaborate your idea?09:02
yinwei_computeryes, neutron plugins09:02
gampel1from the user perspective  we do not what him to chose different  sub resources of Neutron we want him to select09:03
yinwei_computeryes, I understand this point09:04
gampel1if he like to protect the networking conflagration of its project09:04
yinwei_computerany other point to make whole neutron sub resources as one?09:04
gampel1yes they are interconnected in teh Neutron Data module09:05
gampel1the only resources that are not are the aaS VPN , FW ...09:05
gampel1for the core resources  it does not make sense to separate them09:06
yinwei_computerhmm, so the point here is we don't want to make network, port, security group, router, to be separate plugins, since they are integrate and couldn't be composed09:07
yinwei_computerthere's only one combination09:07
yinwei_computerI see09:07
gampel1what to you gain from this09:07
yinwei_computeryes, that's what I want to tell the dilemma of the implementation09:07
gampel1I am not sure i understand  the dilma09:08
yinwei_computerif the user chooses a plan as a project, and in this project, we have dangling port/subnet/security group/router09:08
yinwei_computerbecause I haven't printed it all :)09:08
yinwei_computercontinue, shall we or shall not we protect those dangling network sub resources?09:09
gampel1worts case you have backed up extra metadata , in later phase we can optimize it to give the subset used by the selected resources09:09
gampel1in DF we have the same problem09:10
gampel1we want to push to CN only the updates that are relevant to him09:10
gampel1But in the first phase we are doing selective distribution by the Tenant ID09:11
gampel1I think it will be a good starting point for us as well , backup all the projcet networking resources09:11
yinwei_computerso, get back to protection service implementation, let me check:09:13
gampel1I think because this is metadata it will be very small amount of data09:13
gampel1I think it make sense latter to open the aaS router , fw, vpn etc to diffrent plugin but not in the first pahse09:13
yinwei_computerfor those network sub resources connected to server, their parent resource is server.09:13
yinwei_computeryes, I understand09:14
gampel1This is some think me and saggi had allot of discussion about09:14
yinwei_computerfirst phase we only check basic sub resources:port, network, security group, fixed ip09:14
yinwei_computerrouter09:14
gampel1currently  network is defined as child of projcet09:15
yinwei_computerbut server could depend on it, right?09:15
gampel1but it might need to be dependent on server09:15
yinwei_computeryes, that' what I want to double confirm with you09:15
yinwei_computerthere are two cases:09:16
yinwei_computer1. dangling network sub resources, the parent is project09:16
yinwei_computer2. network sub resources connected with server, the parent is server09:16
gampel1Currently we have the network as dependent on projcet we can not in our module have tow possible parents09:17
yinwei_computerwhy09:17
gampel1and in the first phase we want to protect all the projcet networking into one blob09:17
yinwei_computerif the parent is project only, during server restoration, how to build server with network?09:18
gampel1because  the protactabole are defining the dependency09:18
yinwei_computerif we have that limitation, does it mean we have problem in our resource graph building?09:19
gampel1you are talking about how to connect them09:19
yinwei_computerno, I'm talking about the dependency09:19
gampel1no this is the data module of our resources Volume will all ways be child of VM09:19
yinwei_computernot necessarily09:20
gampel1how not09:20
yinwei_computervolume could be dangling, not attached to vm but only existed in project, right?09:20
gampel1yes but it will not be child of the Project09:20
yinwei_computerwhat if user chooses a project with dangling volumes? will those volumes be included into our resource graph?09:22
yinwei_computeror in first phase, we don't take care of dangling resources?09:23
gampel1will you want to backup into the same paln any new volume created on that projcet ?09:23
gampel1I think that you can all ways select just that volume with as the root of your plan09:24
yinwei_computeryes, if the user has chosen the project in the plan, whatever created in the project we need take care.  Isn't it?09:24
yinwei_computerper my understanding, automatically discover resources is a feature of smaug09:25
gampel1yes09:25
yinwei_computerwe allow user to choose plan on different layers of resources09:25
yinwei_computerit will be fancy if use only need choose a project and say, hey, smaug, protect it all09:26
yinwei_computermaybe I have some misunderstanding here09:26
gampel1Currently the networking is defined as dependent on project  and not on VM09:26
gampel1it can not be dependent on both09:27
yinwei_computerhmm, without network, even if we restore a vm with same data, how could people touch it?09:27
gampel1so you will need the projcet with the network09:27
yinwei_computerfrom saggi's resource graph design, one node could be child of multiple parents09:27
yinwei_computeram I wrong?09:28
yinwei_computerot09:28
yinwei_computerit's a graph not a tree09:28
gampel1Yes but in the resource protecactabole you define who could be you possible  parents09:28
gampel1Currently  networking is defined as child of projcet09:29
yinwei_computeryes, the resource itself should know who is his parent09:29
yinwei_computerserver or network09:29
gampel1we had allot of discussion on this point if net should be under project or server09:29
yinwei_computerif we don't make network attached with servers as child of server09:30
yinwei_computerhow to solve the restoration dependency?09:30
yinwei_computerwe need first build network then server with reference to those network09:30
gampel1what we discussed about that is to consider networking as part projcet09:31
yinwei_computermaybe I have missed this part of discussion'09:31
yinwei_computernow my question is, with your discussion result, how to solve the restoration dependency issue09:32
gampel1VM restore does not have to happen in the protection plugin right ?09:32
gampel1it is not like Volume data it is mostly meta data unless you want to restore to running VM09:32
yinwei_computeryes, we need restore to running VM, no matter in plugin or in heat09:33
yinwei_computereven with heat, to build the template resource, we need server resource to refer network resource09:33
yinwei_computerif network resource doesn't exist, I have no idea how to describe the server resource network properites09:34
gampel1So if you are just Restoring one VM you do not care what network it will get , you only care whan it is part of a project with muti Vms09:34
yinwei_computersorry I don't get your point09:35
yinwei_computertake heat resource template as example09:35
gampel1What does it mean to restore one VM09:35
gampel1it is to create VM with the volumes that were attached to it and the KVM properties he run with09:36
gampel1the Ip that he will get will not matter unless he is part of a project  backup09:36
gampel1and SG rules are only relevant to other ports in the projcet09:37
gampel1so you need to my understanding "networking" only when you are backup and restore more then one connected VMs09:38
yinwei_computerLet me confirm09:38
yinwei_computerdo you mean we only restore vm with volume attached and kvm properties, but no any network properties09:38
gampel1No09:39
*** wangliuan has quit IRC09:39
yinwei_computerand we create network resources independently09:39
gampel1this is tru in my mind if you backup one VM09:39
yinwei_computerthen we attach those servers to the network at last09:39
gampel1if you backup a Project  with few VM you then care about the newtork09:40
gampel1I agree with you that it is not clear where in the dependency  the Networking should go09:40
gampel1But I think that we should think from the user perspective what will be the simplest way09:41
yinwei_computerthe trouble here is, I'm not sure whether it's possible to create a server without port09:41
gampel1CreateVM cerates the Port09:41
yinwei_computerand then we create network independently, and at last we associate the port created in network with the server09:41
gampel1when you call Create server you give it a name and a subnet09:41
yinwei_computerbut the subnet hasn't created yet09:42
yinwei_computercreate one server will spawn the server at the same time, right?09:42
yinwei_computerwhat if the server spawn up but with a port connected to an un-existed subnet?09:43
gampel1Yes so in my mind the generate Heat if we have the newtorking will take care of that and if we do only one VM restore it can be auto generated09:43
yinwei_computerno09:43
*** wangliuan has joined #openstack-smaug09:44
*** huayi has quit IRC09:44
gampel1A networks object. Required parameter when there are mulitple networks defined for the tenant. When you do not specify the networks parameter, the server attaches to the only network created for the current tenant.09:44
gampel1/v2.1/​{tenant_id}​/serversCreate server09:45
gampel1this is from Nova API09:45
gampel1Let me just get the resource dependencies we define one sec09:45
yinwei_computerdo you mean by default the tenant has one network? what if the tenant doesn't have any network?09:46
gampel1it is an Optional parameter for nova create server09:47
gampel1one sec09:47
gampel1link:https://github.com/openstack/smaug/blob/master/doc/source/specs/available_protectables.pu09:49
*** huayi has joined #openstack-smaug09:50
gampel1that's the way we defined the dependency , I agree that with Networking we might consider changing that09:50
yinwei_computerI don't think there's any conflict, since by design, they are graph09:51
gampel1netrworking have allot of properties that are not dependent on Server09:51
gampel1in this link Net is not dependent on Server09:51
gampel1only on the project09:52
*** wangliuan has quit IRC09:52
gampel1if we deep dive into the data module of Neutron VM is dependent on Port09:53
*** wangliuan has joined #openstack-smaug09:53
yinwei_computeryes09:53
gampel1but all the other networking resources are not related to teh VM09:53
yinwei_computerthe problem here is you couldn't build a server without port and attach them later09:53
gampel1when you cann nova Create server it will call Neutron create port internally09:54
yinwei_computerif we can build them independently, we could certainly make network with unique parent as project09:54
yinwei_computeryes09:54
yinwei_computerthat's the problem09:54
gampel1so thats why we choose to have the net dependent on projcet , but again  this is open to discussion09:55
gampel1We had allot of discussion about that but now if we see theres a problem in this for the restore desgin in could be cahnged09:56
yinwei_computerthe fact is we couldn't build a vm without network, and attach the vm to the network later, right?09:56
gampel1yes09:56
gampel1I think that we do not need to cerate the VM just create the Heat template09:56
yinwei_computerthe issue in heat template is the same09:57
gampel1and update the networking info into the heat Template from the Networking protection plugin09:57
yinwei_computeryou couldn't refer a resource doesn't exist09:57
gampel1I think that in heat I can cerate a network and then create a VM on that network09:58
yinwei_computeryou need first build the network resource template, then have vm resource template to refer it09:58
yinwei_computerit's your lunch time and our dinner time09:58
yinwei_computershall I catch you later, and let's think over it more?09:58
yinwei_computerchenzeng will leave shenzhen tommorrow, so we will have dinner together tonight09:59
gampel1Ok lets cont tomorrow if we need to to change the dependencies i am opend for that09:59
gampel1making the net dependent on VM09:59
yinwei_computersure, if saggi's here we could chat together09:59
gampel1Ok sure09:59
yinwei_computerthanks, bye09:59
gampel1but net should bve considerd one blob in theis pahse ok ?09:59
*** gongxiaowei has quit IRC10:11
*** huayi has quit IRC10:11
*** huayi_ has joined #openstack-smaug10:12
*** huayi_ has quit IRC10:16
*** gongxiaowei has joined #openstack-smaug10:21
*** huayi_ has joined #openstack-smaug10:48
*** gongxiaowei has quit IRC10:57
*** huayi_ has quit IRC11:16
gampel1dd11:44
*** x00350071 has quit IRC12:30
*** x00350071 has joined #openstack-smaug12:31
*** huayi_ has joined #openstack-smaug12:42
*** huayi_ has quit IRC12:45
*** huayi_ has joined #openstack-smaug12:46
*** huayi_ has quit IRC13:01
*** huayi_ has joined #openstack-smaug13:01
*** huayi_ has quit IRC13:31
*** openstackgerrit has quit IRC13:48
*** openstackgerrit has joined #openstack-smaug13:48
*** yuval has quit IRC15:24
*** gampel1 has quit IRC20:41

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