SlideShare a Scribd company logo
Project Kuryr
Gal Sagie (@GalSagie)
http://galsagie.github.io
Net1
10.10.10.0/24
VM1
10.10.10.100
VM2
10.10.10.200
Virtual Machine or
Container
Virtual Interface (VIF)
Virtual Port
Virtual Network
Virtual subnet
Neutron Abstraction
Public Network
10.50.50.0/24
Router Router
Tenant A Net1
192.168.1.0/0
Tenant A Net2
192.168.5.0/0
Tenant B Net1
192.168.1.0/0
Tenant B Net2
192.168.9.0/0
VM1
192.168.1.5
VM2
192.168.1.7
192.168.5.2
VM3
192.168.1.9
VM1
192.168.1.3
VM2
192.168.1.3
192.168.9.5
VM3
192.168.9.7
You can build this
A Docker Container
Network Sandbox
Endpoint
A Docker Container
Network Sandbox
Endpoint
A Docker Container
Network Sandbox
Endpoint
Frontend Network
Endpoint
Backend Network
Container Networking : libnetwork
Where Have I Seen
That Before?
Neutron and libnetwork
A Docker
Container
Network
Sandbox
Endpoint
A Docker Container
Network Sandbox
Endpoint
A Docker
Container
Network
Sandbox
Endpoint
Frontend
Network
Endpoint
Backend
Network
Tenant A Net1
192.168.1.0/0
Tenant A Net2
192.168.5.0/0
VM1
192.168.1.5
VM2
192.168.1.7
192.168.5.2
What are the problems?
 Reinventing networking abstractions
 Changing and vendor specific solutions
 Flannel
 Weave
 SocketPlane
 Overlay2 for VM nested containers
 Performance, latency, SLA, management penalties
New Solutions For Containers Networking
Compute Node Node
Networking
Infrastructure
Compute Node
Nested Containers Overlay2
VM
BR-INT
BR-TUN
Docker0
Compute Node
VM
BR-INT
BR-TUN
Docker0
Flannel Overlay
Neutron Overlay
Neutron as the production ready
networking abstraction containers
need
Kuryr Solution
 Neutron as the production ready network abstraction containers
need
 Map container networking abstractions to the Neutron API
 Allow consumers to choose vendor keeping one high quality API free of
vendor lock-in
 Bring your container and VM networking together under one API
 Implement all the common code for Neutron vendors allowing
them to get to container networking by just having a binding script
Kuryr Solution
 Implement a common base for Neutron vendors that support VM
nested containers
 Avoid double encapsulation
 Manage each container port as a Neutron entity
 Planned support for OVN, MidoNet, Dragonflow and Calico
 Leverage Neutron advanced networking
 LBaaS, FWaaS, VPNaaS
 Security Groups / NAT
Kuryr Project Overview
 Open source
 Part of OpenStack Neutron’s big stadium
 Under OpenStack big tent from next release!!!
 Brings the Neutron networking model as a provider for the Docker
CNM
 Aims to support different Container Orchestration Engines
 E.g. Kubernetes, Mesos, Docker Swarm
 Weekly IRC meetings
 Working together with OpenStack community
 Neutron, Magnum, Kolla
Kuryr Project Overview
 Multiple companies working on it
Kuryr
Configuration
Management
Docker Libnetwork
Remote Driver
Docker Libnetwork
IPAM Driver
Kubernetes
CNI
Driver
Authentication
Neutron
Client
Generic
VIF
Binding
Kuryr Libnetwork Remote Driver
 Keeping up to date with the changing libnetwork remote driver API
 Maps Docker's CNM operations into a Neutron API usage
 Any Neutron plugin can use it (for example OVS)
Kuryr Generic VIF Binding
Kuryr Generic VIF Binding Layer
 Binds the container networking namespace to the networking infra
 Common part (container side)
 IPAM
 vEth creation
 Executable based vendor-specific part
 Choice based on Neutron port type
 Free implementation language
 Root context
 Generic OS VIF Binding Library (Nova)
Deployment
 Package based
 Container based with Kolla
 Vendors must generate their downstream container with the necessary
agents and plugin
 Quick and easy deployment (Ansible based)
Kuryr In OpenStack
Controller Node
Neutron Server
Kuryr
Service
Compute Node
Neutron Infrastructure
Compute Node
VM
Kuryr
Service
Neutron Infrastructure
VM Nested Containers
 Leverage the same Neutron solution for tenant containers
networking
 Neutron features
 Easier management
 Same “implementation”
 Support containers networks and VM network isolation
 Neutron plugins already support this: OVN, Midonet, Dragonflow
 Magnum
 Backend Implementations interoperability
Compute Node
Mixed OpenStack Environments – Nested Containers
VM
OVS / Midonet / Calico / Dragonflow
VM
Lightweight Tagging Layer
Neutron network 1
Neutron network 2
Neutron network 3
Neutron Side
 Port Forwarding
 Can be used to implement Docker port-mapping
 Save public IP space
 Adding Tags to Resources
 Pre allocation of ports/networks
 Mapping between Docker IDs to Neutron IDs
 VLAN Trunk API (Nested Ports)
 Formal Neutron API to define nested containers ports
 DNS Resolution for Port Names
 Leveraged for DNS service discovery
New Features for Containers
 Security Groups
 Subnet Pools
 NAT (SNAT / DNAT – Floating IP)
 Port Security (ARP Spoofing)
 QoS
 Quota Management
 Neutron pluggable IPAM
 Provide well-integrated COE Load balancing through Neutron
 FWaaS for Containers
 Many more as Neutron progress…
Kuryr Roadmap Plan
 Liberty Release
 Kuryr specs in Neutron/Magnum communities
 Neutron new features specs
 Docker Libnetwork remote driver
 Generic VIF binding layer
 Configuration and authentication in Neutron
and Docker
Kuryr Roadmap Plan
 Mitaka Release
 Neutron IPAM for Docker
 Containerized Neutron plugins and solutions with Kolla
 Nested containers in VM’s, Magnum – Kuryr integration
 Missing Neutron features
 Port forwarding – port mapping for Docker
 Neutron tags to resources – pre-allocating of network/ports/subnets
 DNS resolution for port names – Docker DNS discovery
 VLAN trunk API - used for nested containers
 Kubernetes networking model (K8s API)
 N Release
 Neutron advance services (LBaaS, FWaaS VPNaaS)
 Kubernetes services to use Neutron LBaaS
 Project Astara
 Mesos
Join Us! Be the Kuryr!
 Project Launchpad
 https://launchpad.net/kuryr
 Project Git Repository
 https://github.com/openstack/kuryr
 Weekly IRC Meeting
 http://eavesdrop.openstack.org/#Kuryr_Project_Meeting
 IRC
 #openstack-neutron @ Freenode
Join Us! Be the Kuryr!
 Mailing List
 openstack-dev@lists.openstack.org ([Neutron][Kuryr])
 Trello Board
 https://trello.com/b/cbIAXrQ2/project-kuryr
 Documentation
 http://docs.openstack.org/developer/kuryr
 Getting Started Blog posts
 http://galsagie.github.io/sdn/openstack/docker/kuryr/neutron/2015/08/24/kur
yr-part1/
 http://galsagie.github.io/sdn/openstack/docker/kuryr/neutron/2015/10/10/kur
yr-ovn/

More Related Content

What's hot (20)

PDF
OpenStack Neutron Liberty Updates
mestery
 
PDF
Neutron high availability open stack architecture openstack israel event 2015
Arthur Berezin
 
PDF
Deploying vn fs with kubernetes pods and vms
LibbySchulze1
 
PDF
Using OpenContrail with Kubernetes
Matt Baldwin
 
PPTX
OpenStack Neutron behind the Scenes
Anil Bidari ( CEO , Cloud Enabled)
 
PPTX
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
Cloud Native Day Tel Aviv
 
PDF
Overlay/Underlay - Betting on Container Networking
Lee Calcote
 
PDF
Overview of OpenDaylight Container Orchestration Engine Integration
Michelle Holley
 
PDF
Introduction to MidoNet
Taku Fukushima
 
PPTX
High performace network of Cloud Native Taiwan User Group
HungWei Chiu
 
PDF
Container Networking - State of the Ecosystem [ContainerConf, Mannheim, Nov 2...
Karthik Prabhakar
 
PPTX
Container Networking: the Gotchas (Mesos London Meetup 11 May 2016)
Andrew Randall
 
PDF
OpenStack networking - Neutron deep dive with PLUMgrid
Kamesh Pemmaraju
 
PPTX
OpenStack Quantum Intro (OS Meetup 3-26-12)
Dan Wendlandt
 
PPTX
OpenStack & OpenContrail in Production
Edgar Magana
 
PDF
Open Source Backends for OpenStack Neutron
mestery
 
PDF
MidoNet deep dive
Taku Fukushima
 
PDF
Deploying OpenDaylight and OpenStack at Ease
Michelle Holley
 
PPTX
OpenDaylight Netvirt and Neutron - Mike Kolesnik, Josh Hershberg - OpenStack ...
Cloud Native Day Tel Aviv
 
PDF
Accelerating SDN Applications with Open Source Network Overlays
Cumulus Networks
 
OpenStack Neutron Liberty Updates
mestery
 
Neutron high availability open stack architecture openstack israel event 2015
Arthur Berezin
 
Deploying vn fs with kubernetes pods and vms
LibbySchulze1
 
Using OpenContrail with Kubernetes
Matt Baldwin
 
OpenStack Neutron behind the Scenes
Anil Bidari ( CEO , Cloud Enabled)
 
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
Cloud Native Day Tel Aviv
 
Overlay/Underlay - Betting on Container Networking
Lee Calcote
 
Overview of OpenDaylight Container Orchestration Engine Integration
Michelle Holley
 
Introduction to MidoNet
Taku Fukushima
 
High performace network of Cloud Native Taiwan User Group
HungWei Chiu
 
Container Networking - State of the Ecosystem [ContainerConf, Mannheim, Nov 2...
Karthik Prabhakar
 
Container Networking: the Gotchas (Mesos London Meetup 11 May 2016)
Andrew Randall
 
OpenStack networking - Neutron deep dive with PLUMgrid
Kamesh Pemmaraju
 
OpenStack Quantum Intro (OS Meetup 3-26-12)
Dan Wendlandt
 
OpenStack & OpenContrail in Production
Edgar Magana
 
Open Source Backends for OpenStack Neutron
mestery
 
MidoNet deep dive
Taku Fukushima
 
Deploying OpenDaylight and OpenStack at Ease
Michelle Holley
 
OpenDaylight Netvirt and Neutron - Mike Kolesnik, Josh Hershberg - OpenStack ...
Cloud Native Day Tel Aviv
 
Accelerating SDN Applications with Open Source Network Overlays
Cumulus Networks
 

Similar to OpenStack Israel Meetup - Project Kuryr: Bringing Container Networking to Neutron (20)

PDF
Kuryr & Fuxi: OpenStack networking and storage for Docker Swarm containers
Antoni Segura Puimedon
 
PDF
Networking For Nested Containers: Magnum, Kuryr, Neutron Integration
PLUMgrid
 
PPTX
Secure Your Containers: What Network Admins Should Know When Moving Into Prod...
Cynthia Thomas
 
PDF
"One network to rule them all" - OpenStack Summit Austin 2016
Phil Estes
 
PPTX
COE Integration - OPNFV
Prem Sankar Gopannan
 
PDF
OpenStack Tokyo 2015: Connecting the Dots with Neutron
Phil Estes
 
PDF
Kuryr kubernetes: the seamless path to adding pods to your datacenter networking
Antoni Segura Puimedon
 
PDF
Conatiner Networking with MidoNet
MidokuraUSA
 
PPTX
Container world hybridnetworking_rev2
Prem Sankar Gopannan
 
PDF
Agile OpenStack Networking with Cisco Solutions
Cisco DevNet
 
PDF
Container Orchestration Integration: OpenStack Kuryr & Apache Mesos
MidoNet
 
PDF
Container Orchestration Integration: OpenStack Kuryr
Taku Fukushima
 
PPTX
BRKDCT-2445 Agile OpenStack Networking with Cisco Solutions - Cisco Live! US ...
Rohit Agarwalla
 
PDF
DockerCon SF 2015: Networking Breakout
Docker, Inc.
 
PDF
OpenStack Neutron: What's New In Kilo and a Look Toward Liberty
mestery
 
PPTX
Docker Networking Overview
Sreenivas Makam
 
PDF
OpenStack Tokyo Summit Keynote Slides
mestery
 
PDF
neutron_icehouse_update
Akihiro Motoki
 
PPTX
Dockerizing the Hard Services: Neutron and Nova
clayton_oneill
 
PPTX
PSOCLD-1006 Cisco Cloud Architectures on OpenStack - Cisco Live! US 2015 San ...
Rohit Agarwalla
 
Kuryr & Fuxi: OpenStack networking and storage for Docker Swarm containers
Antoni Segura Puimedon
 
Networking For Nested Containers: Magnum, Kuryr, Neutron Integration
PLUMgrid
 
Secure Your Containers: What Network Admins Should Know When Moving Into Prod...
Cynthia Thomas
 
"One network to rule them all" - OpenStack Summit Austin 2016
Phil Estes
 
COE Integration - OPNFV
Prem Sankar Gopannan
 
OpenStack Tokyo 2015: Connecting the Dots with Neutron
Phil Estes
 
Kuryr kubernetes: the seamless path to adding pods to your datacenter networking
Antoni Segura Puimedon
 
Conatiner Networking with MidoNet
MidokuraUSA
 
Container world hybridnetworking_rev2
Prem Sankar Gopannan
 
Agile OpenStack Networking with Cisco Solutions
Cisco DevNet
 
Container Orchestration Integration: OpenStack Kuryr & Apache Mesos
MidoNet
 
Container Orchestration Integration: OpenStack Kuryr
Taku Fukushima
 
BRKDCT-2445 Agile OpenStack Networking with Cisco Solutions - Cisco Live! US ...
Rohit Agarwalla
 
DockerCon SF 2015: Networking Breakout
Docker, Inc.
 
OpenStack Neutron: What's New In Kilo and a Look Toward Liberty
mestery
 
Docker Networking Overview
Sreenivas Makam
 
OpenStack Tokyo Summit Keynote Slides
mestery
 
neutron_icehouse_update
Akihiro Motoki
 
Dockerizing the Hard Services: Neutron and Nova
clayton_oneill
 
PSOCLD-1006 Cisco Cloud Architectures on OpenStack - Cisco Live! US 2015 San ...
Rohit Agarwalla
 
Ad

More from Cloud Native Day Tel Aviv (20)

PDF
Cloud Native is a Cultural Decision. By Reshef Mann
Cloud Native Day Tel Aviv
 
PDF
Container Runtime Security with Falco, by Néstor Salceda
Cloud Native Day Tel Aviv
 
PDF
Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...
Cloud Native Day Tel Aviv
 
PDF
Running I/O intensive workloads on Kubernetes, by Nati Shalom
Cloud Native Day Tel Aviv
 
PDF
WTF Do We Need a Service Mesh? By Anton Weiss.
Cloud Native Day Tel Aviv
 
PDF
Update Strategies for the Edge, by Kat Cosgrove
Cloud Native Day Tel Aviv
 
PDF
Building a Cloud-Native SaaS Product The Hard Way. By Arthur Berezin
Cloud Native Day Tel Aviv
 
PDF
The Four Questions (Every Monitoring Engineer gets asked), by Leon Adato
Cloud Native Day Tel Aviv
 
PDF
K8s Pod Scheduling - Deep Dive. By Tsahi Duek.
Cloud Native Day Tel Aviv
 
PDF
Cloud Native: The Cattle, the Pets, and the Germs, by Avishai Ish-Shalom
Cloud Native Day Tel Aviv
 
PDF
MySQL Shell: the daily tool for devs and admins. By Vittorio Cioe.
Cloud Native Day Tel Aviv
 
PDF
Cloud native transformation patterns, by Pini Reznik
Cloud Native Day Tel Aviv
 
PPTX
Cloud and Edge: price, performance and privacy considerations in IOT, by Tsvi...
Cloud Native Day Tel Aviv
 
PDF
Two Years, Zero servers: Lessons learned from running a startup 100% on Serve...
Cloud Native Day Tel Aviv
 
PDF
12 Factor Serverless Applications - Mike Morain, AWS - Cloud Native Day Tel A...
Cloud Native Day Tel Aviv
 
PDF
Not my problem! Delegating responsibilities to the infrastructure - Yshay Yaa...
Cloud Native Day Tel Aviv
 
PDF
Brain in the Cloud: Machine Learning on OpenStack & Kubernetes Done Right - E...
Cloud Native Day Tel Aviv
 
PPTX
A stateful application walks into a Kubernetes bar - Arthur Berezin, JovianX ...
Cloud Native Day Tel Aviv
 
PPTX
The story of how KubeMQ was born - Oz Golan, KubeMQ - Cloud Native Day Tel Av...
Cloud Native Day Tel Aviv
 
PPTX
I want it all: go hybrid - Orit Yaron, Outbrain - Cloud Native Day Tel Aviv 2018
Cloud Native Day Tel Aviv
 
Cloud Native is a Cultural Decision. By Reshef Mann
Cloud Native Day Tel Aviv
 
Container Runtime Security with Falco, by Néstor Salceda
Cloud Native Day Tel Aviv
 
Kafka Mirror Tester: Go and Kubernetes Powered Test Suite for Kafka Replicati...
Cloud Native Day Tel Aviv
 
Running I/O intensive workloads on Kubernetes, by Nati Shalom
Cloud Native Day Tel Aviv
 
WTF Do We Need a Service Mesh? By Anton Weiss.
Cloud Native Day Tel Aviv
 
Update Strategies for the Edge, by Kat Cosgrove
Cloud Native Day Tel Aviv
 
Building a Cloud-Native SaaS Product The Hard Way. By Arthur Berezin
Cloud Native Day Tel Aviv
 
The Four Questions (Every Monitoring Engineer gets asked), by Leon Adato
Cloud Native Day Tel Aviv
 
K8s Pod Scheduling - Deep Dive. By Tsahi Duek.
Cloud Native Day Tel Aviv
 
Cloud Native: The Cattle, the Pets, and the Germs, by Avishai Ish-Shalom
Cloud Native Day Tel Aviv
 
MySQL Shell: the daily tool for devs and admins. By Vittorio Cioe.
Cloud Native Day Tel Aviv
 
Cloud native transformation patterns, by Pini Reznik
Cloud Native Day Tel Aviv
 
Cloud and Edge: price, performance and privacy considerations in IOT, by Tsvi...
Cloud Native Day Tel Aviv
 
Two Years, Zero servers: Lessons learned from running a startup 100% on Serve...
Cloud Native Day Tel Aviv
 
12 Factor Serverless Applications - Mike Morain, AWS - Cloud Native Day Tel A...
Cloud Native Day Tel Aviv
 
Not my problem! Delegating responsibilities to the infrastructure - Yshay Yaa...
Cloud Native Day Tel Aviv
 
Brain in the Cloud: Machine Learning on OpenStack & Kubernetes Done Right - E...
Cloud Native Day Tel Aviv
 
A stateful application walks into a Kubernetes bar - Arthur Berezin, JovianX ...
Cloud Native Day Tel Aviv
 
The story of how KubeMQ was born - Oz Golan, KubeMQ - Cloud Native Day Tel Av...
Cloud Native Day Tel Aviv
 
I want it all: go hybrid - Orit Yaron, Outbrain - Cloud Native Day Tel Aviv 2018
Cloud Native Day Tel Aviv
 
Ad

Recently uploaded (20)

PDF
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
PDF
How a Code Plagiarism Checker Protects Originality in Programming
Code Quiry
 
PPTX
The Yotta x CloudStack Advantage: Scalable, India-First Cloud
ShapeBlue
 
PDF
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
PDF
Trading Volume Explained by CIFDAQ- Secret Of Market Trends
CIFDAQ
 
PDF
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
PPTX
Simplifying End-to-End Apache CloudStack Deployment with a Web-Based Automati...
ShapeBlue
 
PDF
visibel.ai Company Profile – Real-Time AI Solution for CCTV
visibelaiproject
 
PDF
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
PDF
UiPath on Tour London Community Booth Deck
UiPathCommunity
 
PDF
HR agent at Mediq: Lessons learned on Agent Builder & Maestro by Tacstone Tec...
UiPathCommunity
 
PPTX
Building and Operating a Private Cloud with CloudStack and LINBIT CloudStack ...
ShapeBlue
 
PDF
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
PDF
Meetup Kickoff & Welcome - Rohit Yadav, CSIUG Chairman
ShapeBlue
 
PDF
Empowering Cloud Providers with Apache CloudStack and Stackbill
ShapeBlue
 
PDF
How Current Advanced Cyber Threats Transform Business Operation
Eryk Budi Pratama
 
PPTX
Building a Production-Ready Barts Health Secure Data Environment Tooling, Acc...
Barts Health
 
PPTX
Top Managed Service Providers in Los Angeles
Captain IT
 
PDF
Generative AI in Healthcare: Benefits, Use Cases & Challenges
Lily Clark
 
PDF
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
How a Code Plagiarism Checker Protects Originality in Programming
Code Quiry
 
The Yotta x CloudStack Advantage: Scalable, India-First Cloud
ShapeBlue
 
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
Trading Volume Explained by CIFDAQ- Secret Of Market Trends
CIFDAQ
 
TrustArc Webinar - Data Privacy Trends 2025: Mid-Year Insights & Program Stra...
TrustArc
 
Simplifying End-to-End Apache CloudStack Deployment with a Web-Based Automati...
ShapeBlue
 
visibel.ai Company Profile – Real-Time AI Solution for CCTV
visibelaiproject
 
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
UiPath on Tour London Community Booth Deck
UiPathCommunity
 
HR agent at Mediq: Lessons learned on Agent Builder & Maestro by Tacstone Tec...
UiPathCommunity
 
Building and Operating a Private Cloud with CloudStack and LINBIT CloudStack ...
ShapeBlue
 
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
Meetup Kickoff & Welcome - Rohit Yadav, CSIUG Chairman
ShapeBlue
 
Empowering Cloud Providers with Apache CloudStack and Stackbill
ShapeBlue
 
How Current Advanced Cyber Threats Transform Business Operation
Eryk Budi Pratama
 
Building a Production-Ready Barts Health Secure Data Environment Tooling, Acc...
Barts Health
 
Top Managed Service Providers in Los Angeles
Captain IT
 
Generative AI in Healthcare: Benefits, Use Cases & Challenges
Lily Clark
 
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 

OpenStack Israel Meetup - Project Kuryr: Bringing Container Networking to Neutron

  • 1. Project Kuryr Gal Sagie (@GalSagie) http://galsagie.github.io
  • 2. Net1 10.10.10.0/24 VM1 10.10.10.100 VM2 10.10.10.200 Virtual Machine or Container Virtual Interface (VIF) Virtual Port Virtual Network Virtual subnet Neutron Abstraction
  • 3. Public Network 10.50.50.0/24 Router Router Tenant A Net1 192.168.1.0/0 Tenant A Net2 192.168.5.0/0 Tenant B Net1 192.168.1.0/0 Tenant B Net2 192.168.9.0/0 VM1 192.168.1.5 VM2 192.168.1.7 192.168.5.2 VM3 192.168.1.9 VM1 192.168.1.3 VM2 192.168.1.3 192.168.9.5 VM3 192.168.9.7 You can build this
  • 4. A Docker Container Network Sandbox Endpoint A Docker Container Network Sandbox Endpoint A Docker Container Network Sandbox Endpoint Frontend Network Endpoint Backend Network Container Networking : libnetwork
  • 5. Where Have I Seen That Before?
  • 6. Neutron and libnetwork A Docker Container Network Sandbox Endpoint A Docker Container Network Sandbox Endpoint A Docker Container Network Sandbox Endpoint Frontend Network Endpoint Backend Network Tenant A Net1 192.168.1.0/0 Tenant A Net2 192.168.5.0/0 VM1 192.168.1.5 VM2 192.168.1.7 192.168.5.2
  • 7. What are the problems?  Reinventing networking abstractions  Changing and vendor specific solutions  Flannel  Weave  SocketPlane  Overlay2 for VM nested containers  Performance, latency, SLA, management penalties
  • 8. New Solutions For Containers Networking Compute Node Node Networking Infrastructure
  • 9. Compute Node Nested Containers Overlay2 VM BR-INT BR-TUN Docker0 Compute Node VM BR-INT BR-TUN Docker0 Flannel Overlay Neutron Overlay
  • 10. Neutron as the production ready networking abstraction containers need
  • 11. Kuryr Solution  Neutron as the production ready network abstraction containers need  Map container networking abstractions to the Neutron API  Allow consumers to choose vendor keeping one high quality API free of vendor lock-in  Bring your container and VM networking together under one API  Implement all the common code for Neutron vendors allowing them to get to container networking by just having a binding script
  • 12. Kuryr Solution  Implement a common base for Neutron vendors that support VM nested containers  Avoid double encapsulation  Manage each container port as a Neutron entity  Planned support for OVN, MidoNet, Dragonflow and Calico  Leverage Neutron advanced networking  LBaaS, FWaaS, VPNaaS  Security Groups / NAT
  • 13. Kuryr Project Overview  Open source  Part of OpenStack Neutron’s big stadium  Under OpenStack big tent from next release!!!  Brings the Neutron networking model as a provider for the Docker CNM  Aims to support different Container Orchestration Engines  E.g. Kubernetes, Mesos, Docker Swarm  Weekly IRC meetings  Working together with OpenStack community  Neutron, Magnum, Kolla
  • 14. Kuryr Project Overview  Multiple companies working on it
  • 15. Kuryr Configuration Management Docker Libnetwork Remote Driver Docker Libnetwork IPAM Driver Kubernetes CNI Driver Authentication Neutron Client Generic VIF Binding
  • 16. Kuryr Libnetwork Remote Driver  Keeping up to date with the changing libnetwork remote driver API  Maps Docker's CNM operations into a Neutron API usage  Any Neutron plugin can use it (for example OVS)
  • 17. Kuryr Generic VIF Binding
  • 18. Kuryr Generic VIF Binding Layer  Binds the container networking namespace to the networking infra  Common part (container side)  IPAM  vEth creation  Executable based vendor-specific part  Choice based on Neutron port type  Free implementation language  Root context  Generic OS VIF Binding Library (Nova)
  • 19. Deployment  Package based  Container based with Kolla  Vendors must generate their downstream container with the necessary agents and plugin  Quick and easy deployment (Ansible based)
  • 20. Kuryr In OpenStack Controller Node Neutron Server Kuryr Service Compute Node Neutron Infrastructure Compute Node VM Kuryr Service Neutron Infrastructure
  • 21. VM Nested Containers  Leverage the same Neutron solution for tenant containers networking  Neutron features  Easier management  Same “implementation”  Support containers networks and VM network isolation  Neutron plugins already support this: OVN, Midonet, Dragonflow  Magnum  Backend Implementations interoperability
  • 22. Compute Node Mixed OpenStack Environments – Nested Containers VM OVS / Midonet / Calico / Dragonflow VM Lightweight Tagging Layer Neutron network 1 Neutron network 2 Neutron network 3
  • 23. Neutron Side  Port Forwarding  Can be used to implement Docker port-mapping  Save public IP space  Adding Tags to Resources  Pre allocation of ports/networks  Mapping between Docker IDs to Neutron IDs  VLAN Trunk API (Nested Ports)  Formal Neutron API to define nested containers ports  DNS Resolution for Port Names  Leveraged for DNS service discovery
  • 24. New Features for Containers  Security Groups  Subnet Pools  NAT (SNAT / DNAT – Floating IP)  Port Security (ARP Spoofing)  QoS  Quota Management  Neutron pluggable IPAM  Provide well-integrated COE Load balancing through Neutron  FWaaS for Containers  Many more as Neutron progress…
  • 25. Kuryr Roadmap Plan  Liberty Release  Kuryr specs in Neutron/Magnum communities  Neutron new features specs  Docker Libnetwork remote driver  Generic VIF binding layer  Configuration and authentication in Neutron and Docker
  • 26. Kuryr Roadmap Plan  Mitaka Release  Neutron IPAM for Docker  Containerized Neutron plugins and solutions with Kolla  Nested containers in VM’s, Magnum – Kuryr integration  Missing Neutron features  Port forwarding – port mapping for Docker  Neutron tags to resources – pre-allocating of network/ports/subnets  DNS resolution for port names – Docker DNS discovery  VLAN trunk API - used for nested containers  Kubernetes networking model (K8s API)  N Release  Neutron advance services (LBaaS, FWaaS VPNaaS)  Kubernetes services to use Neutron LBaaS  Project Astara  Mesos
  • 27. Join Us! Be the Kuryr!  Project Launchpad  https://launchpad.net/kuryr  Project Git Repository  https://github.com/openstack/kuryr  Weekly IRC Meeting  http://eavesdrop.openstack.org/#Kuryr_Project_Meeting  IRC  #openstack-neutron @ Freenode
  • 28. Join Us! Be the Kuryr!  Mailing List  [email protected] ([Neutron][Kuryr])  Trello Board  https://trello.com/b/cbIAXrQ2/project-kuryr  Documentation  http://docs.openstack.org/developer/kuryr  Getting Started Blog posts  http://galsagie.github.io/sdn/openstack/docker/kuryr/neutron/2015/08/24/kur yr-part1/  http://galsagie.github.io/sdn/openstack/docker/kuryr/neutron/2015/10/10/kur yr-ovn/

Editor's Notes

  • #3: Top parts belong to nova or magnum Bottom parts belong to Neutron
  • #8:   <voice note: Here we'd explain the part about them being vendor specific    makes that each Neutron vendor would have to make its own implementation    of libnetwork or cni reinventing the wheel and without the ability to share    the common parts./>
  • #14:   <voice note: Here I'd stop to thank Neutron drivers for welcoming us into the    big stadium/>   <voice note: Talk about how this may be straight away support or by the    plugins for this platforms that we can incorporate in our repository/> <voice note: Here tell the people to join us and contribute/>
  • #15:   <voice note: Here I'd stop to thank Neutron drivers for welcoming us into the    big stadium/>   <voice note: Talk about how this may be straight away support or by the    plugins for this platforms that we can incorporate in our repository/> <voice note: Here tell the people to join us and contribute/>
  • #19:   <voice note: here explain which actions are done for the veth that goes into    the container/>   <voice note: here explain that it is akin to what nova does/>
  • #20:   <voice note: talk about the typical speed of deployment and how it will be    very handy for development and tests too/>
  • #25: voiced about K8s
  • #26: <voice note: Explain that it will not be a release but rather what we have done  in the cycle/>