15:01:19 #startmeeting openstack-cyborg 15:01:19 Meeting started Wed Jun 14 15:01:19 2017 UTC and is due to finish in 60 minutes. The chair is zhipeng. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:01:20 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 15:01:22 The meeting name has been set to 'openstack_cyborg' 15:01:37 #topic BP discussion 15:01:55 #info the api spec has been updated to reflect the latest comment 15:02:05 #link https://review.openstack.org/#/c/445814/ 15:03:14 plz help review it, would be nice to merge it by the end of this week 15:04:22 and then I think I will take over the cyborg-nova interaction spec 15:06:08 any thoughts on the api spec so far ? 15:06:13 zhipeng, Will do 15:06:26 Need to look at the API spec 15:06:58 okey no problem 15:07:05 moving on to the next topic 15:07:12 #topic code development process 15:07:21 crushil how's the code going ? 15:08:22 It's going. I have pushed the WIP up for the driver. I will fill out my code pending your work and jkilpatr's work 15:08:54 morning everyone. 15:09:10 Conductor is very stubby working on getting it hooked up to rabbit today. 15:09:11 morning :) 15:09:45 crushil have you submitted the code yet ? 15:10:10 yup he did on sudnay 15:10:15 sunday* 15:10:19 Yup 15:10:38 Morning jkilpatr 15:10:44 oh did not see that yet 15:11:13 well there is a thought when I update the api spec today 15:11:23 I have a patch up for an internal accelerator object because I need one in both the conductor and the agent and didn't want to duplicate code. 15:11:49 that the generic driver should morph into a standalone library for local and remote accelerator attach/detach 15:12:19 so that means we have attach/detach library and then the pci passthrough driver build ontop of it? 15:12:23 like os-brick 15:12:35 ok no idea what os-brick is 15:13:31 yes, just import the lib and use it 15:13:31 so the background story is 15:13:31 back in the days 15:13:31 every cinder driver has to do attach/detach on its own 15:13:39 either iSCSI, FC, or what have you 15:14:11 then cinder project extract that part of code out and formed a new sub project called os-brick 15:14:23 bascially provide a common lib for the attach/detach 15:14:39 the benefit is that, you could use it even Nova is not involved 15:14:54 for example attach a volume for baremetal host 15:15:45 and cinder driver could just include the lib and call the functions they need 15:17:36 zhipeng, So, are you proposing we should move our generic driver code eventually into something like OS-brick? 15:17:59 yes that is my current thinking 15:18:12 in the near future 15:18:46 I don't understand why though? 15:19:27 for the sake of abstraction 15:19:38 instead of having to attach.nvidiagraphicsdriver 15:19:49 coz currently you are defining the basic operations for the drivers right ? 15:19:53 we would do attach(nvidiagraphics driver object) 15:20:15 and at the end of the day, most of the attach/detach operstions will be the same for most of the drivers 15:20:24 yep 15:20:51 too much abstraction is counterproductive and I see that in a lot of openstack projects, but this level makes sense. 15:21:40 Ok, we can talk more about it as the design progresses 15:21:58 I find it easier to write somthing monolithic then I understand how to break it out easier 15:22:08 yes of course :) 15:22:34 haha 15:23:07 enough of the microservice hype 15:24:35 tech has a bad habit of coming up with ideas that are great in very specific situations then applying them to everything and realizing their bad ideas to follow blindly 15:24:42 in general do what makes sense. 15:25:09 Anyways back on topic. RPC vs messaging vs direct linking 15:25:19 indeed 15:25:47 rpc places the responsibility for error handling into the caller, so for example if I where to have the conductor call attach via rpc then the conductor would need to handle possible errors (at least the way I understand it) 15:26:08 in general I think API -> conductor should be RPC 15:26:19 and conductor -> agents should be message passing 15:26:32 and then agents -> drivers should be just direct linking (we import the python modules on the same machine) 15:27:06 i think it makes sense on the agent->driver side 15:27:08 adding a messaging/rpc server to every driver is just bad design, what if you load 100 drivers? do you just have 100 new servers that need to run and listen 15:27:20 but considering scaling problem, conductor should still rpc to agent ? 15:29:45 so rpc would be less messaging load sure, but then what if the command fails, we have to put the error handling into the conductor 15:29:51 where I'd argue it really does not belong 15:30:23 I guess we could have a wrapper to handle all failures on the agent. but I'm still not super happy with the idea. 15:30:33 opinions on this are appreciated. 15:31:28 as far as I know, when we deploy cyborg, conductor is more than likely on a different node than the agent 15:31:40 so even taking into consideration of the error handling 15:31:50 RPC would still be a preferred choice 15:51:11 ok then. 15:52:10 I still need to figure out how oslodb works so that the conductor can save stuff out. 15:53:07 right :) 15:55:26 so we should probably define when we want to merge these components, do we want to go all the way to first POC with everything in reviews? 15:56:15 i think i could try 15:57:55 it's going to make all up tests a little frustrating (trying to get all the components together) but I'm fine with that. 15:59:50 well we definitely will be expecting failures :P 15:59:52 for sure 16:37:13 zhipengh: did you forget to end the meeting again? 20:53:22 Ahhh shit ... 02:17:30 #link https://twitter.com/nopainkiller/status/876941606846320642 02:17:51 fyi I just did a OVS Orbit podcast with Ben Plaff at LinuxCon Beijing 02:18:09 on OVS and Cyborg, the episode will likely be online around early July 02:18:18 would be a good publicity for Cyborg :) 02:18:43 and I also update our master slide deck a bit to reflect a possible relationship between Cyborg and OVS 02:18:50 as well as Cyborg and Cillium 02:21:03 #link https://docs.google.com/presentation/d/1xXjqlMaXjXe7mn-iwoETGcTPnTbqCDfpaT6yqlZ8srE/edit?usp=sharing 02:21:11 and if i remember correctly .. 02:21:14 #endmeeting