18:00:41 <daneyon> #startmeeting container-networking
18:00:42 <openstack> Meeting started Thu Oct  8 18:00:41 2015 UTC and is due to finish in 60 minutes.  The chair is daneyon. Information about MeetBot at http://wiki.debian.org/MeetBot.
18:00:43 <openstack> Useful Commands: #action #agreed #help #info #idea #link #topic #startvote.
18:00:46 <openstack> The meeting name has been set to 'container_networking'
18:00:54 <daneyon> Agenda
18:00:59 <daneyon> #link https://wiki.openstack.org/wiki/Meetings/Containers#Agenda
18:01:25 <daneyon> The agenda has not changed from last week
18:01:39 <daneyon> This is going to be a short meeting today.
18:01:42 <daneyon> #topic roll call
18:01:45 <daneyon> o/
18:01:49 <dane_leblanc> o/
18:01:50 <Tango> o/
18:01:53 <eghobo_> o/
18:02:17 <daneyon> Thank you dane_leblanc Tango eghobo_ for joining the meeting.
18:02:27 <daneyon> #topic Review Swarm patch.
18:02:30 <daneyon> #link https://review.openstack.org/#/c/224367/
18:02:40 <daneyon> I thought the patch would be done over a week ago
18:02:57 <daneyon> However, I have struggled rebasing multiple times due to recent merges
18:03:01 <daneyon> First it was the tls code
18:03:12 <daneyon> Now it's this merge
18:03:18 <hongbin> o/
18:03:20 <daneyon> #link https://github.com/openstack/magnum/commit/156e315e98dfa7a0ebe759bb78639c66eb0d8b77
18:03:26 <daneyon> thanks hongbin for joining
18:04:01 <daneyon> I am having problems with the wait condition for the master node... been troubleshooting it for over a day now :-(
18:04:30 <daneyon> Otherwise the patch works great and all the tox tests should pass.
18:05:41 <daneyon> In general, our heat templates are a BIG challenge. They are very complicated with serval areas that you need to touch.
18:05:55 <daneyon> And we have soooo many different templates.
18:06:07 <daneyon> each, with tons of overlap.
18:06:22 <hongbin> agree
18:06:22 <Tango> Hopefully the consolidation will help
18:06:30 <daneyon> I think this is a real issue that we need to address in Tokyo
18:07:23 <Tango> Is it a topic yet in the etherpad?
18:07:35 <hongbin> Yes, it is already there
18:07:42 <daneyon> yes it is Tango
18:07:54 <Tango> ah, #17
18:08:30 <daneyon> I know tcammann is working on front-ending the templates with jinja templates. I think this approach has it's own problems.... mainly another layer to touch.
18:08:49 <Tango> If it's not covered in the design sessions, I think we have a work day at the end
18:08:51 <daneyon> The heat team has suggested using provider resources and a resource registry... this is what tripleo does.
18:09:19 <hongbin> I like the provider resources approach
18:09:30 <Tango> How does that work?
18:09:36 <hongbin> It allows us to plug in a new networking model I think
18:09:38 <daneyon> hongbin agreed.
18:10:00 <daneyon> let me find and post the link to tcammann's wip patch that uses jinja
18:10:03 <daneyon> one moment
18:10:08 <hongbin> Tango: It works by defining custom heat resources.
18:10:46 <daneyon> #link https://review.openstack.org/#/c/211771/
18:11:09 <daneyon> Steven Hardy provided some good feedback regarding an alternate approach.
18:11:36 <daneyon> Also capture by adrian_otto in a bug
18:11:40 <daneyon> #link https://bugs.launchpad.net/magnum/+bug/1501045
18:11:40 <openstack> Launchpad bug 1501045 in Magnum "Tech Debt: Consider nested stacks instead of generated templates" [Wishlist,New]
18:12:25 <daneyon> I think it comes down to someone from the community really diving into the templates and refactoring them.
18:13:03 <Tango> Maybe we can grab Steve Hardy in Tokyo for discussion
18:13:39 <daneyon> In general using provider resource and registry will make our templates far more compossible. This will be critical as we support multiple variations of realizing a bay.
18:13:53 <daneyon> Tons of options from coe, distro, network-driver, etc..
18:14:08 <daneyon> Tango good idea
18:14:08 <Tango> It would be good to learn from the TripleO experience
18:14:21 <daneyon> Tango can you make note of that on the etherpad?
18:14:31 <Tango> Sure
18:15:11 <daneyon> #action Tango to add a request to have Steve Hardy join our discussion related to refactoring heat templates.
18:16:04 <daneyon> As soon as I can figure out the issue I'm having making my patch work with https://github.com/openstack/magnum/commit/156e315e98dfa7a0ebe759bb78639c66eb0d8b77 I will post a new patch set that should be ready for merge
18:16:36 <daneyon> #topic Review Action Items
18:16:39 * daneyon danehans to continue coordinating with gsagie on a combined kuryr/magnum design summit session.
18:16:52 <daneyon> I have spoke to gsagie. They are still working through the details on their end
18:17:43 <daneyon> I have also requested that adrian_otto finalize our schedule b/c/ kuryr is interested in joining our networking related sessions.
18:18:04 <daneyon> I will carry the action forward until we finalize the details... hopefully next week.
18:18:20 <daneyon> #action danehans to continue coordinating with gsagie on a combined kuryr/magnum design summit session.
18:18:43 <daneyon> #action danehans to follow-up with adrian_otto regarding summit schedule and details.
18:18:48 <daneyon> #topic Open Discussion
18:19:37 <daneyon> Is anyone interested in adding a network driver other than flannel or kuryr?
18:19:51 <Tango> What's next after flannel has been factored for k8s and swarm?
18:20:27 <daneyon> After flannel is implemented using network-driver and labels, is their any other networking-related work that needs to be accomplished?
18:20:30 <Tango> What's a good driver to consider?
18:21:37 <daneyon> Tango flannel is implemented in k8s. How it's implemented in the heat templates can be improved. That should hopefully get addressed in the larger template refactor.
18:21:44 <daneyon> swarm should be done any day now
18:21:58 <daneyon> I need to work on mesos
18:22:34 <daneyon> Tango I plan to implement a driver called netplugin
18:22:37 <daneyon> #link https://github.com/contiv/netplugin
18:23:06 <daneyon> netplugin is applicable to all bay types
18:24:09 <hongbin> daneyon: any reason why you choose it to be the next one?
18:25:20 <daneyon> hongbin I know the driver pretty well and should be able to implement it fairly easy, the maintainers have offered their support to assist me, it works with all our bay types, etc..
18:25:48 <daneyon> folks from cisco are involved and I work for cisco.
18:25:57 <hongbin> I see
18:26:21 <daneyon> I am hoping that we can get other drivers merged in the near future too
18:26:30 <daneyon> I think Calico would be high on the list.
18:27:05 <daneyon> #link https://github.com/projectcalico/calico-docker
18:27:17 <daneyon> Does anyone have connections at metaswitch?
18:27:21 <hongbin> I think OpenVSwitch is also high
18:28:00 <eghobo_> maybe OVN
18:28:02 <daneyon> hongbin from my understanding ovs will come through kuryr
18:28:12 <daneyon> maybe ovs is a libnetwork driver too
18:28:16 <daneyon> let me double check
18:28:30 <hongbin> daneyon: yes, ovs as a libnetwork driver :)
18:28:54 <daneyon> off hand, i'm not sure if the libnetwork overlay driver uses ovs
18:28:56 <daneyon> #link https://github.com/docker/libnetwork/blob/master/docs/overlay.md
18:29:00 <daneyon> I don;t think so
18:29:17 <daneyon> I believe it uses linux bridges and vxlan from kernel
18:30:25 <daneyon> hongbin unless i'm incorrect about the libnetwork overlay driver, none of the native libnetwork drivers implement ovs. Therefore, someone would need to add an ovs native driver or a remote driver would need to implement ovs.
18:30:42 <hongbin> daneyon: ack
18:31:01 <daneyon> netplugin implements ovs and kuryr can implement ovs if neutron is configured to use the ovs agent.
18:31:30 <daneyon> you can see ovs as a libnetwork driver here
18:31:32 <daneyon> #link https://github.com/contiv/netplugin/tree/master/drivers
18:32:57 <hongbin> I see
18:33:19 <hongbin> BTW, I have a feeling that we don't have agreement on which one will be the third one
18:33:20 <daneyon> eghobo_ I would like to see OVN too
18:33:30 <daneyon> A remote driver will need to implement OVN.
18:34:17 <daneyon> hongbin here are my thoughts on adding network-drivers
18:34:43 <daneyon> As with other code, I am open to anyone from the community adding a driver as long as the code is solid.
18:35:49 <hongbin> I agree that is the goal for long term
18:35:52 <daneyon> I think we as a community focus on supporting 1 driver, flannel and others that add add'l drivers are responsible for maintaining the driver.
18:36:18 <daneyon> If the person(s) that add add'l drivers do not maintain the driver code they added, it gets pulled.
18:36:38 <daneyon> b/c i don;t think we can support every drive that can get added.
18:36:49 <daneyon> i think this is similar to neutron
18:37:56 <hongbin> My worry is that we don't have the plugable architecture ready yet, so accepting too many drivers is a burden
18:38:14 <daneyon> IMO I don;t think we need to agee on what drivers to add beyond flannel. I think it's up to dev's to freely add drivers as long as the code is solid. I think this is a similar approach to what we take for the rest of the magnum project.
18:38:25 <daneyon> someone please correct me if I'm wrong.
18:38:58 <daneyon> hongbin the pluggable arch is there for k8s. Soon it will be there for swarm, then mesos.
18:39:22 <hongbin> but our templates is not plugable yet ...
18:40:12 <daneyon> If someone wanted to add an add'l driver for k8s, it should work. It would also be good b/c then we can truly know multiple network-drivers actually work
18:40:54 <Tango> Has anyone tried a different overlay network on k8s?
18:40:56 <daneyon> right now we only test passing network-driver flannel or we don't pass anything. A 2nd driver will be good for validation purposes.
18:41:19 <hongbin> k
18:41:30 <daneyon> Tango I have used both UDP and VXLAN overlay options for the flannel driver.
18:41:37 <daneyon> both work
18:42:00 <daneyon> as well as passing other configurable parameters such as the subnet lnegth, etc... all works
18:42:03 <daneyon> for k8s
18:42:20 <Tango> Right, I mean, say using netplugin on k8s
18:42:24 <hongbin> I am thinking to add kuryr as the 2nd driver maybe
18:42:25 <daneyon> and swarm minus this patch: https://github.com/openstack/magnum/commit/156e315e98dfa7a0ebe759bb78639c66eb0d8b77
18:42:52 <daneyon> Adding another driver will be good to validate multiple drivers actually work.
18:43:15 <daneyon> Tango no.
18:43:54 <daneyon> As drivers get added, we will truly know how well the network-driver and labels implementation actually works
18:44:18 <Tango> Yep, that would be a good exercise to validate the whole architecture
18:44:23 <daneyon> i feel confident it will work. However, it will work better after we address our heat template issues.
18:44:47 <daneyon> hongbin I think it would be great to add kuryr
18:45:08 <hongbin> yes, just not sure what is the state of kuryr right now
18:45:31 <Tango> Something to consider is to document the work so far and the steps for adding new drivers
18:45:39 <daneyon> I've been a bit disconnected from kuryr the last few weeks as I've tried to focus my time on implementing the Magnum container network model across the bay types.
18:45:39 <hongbin> daneyon: And agree with you that addressing the heat template issues is a high priority
18:46:29 <daneyon> IMO I think it's still a bit early to implement kuryr. But as I said, you are free to implement any driver as long as the code is solid and it works.
18:46:58 <daneyon> All does everyone agree on our what I said ^ about adding drivers?
18:47:15 <daneyon> Any recommendations?
18:47:27 <hongbin> Agree if the new drivers is in a separated repo
18:47:35 <Tango> How about contrib?
18:47:36 <hongbin> or in a contrib folder
18:47:47 <daneyon> Tango agreed 100%. I will definitly document the network-driver and labels stuff
18:47:58 <daneyon> After I get swarm working, I will take that on.
18:48:10 <Tango> Good to capture the thought when they are still fresh :)
18:48:11 <daneyon> who here knows mesos well?
18:48:21 <hongbin> me :)
18:48:33 <hongbin> or eghobo_
18:48:54 <Tango> hongbin: I would have never guessed :)
18:49:51 <hongbin> daneyon: Back to the new drivers staff, I think it is better to consult with Adrian before proceeding.
18:50:06 <daneyon> hongbin agreed
18:50:37 <daneyon> #action danehans to address how to add new drivers with adrian_otto
18:51:10 <daneyon> We'll circle back on the topic next week. Hopefully I'll have feedback from adrian_otto by then.
18:51:19 <daneyon> any other open discussion?
18:51:54 <daneyon> I guess that's a wrap.
18:52:10 <daneyon> Thanks for joining and see you next week
18:52:13 <daneyon> #endmeeting