SlideShare ist ein Scribd-Unternehmen logo
1 von 83
DevOps Guide to
Container Networking
Dirk Wallerstorfer DevOpsSummit New York, June 8th
2
Technology Lead SDN, OpenStack
dirk.wallerstorfer@dynatrace.com
@wall_dirk
blog.ruxit.com
3Dirk Wallerstorfer, @wall_dirk
5Dirk Wallerstorfer, @wall_dirk
6Dirk Wallerstorfer, @wall_dirk
7Dirk Wallerstorfer, @wall_dirk
http://systematicrelativestrength.com/2013/11/12/your-plan-vs-reality/
9Dirk Wallerstorfer, @wall_dirk
10Dirk Wallerstorfer, @wall_dirk
11Dirk Wallerstorfer, @wall_dirk
12Dirk Wallerstorfer, @wall_dirk
13Dirk Wallerstorfer, @wall_dirk
web:$ docker run -itd wordpress
14Dirk Wallerstorfer, @wall_dirk
web:$ docker run -itd wordpress
15Dirk Wallerstorfer, @wall_dirk
web:$ docker run -itd wordpress
user:wordpress$ ping 8.8.8.8
iptables –t nat –A POSTROUTING –o eth0 –j MASQUERADE
16Dirk Wallerstorfer, @wall_dirk
web:$ docker run –itd –p 8080:80 wordpress
17Dirk Wallerstorfer, @wall_dirk
web:$ docker run –itd –p 8080:80 wordpress
iptables –t nat –A PREROUTING ... –j DOCKER
iptables –t nat –A DOCKER --dport 8080
--redirect-to 172.18.0.2:80
18Dirk Wallerstorfer, @wall_dirk
Dirk Wallerstorfer, @wall_dirk 19
Three reasons for SDN
• Permanent connectivity
• Virtualization of everything
• Paradigm shift in software development
Dirk Wallerstorfer, @wall_dirk 20
Three reasons for SDN
Networking had to keep up
somehow!
Continuous
delivery
Virtualize
everything
Permanent
connectivity
Dirk Wallerstorfer, @wall_dirk 21
SDN
• Classic SDN
• SD WAN
• Network Overlay
Dirk Wallerstorfer, @wall_dirk 22
SDN
• Classic SDN
• SD WAN
• Network Overlay
Dirk Wallerstorfer, @wall_dirk 23
SDN
• Classic SDN
• SD WAN
• Network Overlay
Dirk Wallerstorfer, @wall_dirk 24
SDN
• Classic SDN
• SD WAN
• Network Overlay
Dirk Wallerstorfer, @wall_dirk 25
26Dirk Wallerstorfer, @wall_dirk
Dirk Wallerstorfer, @wall_dirk 27
Multi-host Container Networking
No SDN
db:$ docker run -itd –p 3306:3306 mysql
web:$ docker run -itd –p 8080:80 –e WORDPRESS_DB_HOST=172.16.198.248:3306 wordpress
Dirk Wallerstorfer, @wall_dirk 28
Multi-host Container Networking
Prerequisites
• Underlying network
• Distributed K/V store
• Accessible ports
Dirk Wallerstorfer, @wall_dirk 29
Multi-host Container Networking
Overlay No overlay
http://s568.photobucket.com/user/LMG_09/media/CrowdSurfftw.jpg.html Ocean’s Eleven, Warner Bros, 2001
Dirk Wallerstorfer, @wall_dirk 30
Multi-host Container Networking
Overlay Protocols
• VXLAN
Outer
Ethernet
Outer
IP
Outer
UDP
VXLAN Ethernet IP TCP Payload
Dirk Wallerstorfer, @wall_dirk 31
Multi-host Container Networking
Overlay Protocols
• VXLAN
Outer
Ethernet
Outer
IP
Outer
UDP
VXLAN Ethernet IP TCP Payload
Ethernet IP UDP VXLAN Ethernet IP TCP Payload
Dirk Wallerstorfer, @wall_dirk 32
Multi-host Container Networking
Overlay Protocols
• VXLAN
Outer
Ethernet
Outer
IP
Outer
UDP
VXLAN Ethernet IP TCP Payload
Ethernet IP UDP VXLAN Ethernet IP TCP Payload
Flags Reserved
VXLAN Network
Identifier (VNI)
Reserved
Dirk Wallerstorfer, @wall_dirk 33
Multi-host Container Networking
Overlay Protocols
• VXLAN
Outer
Ethernet
Outer
IP
Outer
UDP
VXLAN Ethernet IP TCP Payload
Ethernet IP UDP VXLAN Ethernet IP TCP Payload
14 bytes 20 bytes 8 bytes 8 bytes
+ 50 bytes
Dirk Wallerstorfer, @wall_dirk 34
Multi-host Container Networking
Overlay Protocols
• VXLAN
• Ethernet in UDP, defacto standard, won the overlay war
• NVGRE
• Ethernet in IP, Microsoft’s answer to a question nobody asked
• STT
• Ethernet in fake TCP, to utilize TSO of NIC
• Geneve
• Ethernet in UDP, best of breed approach
• A+ for extensibility
• https://packetpushers.net/podcast/podcasts/pq-show-68-geneve-data-center-overlay-update/
Dirk Wallerstorfer, @wall_dirk 35
Multi-host Container Networking
Overlay
• Docker Libnetwork
• WeaveNet
• Flannel
Dirk Wallerstorfer, @wall_dirk 36
Docker libnetwork
https://blog.docker.com/2015/04/docker-networking-takes-a-step-in-the-right-direction-2/
Dirk Wallerstorfer, @wall_dirk 37
Docker libnetwork
Dirk Wallerstorfer, @wall_dirk 38
Docker libnetwork
Dirk Wallerstorfer, @wall_dirk 39
Docker libnetwork
Dirk Wallerstorfer, @wall_dirk 40
Docker libnetwork
Dirk Wallerstorfer, @wall_dirk 41
Docker libnetwork
Dirk Wallerstorfer, @wall_dirk 42
Docker libnetwork
Dirk Wallerstorfer, @wall_dirk 43
Docker libnetwork
Dirk Wallerstorfer, @wall_dirk 44
Docker libnetwork
Dirk Wallerstorfer, @wall_dirk 45
46Dirk Wallerstorfer, @wall_dirk
47Dirk Wallerstorfer, @wall_dirk
48Dirk Wallerstorfer, @wall_dirk
Department
of
Redundancy
Department
Dirk Wallerstorfer, @wall_dirk 49
Multi-host Container Networking
No overlay
• Project Calico
• Flannel host-gw
• Romana
• Contiv
• MACVLAN/IPVLAN
Dirk Wallerstorfer, @wall_dirk 50
Project Calico
https://www.projectcalico.org/docker-libnetwork-is-almost-here-and-calico-is-ready/
51Dirk Wallerstorfer, @wall_dirk
52Dirk Wallerstorfer, @wall_dirk
Dirk Wallerstorfer, @wall_dirk 53
© http://de.slideshare.net/grkvlt/metaswitch-project-calico
Dirk Wallerstorfer, @wall_dirk 54
© http://de.slideshare.net/grkvlt/metaswitch-project-calico
Host Host
Containers Containers
Dirk Wallerstorfer, @wall_dirk 55
Project Calico
• Host is a router for the workloads
• BGP to distribute routes
• etcd backed
• Pure Layer 3, no encapsulation
Dirk Wallerstorfer, @wall_dirk 56
Project Calico
Dirk Wallerstorfer, @wall_dirk 57
Project Calico
Dirk Wallerstorfer, @wall_dirk 58
Project Calico
Dirk Wallerstorfer, @wall_dirk 60
Location of services
k8s pods, marathon application groups, swarm constraints, fleet units
61Dirk Wallerstorfer, @wall_dirk
Dirk Wallerstorfer, @wall_dirk 62
Connectivity Problems
nf_conntrack: table full, dropping packet.
dirk@fueldev:~$ sudo sysctl –a | grep conntrack
...
net.netfilter.nf_conntrack_buckets = 8192
net.netfilter.nf_conntrack_count = 0
net.netfilter.nf_conntrack_max = 31760
...
• Large number of iptables rules
Dirk Wallerstorfer, @wall_dirk 63
Connectivity Problems
• The notorious MTU
• https://www.youtube.com/watch?v=H2lBkj5zbYs
dirk@fueldev:~$ ip addr show enp0s3
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group
default qlen 1000
link/ether 08:00:27:f3:4e:5d brd ff:ff:ff:ff:ff:ff
inet 172.16.99.14 brd 172.16.11.255 scope global enp0s3
valid_lft forever preferred_lft forever
inet6 fe80::a00:27ff:fef4:4e56/64 scope link
valid_lft forever preferred_lft forever
Dirk Wallerstorfer, @wall_dirk 64
TCP/IP over VXLAN Overhead
Ethernet IP UDP VXLAN Ethernet IP TCP Payload
14 bytes 20 bytes 8 bytes 8 bytes
+ 50 bytes
Send 1MB of data
1,000,000 bytes = 710 packets á 1410 bytes
710 x 50 bytes = 35,500 bytes overhead
1,035,500 bytes are transmitted
3.55 %
Dirk Wallerstorfer, @wall_dirk 65
Send 1MB of data
1,000,000 bytes = 736 packets á 1330 bytes
736 x 100 bytes = 73,600 bytes overhead
1,073,600 bytes are transmitted
TCP/IP over VXLAN over VXLAN Overhead
Ethernet IP UDP VXLAN Ethernet IP UDP VXLAN Ethernet IP TCP Payload
14
bytes
20
bytes
8
bytes
8
bytes
14
bytes
20
bytes
8
bytes
8
bytes
+ 100 bytes
7.36 %
66Dirk Wallerstorfer, @wall_dirk
Dirk Wallerstorfer, @wall_dirk 67
68Dirk Wallerstorfer, @wall_dirk
Dirk Wallerstorfer, @wall_dirk 69
1460
1410
1360
1310
1260
1210
1160
MTU overhead
25,9%
20,7%
15,9%
11,5%
7,4%
3,6%
0%
70Dirk Wallerstorfer, @wall_dirk
February 20, 2016
http://machinezone.github.io/research/networking-solutions-for-kubernetes/
Performance Comparison of Networking
Solutions for Kubernetes
71Dirk Wallerstorfer, @wall_dirk
Performance Comparison of Networking
Solutions for Kubernetes
February 20, 2016
http://machinezone.github.io/research/networking-solutions-for-kubernetes/
72Dirk Wallerstorfer, @wall_dirk
Performance Comparison of Networking
Solutions for Kubernetes
February 20, 2016
http://machinezone.github.io/research/networking-solutions-for-kubernetes/
73Dirk Wallerstorfer, @wall_dirk
https://github.com/machinezone/tcpkali
serving 350 byte responsemaking 250,000 requests per second
Performance Comparison of Networking
Solutions for Kubernetes
Different network options - latency?
74Dirk Wallerstorfer, @wall_dirk
250,000 requests per second, 350 bytes response
February 20, 2016
http://machinezone.github.io/research/networking-solutions-for-kubernetes/
75Dirk Wallerstorfer, @wall_dirk
> 3 secresponse time
will leave the page
76Dirk Wallerstorfer, @wall_dirk
+0.5 sresponse time
in revenue
keep it manageable
keep it simple
keep it fast
78Dirk Wallerstorfer, @wall_dirk
http://i.coastingfish.com/image/3M
Volume-oriented network metrics
Quality-oriented network metrics
79Dirk Wallerstorfer, @wall_dirk
http://i.coastingfish.com/image/3M
82Dirk Wallerstorfer, @wall_dirk
83
Technology Lead SDN, OpenStack
dirk.wallerstorfer@dynatrace.com
@wall_dirk
blog.ruxit.com
Image sources:
pixabay.com (3, 4, 5, 7, 9, 10, 23, 41, 57, 59, 60, 61)

Weitere ähnliche Inhalte

Was ist angesagt?

Docker network Present in VietNam DockerDay 2015
Docker network Present in VietNam DockerDay 2015Docker network Present in VietNam DockerDay 2015
Docker network Present in VietNam DockerDay 2015
Van Phuc
 
Web scale infrastructures with kubernetes and flannel
Web scale infrastructures with kubernetes and flannelWeb scale infrastructures with kubernetes and flannel
Web scale infrastructures with kubernetes and flannel
purpleocean
 

Was ist angesagt? (20)

Docker network Present in VietNam DockerDay 2015
Docker network Present in VietNam DockerDay 2015Docker network Present in VietNam DockerDay 2015
Docker network Present in VietNam DockerDay 2015
 
Tech Talk by Gal Sagie: Kuryr - Connecting containers networking to OpenStack...
Tech Talk by Gal Sagie: Kuryr - Connecting containers networking to OpenStack...Tech Talk by Gal Sagie: Kuryr - Connecting containers networking to OpenStack...
Tech Talk by Gal Sagie: Kuryr - Connecting containers networking to OpenStack...
 
Kubernetes Networking
Kubernetes NetworkingKubernetes Networking
Kubernetes Networking
 
Overlay/Underlay - Betting on Container Networking
Overlay/Underlay - Betting on Container NetworkingOverlay/Underlay - Betting on Container Networking
Overlay/Underlay - Betting on Container Networking
 
Learning how AWS implement AWS VPC CNI
Learning how AWS implement AWS VPC CNILearning how AWS implement AWS VPC CNI
Learning how AWS implement AWS VPC CNI
 
Docker Networking - Current Status and goals of Experimental Networking
Docker Networking - Current Status and goals of Experimental NetworkingDocker Networking - Current Status and goals of Experimental Networking
Docker Networking - Current Status and goals of Experimental Networking
 
KubeCon EU 2016: Secure, Cloud-Native Networking with Project Calico
KubeCon EU 2016: Secure, Cloud-Native Networking with Project CalicoKubeCon EU 2016: Secure, Cloud-Native Networking with Project Calico
KubeCon EU 2016: Secure, Cloud-Native Networking with Project Calico
 
DockerDay2015: Docker Networking
DockerDay2015: Docker NetworkingDockerDay2015: Docker Networking
DockerDay2015: Docker Networking
 
Kubernetes networking in AWS
Kubernetes networking in AWSKubernetes networking in AWS
Kubernetes networking in AWS
 
Docker 1.12 networking deep dive
Docker 1.12 networking deep diveDocker 1.12 networking deep dive
Docker 1.12 networking deep dive
 
Web scale infrastructures with kubernetes and flannel
Web scale infrastructures with kubernetes and flannelWeb scale infrastructures with kubernetes and flannel
Web scale infrastructures with kubernetes and flannel
 
How Networking works with Data Science
How Networking works with Data Science How Networking works with Data Science
How Networking works with Data Science
 
Head First to Container&Kubernetes
Head First to Container&KubernetesHead First to Container&Kubernetes
Head First to Container&Kubernetes
 
Docker networking Tutorial 101
Docker networking Tutorial 101Docker networking Tutorial 101
Docker networking Tutorial 101
 
Docker Online Meetup #29: Docker Networking is Now GA
Docker Online Meetup #29: Docker Networking is Now GA Docker Online Meetup #29: Docker Networking is Now GA
Docker Online Meetup #29: Docker Networking is Now GA
 
Docker Networking Overview
Docker Networking OverviewDocker Networking Overview
Docker Networking Overview
 
Kubernetes the Very Hard Way. Lisa Portland 2019
Kubernetes the Very Hard Way. Lisa Portland 2019Kubernetes the Very Hard Way. Lisa Portland 2019
Kubernetes the Very Hard Way. Lisa Portland 2019
 
Docker networking tutorial 102
Docker networking tutorial 102Docker networking tutorial 102
Docker networking tutorial 102
 
IPTABLES Introduction
IPTABLES IntroductionIPTABLES Introduction
IPTABLES Introduction
 
Automated container-deployment-on-kubernetes
Automated container-deployment-on-kubernetesAutomated container-deployment-on-kubernetes
Automated container-deployment-on-kubernetes
 

Andere mochten auch

Andere mochten auch (20)

Docker meetup
Docker meetupDocker meetup
Docker meetup
 
The Key Components of Adopting CI The OpenStack Way
The Key Components of Adopting CI The OpenStack WayThe Key Components of Adopting CI The OpenStack Way
The Key Components of Adopting CI The OpenStack Way
 
Devops in Networking
Devops in NetworkingDevops in Networking
Devops in Networking
 
VNF components in OpenStack Tacker
VNF components in OpenStack TackerVNF components in OpenStack Tacker
VNF components in OpenStack Tacker
 
Evolve or Die: Enterprise Ready OpenStack upgrades with Kubernetes
Evolve or Die: Enterprise Ready OpenStack upgrades with KubernetesEvolve or Die: Enterprise Ready OpenStack upgrades with Kubernetes
Evolve or Die: Enterprise Ready OpenStack upgrades with Kubernetes
 
Tutorial on using CoreOS Flannel for Docker networking
Tutorial on using CoreOS Flannel for Docker networkingTutorial on using CoreOS Flannel for Docker networking
Tutorial on using CoreOS Flannel for Docker networking
 
OpenStack DevOps Workflows with TOSCA
OpenStack DevOps Workflows with TOSCAOpenStack DevOps Workflows with TOSCA
OpenStack DevOps Workflows with TOSCA
 
Stacks and Layers: Integrating P4, C, OVS and OpenStack
Stacks and Layers: Integrating P4, C, OVS and OpenStackStacks and Layers: Integrating P4, C, OVS and OpenStack
Stacks and Layers: Integrating P4, C, OVS and OpenStack
 
Mistral and StackStorm
Mistral and StackStormMistral and StackStorm
Mistral and StackStorm
 
vnf-managers-you-must-know
vnf-managers-you-must-knowvnf-managers-you-must-know
vnf-managers-you-must-know
 
Deploy TOSCA Network Functions Virtualization (NFV) Workloads in OpenStack
Deploy TOSCA Network Functions Virtualization (NFV) Workloads in OpenStackDeploy TOSCA Network Functions Virtualization (NFV) Workloads in OpenStack
Deploy TOSCA Network Functions Virtualization (NFV) Workloads in OpenStack
 
Multisite OpenStack for NFV: Bridging the Gap
Multisite OpenStack for NFV: Bridging the GapMultisite OpenStack for NFV: Bridging the Gap
Multisite OpenStack for NFV: Bridging the Gap
 
NFV Orchestration for Telcos using OpenStack Tacker
NFV Orchestration for Telcos using OpenStack TackerNFV Orchestration for Telcos using OpenStack Tacker
NFV Orchestration for Telcos using OpenStack Tacker
 
openstack, devops and people
openstack, devops and peopleopenstack, devops and people
openstack, devops and people
 
OpenStack and DevOps - DevOps Meetup
OpenStack and DevOps - DevOps MeetupOpenStack and DevOps - DevOps Meetup
OpenStack and DevOps - DevOps Meetup
 
Service discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consulService discovery in a microservice architecture using consul
Service discovery in a microservice architecture using consul
 
OpenStack and private cloud
OpenStack and private cloudOpenStack and private cloud
OpenStack and private cloud
 
Summit 16: OpenStack Tacker - Open Platform for NFV Orchestration
Summit 16: OpenStack Tacker - Open Platform for NFV OrchestrationSummit 16: OpenStack Tacker - Open Platform for NFV Orchestration
Summit 16: OpenStack Tacker - Open Platform for NFV Orchestration
 
DevOps and OpenStack December 2012
DevOps and OpenStack December 2012DevOps and OpenStack December 2012
DevOps and OpenStack December 2012
 
Openstack 2016 Barcelona - Adiuvo Bot – Smart DevOps using bots for effectiv...
Openstack 2016  Barcelona - Adiuvo Bot – Smart DevOps using bots for effectiv...Openstack 2016  Barcelona - Adiuvo Bot – Smart DevOps using bots for effectiv...
Openstack 2016 Barcelona - Adiuvo Bot – Smart DevOps using bots for effectiv...
 

Ähnlich wie DevOps Guide to Container Networking

Ähnlich wie DevOps Guide to Container Networking (20)

Octo talk : docker multi-host networking
Octo talk : docker multi-host networking Octo talk : docker multi-host networking
Octo talk : docker multi-host networking
 
Dockerffm meetup 20150113_networking
Dockerffm meetup 20150113_networkingDockerffm meetup 20150113_networking
Dockerffm meetup 20150113_networking
 
How Linux Processes Your Network Packet - Elazar Leibovich
How Linux Processes Your Network Packet - Elazar LeibovichHow Linux Processes Your Network Packet - Elazar Leibovich
How Linux Processes Your Network Packet - Elazar Leibovich
 
Docker Meetup: Docker Networking 1.11, by Madhu Venugopal
Docker Meetup: Docker Networking 1.11, by Madhu VenugopalDocker Meetup: Docker Networking 1.11, by Madhu Venugopal
Docker Meetup: Docker Networking 1.11, by Madhu Venugopal
 
Docker Meetup: Docker Networking 1.11 with Madhu Venugopal
Docker Meetup: Docker Networking 1.11 with Madhu VenugopalDocker Meetup: Docker Networking 1.11 with Madhu Venugopal
Docker Meetup: Docker Networking 1.11 with Madhu Venugopal
 
Docker 1.11 Meetup: Networking Showcase
Docker 1.11 Meetup: Networking ShowcaseDocker 1.11 Meetup: Networking Showcase
Docker 1.11 Meetup: Networking Showcase
 
Hong kongopenstack2013 sdn_bluehost
Hong kongopenstack2013 sdn_bluehostHong kongopenstack2013 sdn_bluehost
Hong kongopenstack2013 sdn_bluehost
 
Osnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptxOsnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptx
 
MikroTik & RouterOS
MikroTik & RouterOSMikroTik & RouterOS
MikroTik & RouterOS
 
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
 
From NAT to NAT Traversal
From NAT to NAT TraversalFrom NAT to NAT Traversal
From NAT to NAT Traversal
 
Microservices using relocatable Docker containers
Microservices using relocatable Docker containersMicroservices using relocatable Docker containers
Microservices using relocatable Docker containers
 
HSB - Secure DNS en BGP ontwikkelingen - Benno Overeinder
HSB - Secure DNS en BGP ontwikkelingen - Benno OvereinderHSB - Secure DNS en BGP ontwikkelingen - Benno Overeinder
HSB - Secure DNS en BGP ontwikkelingen - Benno Overeinder
 
DPDK in Containers Hands-on Lab
DPDK in Containers Hands-on LabDPDK in Containers Hands-on Lab
DPDK in Containers Hands-on Lab
 
VXLAN Distributed Service Node
VXLAN Distributed Service NodeVXLAN Distributed Service Node
VXLAN Distributed Service Node
 
Securing & Enforcing Network Policy and Encryption with Weave Net
Securing & Enforcing Network Policy and Encryption with Weave NetSecuring & Enforcing Network Policy and Encryption with Weave Net
Securing & Enforcing Network Policy and Encryption with Weave Net
 
SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspe
 
Big Data in Container; Hadoop Spark in Docker and Mesos
Big Data in Container; Hadoop Spark in Docker and MesosBig Data in Container; Hadoop Spark in Docker and Mesos
Big Data in Container; Hadoop Spark in Docker and Mesos
 
Docker Multihost Networking
Docker Multihost Networking Docker Multihost Networking
Docker Multihost Networking
 
AstriCon 2017 - Docker Swarm & Asterisk
AstriCon 2017  - Docker Swarm & AsteriskAstriCon 2017  - Docker Swarm & Asterisk
AstriCon 2017 - Docker Swarm & Asterisk
 

Mehr von Dirk Wallerstorfer

Mehr von Dirk Wallerstorfer (7)

Moving beyond DevOps with automated cloud-native platforms
Moving beyond DevOps with automated cloud-native platformsMoving beyond DevOps with automated cloud-native platforms
Moving beyond DevOps with automated cloud-native platforms
 
OpenStack Maintenance - Find the Needle in the Haystack
OpenStack Maintenance - Find the Needle in the HaystackOpenStack Maintenance - Find the Needle in the Haystack
OpenStack Maintenance - Find the Needle in the Haystack
 
OpenStack Day 2 Operations (Toronto)
OpenStack Day 2 Operations (Toronto)OpenStack Day 2 Operations (Toronto)
OpenStack Day 2 Operations (Toronto)
 
OpenStack Day 2 Operations
OpenStack Day 2 OperationsOpenStack Day 2 Operations
OpenStack Day 2 Operations
 
OpenStack Full Stack Monitoring and Troubleshooting
OpenStack Full Stack Monitoring and TroubleshootingOpenStack Full Stack Monitoring and Troubleshooting
OpenStack Full Stack Monitoring and Troubleshooting
 
Monitoring OpenStack? Piece of cake!
Monitoring OpenStack? Piece of cake!Monitoring OpenStack? Piece of cake!
Monitoring OpenStack? Piece of cake!
 
How monitoring OpenStack can positively affect your sleeping habits and hairstyl
How monitoring OpenStack can positively affect your sleeping habits and hairstylHow monitoring OpenStack can positively affect your sleeping habits and hairstyl
How monitoring OpenStack can positively affect your sleeping habits and hairstyl
 

Kürzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Kürzlich hochgeladen (20)

Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

DevOps Guide to Container Networking

Hinweis der Redaktion

  1. to get a feeling how much experience you guys have, I want to start with a joke – it’s also a good way to start the day, either you will laugh because of the joke or because of me trying to tell the joke – either way, laughing is healthy no matter what, so here we go
  2. containers, history, usage
  3. container networking, different options, network overlays, flat networks, we’ll take a look at options and compare the most common options
  4. software defined everything! int his case it’s about software defined networking and why you should care
  5. Guidance, pitfalls, and tuning what is the takeaway? you will use these technologies, and there are some problem that you will run into if you get started, I want to tell you upfront what these problems are and how you can prevent them there is not that much experience with these technologies today, but we have already seen some pitfalls that I would want to make you aware of to that end, I want to explain to you how container networking works in detail, what kind of options there are for container networking, about the compatibility of the networking options to common orchestration tools you would definitely need if you did want to run containers in production, and
  6. container networking, different options, network overlays, flat networks, we’ll take a look at options and compare the most common options
  7. software defined everything! int his case it’s about software defined networking and why you should care
  8. today there are proprietary protocols, hundreds of network components that need to be configured correctly, there are solutions but vendor lock-in network operators today have to “coax” their network equipment and its embedded control plane to meet their networking objectives worst case scenario: exaggeration: new loadbalancer, webservers, database cluster -> network configuration must be done by hand -> this will take forever classical SDN, ideas have been around for many years, promote concepts that can help make network administration easier again, e.g. centralized vs. decentralized control plane, global network-wide view of network state intents can be communicated through the northbound API of the controller that is independent of the physical network components; no intent: “create a new OSPF route on switch 16 and update the access control list on switches 3 to 5 and routers 1, 4, and 7”; intent: “connect server A and B, make sure that there is at least 20 MBit/s bandwidth available and the best possible transport quality” direct control to the underlying network components through the southbound API of the controller (e.g. OpenFlow), that configures forwarding and routing tables in commodity hardware
  9. today there are proprietary protocols, hundreds of network components that need to be configured correctly, there are solutions but vendor lock-in network operators today have to “coax” their network equipment and its embedded control plane to meet their networking objectives worst case scenario: exaggeration: new loadbalancer, webservers, database cluster -> network configuration must be done by hand -> this will take forever classical SDN, ideas have been around for many years, promote concepts that can help make network administration easier again, e.g. centralized vs. decentralized control plane, global network-wide view of network state intents can be communicated through the northbound API of the controller that is independent of the physical network components; no intent: “create a new OSPF route on switch 16 and update the access control list on switches 3 to 5 and routers 1, 4, and 7”; intent: “connect server A and B, make sure that there is at least 20 MBit/s bandwidth available and the best possible transport quality” direct control to the underlying network components through the southbound API of the controller (e.g. OpenFlow), that configures forwarding and routing tables in commodity hardware
  10. not for large enterprises that run their own networks over several locations, for mid-size enterprise that for example use MPLS VPN services of their ISP but don’t want to route all the traffic over this connection since it’s quite expensive in terms of dollar/bit, alternative connection like the public Internet is often good enough
  11. operates on existing underlying network, regardless of how the underlying network is configured little invest necessary, if you already have a working network in place NOTHING NEW: IPSec, MPLS, GRE, SSL VPN, ... overlay and encapsulation have been around for many years
  12. although this works, you are limited to IP addresses of hosts again – so there is virtually no benefit service resiliency
  13. etcd, zookeeper, consul: to keep network overlay information in sync and share with all other overlay participants some ports must be accessible for these tools to exchange information, ports vary
  14. look in detail how these two networking options work, and take one example
  15. VXLAN is the defacto standard, everybody knows it, has been around for X years now, hardware support from several vendors – it’s the technology to go for, if you don’t know what to choose – for now VMware NSX also relies on VXLAN, a lot of networking that is going on in the OpenStack area relies on VXLAN Open vSwitch relies on VXLAN STT – stateless tunneling protocol, fake TCP header to utilize TCP segmentation offloading of NIC and not all computing has to be done by the CPU NVGRE – alternative to VXLAN, works quite similar, works on IP level Geneve – the new’er’ kid on the block, already supported by OVN and OpenV Switch,
  16. VXLAN is the defacto standard, everybody knows it, has been around for X years now, hardware support from several vendors – it’s the technology to go for, if you don’t know what to choose – for now VMware NSX also relies on VXLAN, a lot of networking that is going on in the OpenStack area relies on VXLAN Open vSwitch relies on VXLAN STT – stateless tunneling protocol, fake TCP header to utilize TCP segmentation offloading of NIC and not all computing has to be done by the CPU NVGRE – alternative to VXLAN, works quite similar, works on IP level Geneve – the new’er’ kid on the block, already supported by OVN and OpenV Switch,
  17. VXLAN is the defacto standard, everybody knows it, has been around for X years now, hardware support from several vendors – it’s the technology to go for, if you don’t know what to choose – for now VMware NSX also relies on VXLAN, a lot of networking that is going on in the OpenStack area relies on VXLAN Open vSwitch relies on VXLAN STT – stateless tunneling protocol, fake TCP header to utilize TCP segmentation offloading of NIC and not all computing has to be done by the CPU NVGRE – alternative to VXLAN, works quite similar, works on IP level Geneve – the new’er’ kid on the block, already supported by OVN and OpenV Switch,
  18. VXLAN is the defacto standard, everybody knows it, has been around for X years now, hardware support from several vendors – it’s the technology to go for, if you don’t know what to choose – for now VMware NSX also relies on VXLAN, a lot of networking that is going on in the OpenStack area relies on VXLAN Open vSwitch relies on VXLAN STT – stateless tunneling protocol, fake TCP header to utilize TCP segmentation offloading of NIC and not all computing has to be done by the CPU NVGRE – alternative to VXLAN, works quite similar, works on IP level Geneve – the new’er’ kid on the block, already supported by OVN and OpenV Switch,
  19. VXLAN is the defacto standard, everybody knows it, has been around for X years now, hardware support from several vendors – it’s the technology to go for, if you don’t know what to choose – for now VMware NSX also relies on VXLAN, a lot of networking that is going on in the OpenStack area relies on VXLAN Open vSwitch relies on VXLAN STT – stateless tunneling protocol, fake TCP header to utilize TCP segmentation offloading of NIC and not all computing has to be done by the CPU NVGRE – alternative to VXLAN, works quite similar, works on IP level Geneve – the new’er’ kid on the block, already supported by OVN and OpenV Switch,
  20. explain the joke at this slide! if the encapsulation protocol would also use TCP, then the self healing powers of TCP would be redundant! the TCP stack of the container takes care of making sure that the connection is intact – if a UDP datagram is dropped along the way, TCP takes care of requesting this segment of data again – so stateless transport at this level is sufficient
  21. explain the joke at this slide! if the encapsulation protocol would also use TCP, then the self healing powers of TCP would be redundant! the TCP stack of the container takes care of making sure that the connection is intact – if a UDP datagram is dropped along the way, TCP takes care of requesting this segment of data again – so stateless transport at this level is sufficient
  22. macvlan, ipvlan ONS2016 overlay adds a layer of abstraction = adds a layer of complexity VXLAN good for development environment greenfield environment that don’t have legacy stuff IPVLAN future of large scale networking! ridiculously fast, near wire no ARP, no broadcast turn primary NIC on a linux host into a router
  23. how I imagine the idea for Calico was found
  24. how I imagine the idea for Calico was found
  25. Apache Felix for route configurations
  26. In reality it is like with every other network ... you’ll run into similar troubles, e.g. connectivity problems, while you can’t
  27. Location of services that talk to each other: k8s pods, marathon application groups, docker swarm constraints watch out that services that talk to each other a lot a colocated to a certain extent, e.g. k8s pods, marathon application groups, swarm constraints, fleet units, ... or manually; make sure that the traffic between two services doesn’t go through every switch in your datacenter before arriving at your target
  28. workload runs in container with any of the previously mentioned container networking options and you notice packet loss and connectivity problems of the offered services check log files iptables is a stateful firewall and TCP is a stateful protocol, the conntrack table tracks all active connections that are processed concurrently on one host. if there are several workloads with high network activity, the connection table can get full and you cannot statefully track new connections anymore until older connections are closed
  29. Commonly, the largest IP packet that can fit into Ethernet frame MTU: encapsulation transfer and CPU overhead, measurements from packetpushers, ... 3-6% overhead with encapsulation! encapsulation protocols have impact on MTU; consider scenario with multiple encapsulations ... what about data connections between two locally distributed sites that are connected with a IPSEC/SSL-VPN tunnel? VXLAN vs STT vs Geneve: TCP checksum offloading, TCP segmentation offload, ready for encryption, room for custom data
  30. you can destroy your network performance by making administration easier ... the cost/tradeoff should be clear to everyone up front!
  31. one major US retailer correlates 0.5 second site slowdown to 11% reduction in conversions!
  32. one major US retailer correlates 0.5 second site slowdown to 11% reduction in conversions! the choice of your networking driver for your multi-host container communication actually does matter – in fact, it matters a lot!
  33. solving a problem with complexity almost never turns out great, keep it as simple as possible while respecting your needs and requirements make sure you have an overview of what’s going on and don’t jump to conclusion too quickly follow twitter and see which orchestrators and networking vendor are the most active and have the most integrations, these are also the ones that will help you when you’re stuck and these will be the ones that are going to be around for the longest time
  34. volume-oriented and quality-oriented metrics
  35. volume-oriented and quality-oriented metrics
  36. short summary about what we’ve talked – let’s see if there are any questions