Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Calico and CoreOS, March 2015
Neil Jerram
March 11, 2015
Technology
3
340
Calico and CoreOS, March 2015
Simple IP networking for clustered Docker containers
Neil Jerram
March 11, 2015
Tweet
Share
More Decks by Neil Jerram
See All by Neil Jerram
Calico Presentation at Cologne Docker Meetup, April 2015
neiljerram
2
1.3k
Other Decks in Technology
See All in Technology
ひとりで書ける! 日英文章作成のコツ / Do-it-yourself! - Tips for writing in Japanese-English
line_developers
PRO
1
390
- Rでオブジェクト指向プログラミング- クラス設計入門の入門
kotatyamtema
1
530
Visual Studio Codeのタスク機能の使い方
ismt7
0
170
Oktaの管理者権限を適切に移譲してみた
shimosyan
2
220
アジャイルな組織改善〜手法とマインドセット〜
ishige
7
5.2k
F1 Ochanomizu GP '23
miholovesq
0
600
データエンジニアを助けてくれるFivetranとSnowflakeの仕様&機能のご紹介
sagara
0
410
Kubernetes_EKSに入門してみる
toru_kubota
0
220
マイクロサービス宣言から8年 振り返りとこれから / Eight Years After the Microservices Declaration A Look Back and A Look Ahead
eisuke
2
120
PHPのimmutable arrayとは
hnw
1
130
CEXやDEXに依存しないブロックチェーン取引について考える
sbtechnight
0
310
2年で10→70人へ! スタートアップの 情報セキュリティ課題と施策
miekobayashi
1
170
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
451
31k
Agile that works and the tools we love
rasmusluckow
320
20k
Bash Introduction
62gerente
601
210k
From Idea to $5000 a Month in 5 Months
shpigford
374
44k
Intergalactic Javascript Robots from Outer Space
tanoku
261
26k
Debugging Ruby Performance
tmm1
67
11k
Typedesign – Prime Four
hannesfritz
34
1.5k
YesSQL, Process and Tooling at Scale
rocio
159
12k
Making Projects Easy
brettharned
102
4.8k
Stop Working from a Prison Cell
hatefulcrawdad
263
18k
The Straight Up "How To Draw Better" Workshop
denniskardys
225
130k
A Tale of Four Properties
chriscoyier
149
21k
Transcript
THE BRAINS OF THE NEW GLOBAL NETWORK CALICO ON COREOS
- SIMPLE IP NETWORKING FOR CLUSTERED DOCKER CONTAINERS Neil Jerram 10th March 2015 Metaswitch Networks | Proprietary and confidential | © 2014 | 1
Open source (Apache licensed) project Networking of workloads
in a data center / cloud environment Sponsored by Metaswitch WHAT IS CALICO? Metaswitch Networks | Proprietary and confidential | © 2014 | 2 Simple Scale Open Thousands of servers, 100k’s of workloads Don’t demand users to be networking experts Open source and open standards
VIRTUAL NETWORKING FOR CONTAINERS Metaswitch Networks | © 2015 |
3 Kernel NAT + Port Mapping Linux Bridge Container Container Container Kernel NAT + Port Mapping Linux Bridge Container Container Container
Virtual L2 segments, implemented in software by virtual switch THE
STANDARD VIRTUAL NETWORKING MODEL Metaswitch Networks | Proprietary and confidential | © 2014 | 4 vSwitch vSwitch vSwitch Linux Linux Linux Encap / de- encap (& flooding!) Outer MAC Outer IP Outer UDP VXLAN VM MAC VM IP VM TCP/UDP VM Data Router service required to hop between tenants NAT required for public Internet access On/off-ramp required to get to NAS, etc. Virtual L2 segments, implemented in software by virtual switch
☹ Unnecessary complexity ☹ Low scale limits ☹ Performance issues
☹ Management overhead ☹ Inefficient resource utilization ☹ Difficulty troubleshooting ☹ Demands placed on application developers to be networking experts THIS LEADS TO… Metaswitch Networks | Proprietary and confidential | © 2014 | 5 ALL solutions that use overlay / underlay model suffer from these effects, however they are mitigated. These issues become critical with containers due to the higher scale than VMs (100s vs 10s per server) … It doesn’t have to be this way!
Metaswitch Networks | Proprietary and confidential | © 2014 |
6
WHAT IF WE BUILT A DATA CENTER LIKE THE INTERNET?
Metaswitch Networks | Proprietary and confidential | © 2014 | 7 IP App IP App IP App IP App IP App IP App IP App IP App Router Router Router BGP BGP Hosts
WHAT IF WE BUILT A DATA CENTER LIKE THE INTERNET?
Metaswitch Networks | Proprietary and confidential | © 2014 | 8 IP App IP App IP App IP App IP App IP App IP App IP App BGP BGP Compute Node Compute Node VMs / LXCs Router Router Router VMs / LXCs
ADVANTAGES OF THE CALICO MODEL More scalable Based
on proven Internet-style architecture More efficient Simplified data path between VMs and physical network Equal Cost Multi-Path (ECMP) enables full utilization of physical links Easier to troubleshoot Eliminates nested IP stacks needed for overlay-based networking More secure Applies traffic isolation rules at both egress and ingress points More interoperable Supports direct connectivity between VMs, Linux Containers (LXCs) and physical devices Does not require “On/Off ramps” for non-virtualized network elements More robust Load-balancing and resilience easily provided by Anycast More straightforward 1:1 NAT and floating IPs are no longer strict requirements More distributable Supports geographically distributed service chains straightforwardly Metaswitch Networks | Proprietary and confidential | © 2014 | 9
DEMO TIME… Metaswitch Networks | Proprietary and confidential | ©
2014 | 10 CoreOS Host 1 Policy Group 1 (“Default”) L2 Policy Group 2 (“Group_A”) CoreOS Host 2 Container C 192.168.1.3 Container B 192.168.1.2 Container A 192.168.1.1 Workloads Felix BIRD Calico Control Plane (‘node’ container) Container E 192.168.1.5 Container D 192.168.1.4 Workloads Felix BIRD Calico Control Plane (‘node’ container) etcd, Powerstrip etcd, Powerstrip Plugin.ep Plugin.net Calico Orchestrator (‘master’ container) ACL Manager
DEMO TIME… Metaswitch Networks | Proprietary and confidential | ©
2014 | 11 CoreOS Host 1 Policy Group 1 (“Default”) L2 Policy Group 2 (“Group_A”) CoreOS Host 2 Container C 192.168.1.3 Container B 192.168.1.2 Container A 192.168.1.1 Workloads Felix BIRD Calico Control Plane (‘node’ container) Container E 192.168.1.5 Container D 192.168.1.4 Workloads Felix BIRD Calico Control Plane (‘node’ container) etcd, Powerstrip etcd, Powerstrip Plugin.ep Plugin.net Calico Orchestrator (‘master’ container) ACL Manager
DEMO Metaswitch Networks | Proprietary and confidential | © 2014
| 12
GET INVOLVED Main project website: www.projectcalico.org Github
https://github.com/Metaswitch/ calico-docker Mailing list: http://lists.projectcalico.org/listi nfo/calico Download & try it out We welcome your feedback and contributions Metaswitch Networks | Proprietary and confidential | © 2014 | 13