03:00:16 <hongbin> #startmeeting zun 03:00:17 <openstack> Meeting started Tue Aug 23 03:00:16 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:18 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. 03:00:20 <openstack> The meeting name has been set to 'zun' 03:00:21 <hongbin> #link https://wiki.openstack.org/wiki/Zun#Agenda_for_2016-08-23_0300_UTC Today's agenda 03:00:26 <hongbin> #topic Roll Call 03:00:33 <sudipto> o/ 03:00:34 <eliqiao> hi 03:00:38 <Namrata> namrata 03:00:59 <mkrai> Madhuri Kumari 03:01:48 <hongbin> Thanks for joining the meeting sudipto eliqiao Namrata mkrai 03:02:13 <hongbin> Wenzhi sent a message to me that he won't attend this time 03:02:24 <hongbin> Let's start 03:02:35 <hongbin> #topic Announcements 03:02:48 <hongbin> 1. Welcome Sudipta Biswas and Wenzhi Yu to the core team 03:03:11 <hongbin> Thanks sudipto and wenzhi for the contribution 03:03:13 <sudipto> Thank you everyone who voted! 03:03:19 <mkrai> Congrats sudipto Wenzhi. Welcome to the team:) 03:03:22 <hongbin> yeah 03:03:33 <hongbin> #topic Review Action Items 03:03:39 <hongbin> 1. hongbin creates an etherpad to brainstorm ideas for container image store solution (DONE) 03:03:44 <hongbin> #link https://etherpad.openstack.org/p/zun-container-image 03:04:06 <hongbin> Want to work on the etherpad or do it as a homework? 03:04:42 <mkrai> Let's take it the end after we finish the rest of the discussion 03:04:52 <hongbin> sure 03:05:00 <hongbin> #topic Runtimes API design (mkrai) 03:05:07 <hongbin> #link https://blueprints.launchpad.net/zun/+spec/api-design The BP 03:05:11 <hongbin> #link https://etherpad.openstack.org/p/zun-containers-service-api The etherpad 03:05:16 <hongbin> #link https://etherpad.openstack.org/p/zun-containers-service-api-spec The spec 03:05:34 <hongbin> I think the basic of the runtime API is there 03:05:48 <mkrai> We now have the docker APIs running. 03:05:49 <hongbin> Thanks mkrai for the hard work 03:05:59 <mkrai> I hope rest of the team have tried :) 03:06:00 <hongbin> Yes 03:06:09 <mkrai> Thanks to you too hongbin :) 03:06:16 <hongbin> welcome 03:06:22 <eliqiao> good work mkrai. thanks. 03:06:38 <mkrai> Thanks eliqiao 03:06:57 <hongbin> For now, I think it is a good time for everyone to try the API 03:07:03 <hongbin> and enhance it 03:07:29 <hongbin> For example, I am thinking if we should add support for interacive mode 03:07:36 <eliqiao> Actually, I am thinking to add tempest api cases and enable it in gate 03:07:42 <hongbin> Like, docker -it busybox 03:07:50 <sudipto> eliqiao, that'd be great. 03:08:05 <hongbin> Yes, that would be great 03:08:08 <sudipto> Yeah, I am in the process of trying it out - however I am struggling with a few things on the start up doc - i hope to find a solution to it today. 03:08:29 <sudipto> Like i told in the group before, i am trying to create a very quick bootstrap env for the developers to try out zun 03:08:46 <hongbin> sudipto: I guess the easier way is devstack 03:09:10 <hongbin> sudipto: however, ping me if you want any help though 03:09:20 <sudipto> yeah for now - for sure. But hopefully once i am through you can evaluate this option too. 03:09:43 <sudipto> as a part of that - i have created 2 containers - 1. mysql 2. rabbit + keystone. and a 3rd container with a privileged mode to run zun 03:10:03 <sudipto> while on the 3rd container - i have some minor issues, that will hope to sort out today. 03:10:18 <sudipto> The docs probably need a refresh too - i mean the startup doc 03:10:29 <sudipto> #link: https://github.com/openstack/higgins/blob/master/doc/source/dev/quickstart.rst 03:10:33 <hongbin> Yes, it possibly needs 03:10:46 <hongbin> It hasn't been updated for a while 03:11:10 <hongbin> sudipto: as usual, just ping hte channel if you need any help 03:11:12 <sudipto> Sure i will do that. 03:11:33 <sudipto> mkrai, i might need some time of yours today - if you are free for sometime. 03:11:49 <mkrai> Sure sudipto 03:12:14 <hongbin> OK. Let's advance topic 03:12:22 <hongbin> #topic Nova integration (Namrata) 03:12:28 <hongbin> #link https://blueprints.launchpad.net/zun/+spec/nova-integration The BP 03:12:35 <hongbin> #link https://etherpad.openstack.org/p/zun-containers-nova-integration The etherpad 03:12:51 <hongbin> Namrata: ^^ 03:12:56 <Namrata> hi. 03:13:33 <Namrata> i was on holiday for last week so unable to updat the patch 03:13:37 <Namrata> i will do this week 03:13:49 <hongbin> Namrata: get that 03:14:04 <hongbin> Namrata: anything you need from the team so far? 03:14:52 <Namrata> i see some good comments on patch 03:15:12 <Namrata> i will ping on irc if i need anything 03:15:28 <hongbin> Namrata: awesome 03:15:43 <hongbin> Thanks Namrata 03:15:50 <hongbin> Next one 03:15:55 <hongbin> #topic Container image store 03:16:03 <Namrata> thanks everbody for reviewing 03:16:14 <hongbin> #link https://etherpad.openstack.org/p/zun-container-image 03:16:33 <hongbin> Want to discuss the container image now? 03:17:02 <sudipto> My vote is for Yes. 03:17:10 <hongbin> Maybe I pause for a few minutes for you to read though the etherpad 03:17:17 <hongbin> sudipto: Yes for? 03:17:23 <sudipto> As in - let's discuss a bit 03:17:36 <hongbin> ok 03:17:47 <mkrai> There is no perfect solution as of now 03:18:10 <sudipto> DO we want to support 'building' of images? 03:18:17 <sudipto> via a zun API? 03:18:41 <hongbin> sudipto: what is your opinion about that? 03:19:39 <sudipto> basically that would help us answer the image management question better. 03:20:14 <sudipto> I haven't used the APIs yet - but how do we select a image now to run a container? 03:20:25 <sudipto> from zun i mean 03:20:29 <hongbin> It pull it from docker hub 03:20:39 <mkrai> It now downloads from docker hub 03:20:48 <sudipto> Ok - so basically it creates a image cache on the local host 03:20:57 <sudipto> for the next 'run' 03:20:59 <sudipto> right? 03:21:01 <hongbin> yes 03:21:19 <sudipto> Ok that workflow works for all public images 03:21:43 <sudipto> However, there's no way to segregate these images via tenant isolation. 03:21:58 <hongbin> No, there is not 03:22:21 <sudipto> so when we say glance/glare support - we are basically cutting off from docker hub completely? 03:22:28 <hongbin> We need a multi-tenant image store 03:22:47 <hongbin> sudipto: Not necessary 03:23:00 <sudipto> let's say i have the images in glance. A docker run - then would get the images from glance right? 03:23:01 <mkrai> We should keep it configurable I think so 03:23:09 <mkrai> Yes 03:23:22 <hongbin> Get it from Glance first, 03:23:23 <sudipto> Can we really do that? 03:23:32 <hongbin> If not there, get it from docker hub 03:24:06 <sudipto> as in a docker run would want to boot from the local cache eventually by either docker pull or if it's cached - then just reading it from there. 03:24:26 <sudipto> so do you expect glance to do something like a docker pull? 03:24:40 <hongbin> There is a solution though 03:24:40 <sudipto> as in zun does a docker pull from glance 03:24:52 <hongbin> 1. store docker image as a tar file 03:25:02 <hongbin> 2. pull hte tar file from Glance 03:25:13 <hongbin> 3. docker import xxx.tar 03:25:29 <hongbin> Then, the tar file is extracted to localhost 03:25:33 <sudipto> ok 03:26:01 <hongbin> I guess this is the nova-docker solution? 03:26:18 <sudipto> yeah that's how nova docker should have worked. 03:26:32 <sudipto> Even though i haven't used it. 03:26:44 <hongbin> The disadvange is the layer of image is not supported 03:26:53 <sudipto> you mean every pull is a fresh pull 03:26:57 <hongbin> since there is a tar file, no layer 03:27:12 <hongbin> Yes, every pull is a full pull 03:27:16 <hongbin> no layer 03:27:30 <sudipto> i guess it needs us to also consider what storage driver is supported on the host 03:27:33 <sudipto> which docker does for us now. 03:27:45 <sudipto> https://docs.docker.com/engine/userguide/storagedriver/selectadriver/ 03:28:14 <sudipto> So if the host is X - it might have a storage driver Y - and similarly a different combination for another host. 03:28:19 <hongbin> docker export/import is indepedent of storage driver I think 03:28:29 <sudipto> no no - i am not talking about that. 03:28:45 <sudipto> I am probably jumping the gun and looking at glance or something else outside of docker supporting image layering 03:28:59 <hongbin> ok 03:29:21 <sudipto> my point being, if we put it outside of docker - the software which would eventually store this image - would have to be aware of the storage driver - no? 03:29:48 <hongbin> My guess is no 03:29:50 <sudipto> maybe not. 03:30:09 <hongbin> since docker has a way to import/expose images as I mentioned 03:30:35 <sudipto> Ok i was talking about running 2 containers with the same image - with a union filesystem backing on a host. 03:30:48 <sudipto> docker i guess should be able to take care of that - post we have downloaded the image. 03:31:15 <sudipto> I will write my thoughts on your ether pad hongbin :) 03:31:20 <sudipto> and have a discussion on the IRC channel. 03:31:25 <hongbin> sure 03:31:31 <mkrai> Sorry got disconnected 03:31:51 <hongbin> mkrai: we were talking about docker image for different storage driver 03:32:15 <mkrai> Okay 03:32:45 <hongbin> sudipto is writing on the etherpad. Let's check how he write 03:36:14 <mkrai> hongbin: How can we commit to a image in localhost? 03:36:32 <hongbin> there is a docker commit command 03:36:54 <hongbin> we can add support for that in zun 03:39:02 <sudipto> I feel we can support both - the docker registry or glance 03:39:11 <sudipto> glance comes in with being slow 03:39:19 <sudipto> while docker registry comes with no multi-tenancy 03:39:24 <sudipto> at this time of the writing. 03:39:39 <hongbin> sudipto: could we have both 03:39:48 <hongbin> sudipto: glance and docker hub 03:39:59 <sudipto> glance and docker hub won't be possible i think 03:40:21 <sudipto> or we can introduce a API flag - that would either get it from glance or from docker hub - based on what the user wants. 03:40:47 <hongbin> sudipto: we could get it from glance first, if not there, get it from docker hub 03:41:08 <sudipto> yeah - and possibly get it from docker hub into glance - would be the ideal behaviour then 03:41:37 <hongbin> an alternative is to introduce a flag 03:41:47 <sudipto> zun run <image_id> --> look up glance --> not there --> try from docker hub --> image found --> download to glance --> download to the localhost --> boot the container. 03:41:50 <hongbin> zun pull busybox (get it from glance) 03:42:05 <hongbin> zun pull docker.io/busybox (get it from docker hub) 03:42:28 <mkrai> sudipto: you mean private docker registry. Right? 03:42:36 <sudipto> mkrai, no 03:42:48 <sudipto> private docker registry is another option all together 03:42:52 <sudipto> that would not need glance. 03:43:12 <mkrai> We should consider the case, not all users might have internet access 03:43:33 <sudipto> basically IMO - we should have one place for zun to get images from - be it local docker registry or glance or docker hub or xyz 03:44:05 <sudipto> that could be a tenant setting? 03:44:19 <hongbin> sudipto: could be a config 03:44:32 <sudipto> hongbin, per host config? 03:44:45 <hongbin> maybe per zun 03:44:47 <sudipto> or zun wide? 03:44:52 <sudipto> ok 03:45:31 <sudipto> ok if you basically want multi-tenancy - set zun to use glance. 03:46:14 <hongbin> sounds good 03:47:00 <sudipto> great. 03:47:13 <hongbin> maybe we could write down the proposal to the etherpad 03:47:20 <sudipto> Sure i will do that. 03:47:23 <hongbin> Then, let the team revisit it next meeting 03:47:24 <sudipto> and exchange it over ML? 03:47:32 <sudipto> or not needed? 03:47:34 <hongbin> yes, ML could work as well 03:47:36 <mkrai> Either works 03:47:46 <sudipto> I am just thinking ML might get some glance/glare folks interested. 03:48:10 <mkrai> Yes good point 03:48:18 <sudipto> nothing to loose kinda situation :) 03:48:40 <hongbin> OK 03:48:49 <sudipto> Get to ether pad - discuss and then once we have consensus - send to ML 03:49:00 <hongbin> k 03:49:16 <hongbin> Then, let's advance topic 03:49:26 <hongbin> #topic Multi-tenancy (Wenzhi Yu) 03:49:31 <hongbin> #link https://blueprints.launchpad.net/zun/+spec/support-multi-tenancy 03:49:37 <hongbin> Wenzhi cannot attend the meeting today, but he left me a message for the status 03:49:43 <hongbin> (Wenzhi): I submitted patch "Load wsgi apps with paste.deploy" 03:49:49 <hongbin> (Wenzhi): https://review.openstack.org/#/c/357615/ . The patch has already landed. 03:49:54 <hongbin> (Wenzhi): With this patch, we can now group the containers by tenants -- to each tenant, containers in other tenants are invisible. 03:50:00 <hongbin> (Wenzhi): If folks may have comments about this bp, please ask them to leave their comments on this etherpad https://etherpad.openstack.org/p/zun-multi-tenancy 03:50:05 <hongbin> (Wenzhi): I will read and address them later. 03:50:12 <sudipto> great 03:50:33 <hongbin> cool 03:50:43 <hongbin> #topic Open Discussion 03:51:26 <mkrai> We should now start on some documentation 03:51:35 <mkrai> It will attract some develops 03:51:48 <mkrai> s/develops/developers/ 03:51:49 <hongbin> Yes, the quickstart guide need to enhance 03:51:49 <sudipto> mkrai, totally agreed. 03:52:05 <hongbin> Let's create a bug for that 03:52:05 <sudipto> we need to expand base :) 03:52:20 <mkrai> hongbin: Can we create architeture diagram now 03:52:33 <hongbin> #action hongbin create a bug for enhancing the quickstart guide 03:52:36 <mkrai> I guess we have the base ready 03:53:04 <mkrai> I will create architecture diagram 03:53:11 <sudipto> mkrai, count me in 03:53:13 <hongbin> mkrai: there is one though 03:53:17 <hongbin> #link https://etherpad.openstack.org/p/zun-container-state-management 03:53:17 <mkrai> And try to write some information 03:54:37 <mkrai> I will take this as reference 03:54:47 <hongbin> ok 03:54:55 <mkrai> I want to create a doc that is short introduction to Zun 03:55:04 <hongbin> for sure 03:55:36 <mkrai> I get some pings asking for introduction of Zun 03:56:01 <mkrai> I want to avoid answering everytime ;) 03:56:11 <hongbin> oh, from who? 03:56:16 <hongbin> your manager? 03:56:42 <mkrai> Some developers from community and manager too 03:56:48 <hongbin> cool 03:57:02 <sudipto> lol 03:57:27 <hongbin> OK. Let's wrap up the meeting a bit earlier 03:57:34 <mkrai> Ok 03:57:39 <hongbin> and discuss in the IRC channel 03:57:41 <mkrai> Thanks all :) 03:57:44 <hongbin> All, thanks for joining hte meeting 03:57:47 <hongbin> #endmeeting