03:00:02 #startmeeting zun 03:00:03 Meeting started Tue Jul 19 03:00:02 2016 UTC and is due to finish in 60 minutes. The chair is hongbin. Information about MeetBot at http://wiki.debian.org/MeetBot. 03:00:04 Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 03:00:07 The meeting name has been set to 'zun' 03:00:09 #link https://wiki.openstack.org/wiki/Zun#Agenda_for_2016-07-19_0300_UTC Today's agenda 03:00:14 #topic Roll Call 03:00:20 O/ 03:00:28 o/ 03:00:30 o/ 03:00:32 Madhuri Kumari 03:00:53 o/ 03:01:18 o/ 03:01:25 o/ 03:01:31 o/ 03:01:33 o/ 03:01:45 Thanks for joining the meeting Namrata yanyanhu shubhams__ mkrai eliqiao sudipto kragniz Qiming flwang1 03:01:53 #topic Announcements 03:02:00 I have no announcement 03:02:06 Anyone has? 03:02:26 #topic Review Action Items 03:02:32 1. hongbin create an etherpad for the COE API design (Done) 03:02:39 #link https://etherpad.openstack.org/p/zun-coe-service-api 03:03:00 We can work on the etherpad as a homework 03:03:07 2. mkrai to create an etherpad for nova-integration (Done) 03:03:13 #link https://etherpad.openstack.org/p/zun-containers-nova-integration 03:03:28 I have written just my view point there. 03:03:42 ack 03:03:49 3. shubhams to create a bp for managing state of containers 03:04:03 Created a bp 03:04:04 shubhams__: you have any update? 03:04:31 I have created a bp and working on the same 03:04:48 shubhams__: do you have a link to the BP? 03:04:53 #link https://blueprints.launchpad.net/zun/+spec/container-state-management-poc 03:05:09 shubhams__: thanks :) 03:05:17 status: Done 03:05:23 4. madhuri Add points why we want to integrate with nova on BP whiteboard 03:05:34 Done 03:05:42 Ok I have done that in etherpad itself 03:05:50 yes 03:05:54 #topic Runtimes API design 03:06:19 mkrai: your stage :) 03:06:28 Ok so I have written the basic APIs 03:06:49 Now I am working on docker controller patch to incorporate them all 03:07:08 I don't think we need spec for same 03:07:25 No, I don't think so 03:07:28 mkrai, you mean the API controller? 03:07:40 Yes 03:07:43 I see 03:07:56 #link https://review.openstack.org/#/c/328444/ 03:08:16 If anyone has any concern they can comment on the patch 03:08:55 hongbin, thats all 03:08:55 mkrai: there should be a related etherpad ? 03:09:00 Yes 03:09:11 mkrai: can you please link it on the patch? 03:09:21 for easy reviewing 03:09:23 Yes sure I will do that 03:09:32 eliqiao, good point :) 03:09:37 mkrai: thanks :) 03:09:44 #link https://etherpad.openstack.org/p/zun-containers-service-api-spec 03:09:51 Above is the link for API spec 03:10:07 Thanks mkrai 03:10:12 Next topic 03:10:14 #topic Nova integration 03:10:22 #link https://blueprints.launchpad.net/zun/+spec/nova-integration The BP 03:10:27 #link https://etherpad.openstack.org/p/zun-containers-nova-integration The etherpad 03:10:55 hongbin, In last team meeting there were some concern on integrating with nova 03:11:08 I saw the log of last meeting, it looks there are concerns on this direction 03:11:11 Do we have strong point on doing that? 03:11:19 Yes 03:11:30 yanyanhu: Qiming : ^^ 03:11:50 sudipto, ... 03:11:57 I think it mainly falls on the nova-docker use case 03:12:00 :) 03:13:12 silent... 03:13:20 not sure whether there is use case, but from unified compute resource perspective, we may need it 03:13:34 there are use cases we want to support where people want to treat containers as light-weight virtual machines 03:14:15 Qiming, i think that's a very good use case. I have always thought of the nova integration being more seemless for an isolated/secure container workflow. 03:14:51 per the ML discussion, it does seem like nova-docker has a few consumers. 03:15:23 No one is maintaining it I guess 03:15:24 yep, that's my perception too 03:15:40 dims proposed to retire nova-docker 03:15:46 my only thing is - we should focus on the core of zun before the integration work - so that we have something solid out first. But if the team wants to do nova integration first, i have no problem. 03:16:21 Well, the rule of open source is who want it, who is the one to do it :) 03:16:28 if there is no obvious conflict, we may want to try pursue these two goals in parallel 03:16:48 agreed, hongbin 03:16:51 If nobody interrest to take the task, then it means nobody think it is useful, we don't need to worry about that anymore 03:17:29 I believe there are many variants out there, :) 03:17:30 at least not an urgent need I think if nova-docker will still be available in short future 03:17:31 Who is taking hte nova integration bp? 03:18:12 I want to 03:18:23 Namrata_: go ahead 03:18:35 okay thanks 03:18:36 thanks, Namrata_, pls let me know if helps needed 03:18:49 Thanks Namrata_ 03:18:55 okay 03:19:20 sudipto: If there is a volunteer, it looks we can do both in parallel. 03:19:32 hongbin sure. 03:19:58 Any thing else to discuss about nova integration? 03:20:01 Cool now we have an agreement :) 03:20:15 :) 03:20:32 Namrata_: Do you have idea about the design? implementation? 03:20:37 my concern is how to test that 03:20:59 Nova now doesn't support out-of-tree driver. 03:21:02 currently i am going through ironic driver 03:21:24 Namrata_: Yes, that is a good start 03:21:49 eliqiao: I guess we can setup a pipeline in the gate? 03:22:24 nova always believe it is the god <-- okay, not funny 03:22:48 :) 03:22:55 :D 03:23:32 haha. nova is the father. 03:23:33 hongbin, you mean a test job with nova pre-setup? 03:24:03 yanyanhu: Yes, it should be as easy as a normal devstack setup 03:24:12 and install Zun nova driver when building job 03:24:15 eliqiao, do they plan to take out ironic driver also? 03:24:27 hongbin, yes, it will work I think 03:24:46 mkrai: no, I meant nova doesn't want to support virt-driver which is out of nova tree. 03:25:08 eliqiao: No, we support the out-of-tree driver 03:25:37 eliqiao, you mean the virt-driver interface will no longer be supported by nova? 03:25:47 eliqiao: We have the driver in our tree, have a devstack plugin to set it up, and test it in gate 03:26:09 yes and I guess that is more preferrable 03:26:15 It lies in our tree 03:26:20 And we manage it well 03:27:02 right, we are not talking about having nova team to support the container driver in zun 03:27:14 hongbin: yes, I know that, but for nova loading our virt-driver, I am not sure if it's a easy work. 03:27:18 zun team can do it, no? 03:27:20 hongbin: check https://review.openstack.org/#/c/309504/ 03:27:40 Qiming, +1, for users who have requirement, they can get it from Zun repo 03:27:42 yanyanhu ^^ check the link 03:28:16 eliqiao: We can figure out how to do that later. 03:28:33 hongbin: okay, just checked, it's reverted. 03:28:39 eliqiao: No need to bother the technical details at the beginning IMO 03:29:00 okay, I have no concern now. it's okay to go. 03:29:26 eliqiao: Thanks for pointing it out though 03:29:31 eliqiao, thanks for link. This change makes thing complicated I think... 03:29:37 great, that stupid patch is reverted 03:30:00 yanyanhu: Qiming :( the reverted patch abandoned :( 03:30:23 https://review.openstack.org/#/c/310255/ 03:30:28 sigh... 03:31:10 There must be a way to hack it in my feelings 03:31:20 Especially we control the devstack 03:31:25 "The out of tree drivers just need to tweak their packaging to make this work." 03:31:26 so that will become Nova's decision: whether there is a Nova driver for Zun 03:31:33 from Matt in the review comment 03:31:39 so that is the 'workaround' 03:32:48 Any more comment? 03:33:07 OK. Advance topic 03:33:10 #topic Re-consider RabbitMQ. How about using key/value store (i.e. etcd) for passing messages 03:33:37 I guess this was discussed in the last meeting as well? 03:33:48 For this, work is in progress .. 03:33:51 Not in detail 03:34:15 but from what I have looked upon, it looks like that etcd is better option 03:34:34 shubhams__: reason for etcd? 03:35:00 Because of scalability and its ability to handle cases like failures 03:35:32 shubhams__: hmm... I am okay to try new stuff, but does OpenStack has such oslo lib to using etcd ? 03:35:47 Since container can live a short life , so we need to select a solution that handles node failures well 03:35:58 eliqiao : I need to check that 03:36:07 shubhams__: cool, thanks. 03:36:15 Isn't there any openstack project already using it? 03:36:27 taskflow 03:36:31 mkrai: good question, that also I want to ask. 03:36:41 ah.. good example. 03:37:07 Ok 03:37:09 hongbin : you mean taskflow uses etcd? 03:37:09 Frankly, all COEs are using key/value store 03:37:31 shubhams__: yes, (or zookeeper) 03:37:33 hongbin: yeah. we are more like a COE 03:37:51 hongbin : you are right , kubernetes uses etcd while docker supports consul and etcd as well 03:38:28 Then, it raises another question 03:38:36 do we need the rabbitmq? 03:38:36 hongbin, Ok so we can aim on using taskflow also? 03:38:40 i think the choice depends on what we want to establish from the data stores as well. Do you imagine running a etcd of zun's and then another etcd running for kubernetes? 03:38:45 (for example) 03:38:47 so we plan to develop a db driver to support etcd/consul as such key/value store? 03:38:54 mkrai: I am not sure about using taskflow or not 03:39:11 or Tooz? 03:39:12 http://docs.openstack.org/developer/tooz/ 03:39:19 so the question is more on the lines of - what do you want to store in etcd - a full fledged container state or something that is a proxy to the actual COE DB. 03:39:37 lock management, leadership election, group membership 03:39:47 sudipto: There are two things 03:39:50 yanyanhu: cool, which project using that? 03:40:00 eliqiao, heat has plan I know 03:40:06 sudipto: the Zun itself and the referenced COE 03:40:06 and also Senlin has plan :) 03:40:14 to use it manage distributed lock 03:40:16 cool yanyanhu 03:40:27 sudipto: We use etcd in the referenced COE, but in Zun 03:40:42 a little bit confused ... not sure I understand the question 03:40:44 it can support different kinds of backend, including zookeeper and etcd(as announced) 03:41:02 the topic is: " Re-consider RabbitMQ. How about using key/value store (i.e. etcd) for passing messages" 03:41:06 it will at least :) 03:41:20 Qiming: which part is confusing? 03:41:32 tooz cannot do message passing (aka. rpc), IIRC 03:42:02 Qiming: Here is how it works. Node A watch the etcd, Nova B write the etcd, Node A get notified 03:42:43 that is etcd's main use case 03:43:02 Qiming: Nova A watch K, Nova B write message to K, Nova A get message from K 03:43:22 so it is now treated as a (functional) superset of message queue? 03:43:41 I guess yes 03:43:49 That is how k8s works 03:44:04 okay, if that is true, it answers my question 03:45:10 However, etcd is just an option 03:45:22 I don't know if it fits into Zun or not 03:45:28 Another option is rabbitmq 03:45:51 yes . so far we have 4 options : RabbitMQ, etcd, taskflow and tooz 03:45:56 hongbin, need some investigation here I think. Tooz's scope is wider I feel 03:46:12 yanyanhu: sure 03:46:31 tooz seems not desgined to be a message passing venue I think 03:46:35 rabbitmq is just for message passing. Isn't it? We can't store state there 03:46:48 though it provides a better abstraction of DLM, group memberhips management etc 03:47:06 mkrai: rabbimq for message passing, etcd for storage 03:47:55 It seems we need a volunteer to investigate? 03:48:11 oh, cool, etcd is written in go 03:48:23 hongbin, I can spend some time on Tooz I think 03:48:35 yanyanhu: thx 03:48:43 but as Qiming said, it is not for messaging I feel 03:49:05 ack 03:49:16 also we can investigate how taskflow using etcd? 03:49:20 OK. I will take the task 03:49:31 I can check etcd 03:49:32 #action hongbin investigate an option for message passing 03:49:34 hongbin, I think its better to write our requirement on bp 03:49:40 shubhams__, ^ 03:49:45 shubhams__: sure. Feel free to join me 03:50:21 mkrai: what kind of requirement in your mind? 03:50:29 agree mkrai, better have a bp or etherpad to record the investigation result 03:50:50 yanyanhu, We do have one 03:51:16 hongbin, One is store containers state 03:51:31 great, will log result on it 03:52:12 hongbin, And message passing. I have one question here 03:52:35 https://blueprints.launchpad.net/zun/+spec/container-state-management-poc 03:52:41 hi, mkrai , this one? 03:53:03 This is a BP 03:53:03 Message passing above is between which nodes? 03:53:12 yes yanyanhu 03:53:15 got it 03:53:19 mkrai: between components 03:53:24 Where our containers are running? 03:53:41 mkrai: api <-> conductor? <-> agent 03:54:07 Ok got it 03:54:07 container is running on zun-compute (an agent) 03:54:13 just added an etherpad for it 03:54:14 https://etherpad.openstack.org/p/container-state-management 03:54:16 But do we want to reconsider it? 03:54:19 added link to bp 03:54:30 Nice 03:54:34 Is there any performance overhead or anything? 03:55:01 rabbitmq is used in all projects for message passing 03:55:04 The more components we have, the more overhead on the message queue 03:55:51 #topic Open Discussion 03:56:03 sorry, please use this one: https://etherpad.openstack.org/p/zun-container-state-management 03:56:06 add zun- prefix 03:56:12 k 03:56:31 mkrai: Yes, but we are developing a referenced COE now 03:57:16 mkrai: I doubt if rabbitmq still fit into a COE? as they fit into the OpenStack project? 03:57:30 mkrai: Frankly, I don't know. 03:57:48 hongbin, Sorry for confusion but I think rabbitmq part is independent of etcd 03:58:32 Where comes rabbitmq in picture for COE? 03:58:46 COE has its own etcd which we don't need to worry 03:59:05 mkrai: My argument is rabbitmq is universal in openstack 03:59:14 mkrai: but it is not used in any COE 03:59:34 Yes 03:59:53 Ok I think we should move over to #zun 04:00:01 Thanks hongbin 04:00:06 Yes, the team meeting is end 04:00:14 All. Thanks for joining the meeting 04:00:16 thanks 04:00:17 #endmeeting