Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Docker Networking with Clocker and Weave
Search
Andrew Kennedy
November 27, 2014
Technology
0
97
Docker Networking with Clocker and Weave
Talk given at Edinburgh Docker Meetup, November 2014.
Andrew Kennedy
November 27, 2014
Tweet
Share
More Decks by Andrew Kennedy
See All by Andrew Kennedy
Building a Blockchain Platform with Hyperledger Sawtooth and Seth
grkvlt
1
240
Building a Blockchain
grkvlt
1
100
Blockchain and Brooklyn
grkvlt
0
120
Hyperledger in Action
grkvlt
1
130
Keeping OpenShift Evergreen
grkvlt
0
110
Orchestrating the Blockchain Using Containers
grkvlt
0
170
Introducing Cloudsoft Container Service
grkvlt
0
60
Managing Blockchain Applications with Hyperledger and Docker on Cloudsoft AMP
grkvlt
0
310
Multi-Container Applications Spanning Docker, Mesos and OpenStack
grkvlt
2
810
Other Decks in Technology
See All in Technology
Shopifyアプリ開発における Shopifyの機能活用
sonatard
4
260
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
710
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
770
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
180
OTelCol_TailSampling_and_SpanMetrics
gumamon
1
220
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
490
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
2
230
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
270
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
120
生成AIが変えるデータ分析の全体像
ishikawa_satoru
0
170
FlutterアプリにおけるSLI/SLOを用いたユーザー体験の可視化と計測基盤構築
ostk0069
0
110
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
430
A designer walks into a library…
pauljervisheath
204
24k
Making Projects Easy
brettharned
115
5.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Designing Experiences People Love
moore
138
23k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Automating Front-end Workflow
addyosmani
1366
200k
Documentation Writing (for coders)
carmenintech
65
4.4k
RailsConf 2023
tenderlove
29
900
Transcript
Docker Networking with Clocker and Weave Andrew
Kennedy @grkvlt Edinburgh Docker Meetup, November 2014
Introduc)on • Andrew Kennedy – So1ware Engineer
– Open Source – github.com/grkvlt • Cloudso1 Corpora)on – Local (CodeBase) Company – We’re Hiring…
Introduc)on • Moving Parts • Docker •
Weave • Clocker • Brooklyn • Demonstra)on
Clocker Project • What does it do? – Manages
Docker Infrastructure – Deploys Blueprints to Docker • What is it? – Brooklyn Applica)on – Brooklyn Loca)on
Docker • Popular – Huge Ecosystem – Growing
– Complex • Containers – Isola)on – Performance – Composable
Docker
LimitaEons… Docker LimitaEons…
Docker Limita)ons • Mul)ple Hosts • Networking
– Same Issue – Communica)on Between Services • Orchestra)on and Clustering – Control of Containers – Container Management
Docker Limita)ons • Plugin API will Help •
Not standardized yet • Working on it… • Need to avoid lock-‐in • One size fits all is never good enough
Docker Networking • Separate Container Network • RFC
1918 Private Addresses • Non Routable • Bridged to Host • Port Forwarding • Mul)ple Endpoints for Services
Docker Topology
So1ware Defined Networking • Overlay Networks • Kernel
or User Space • Many Op)ons – Pipework – SocketPlane – Flannel – Open vSwitch – Weave
Weave • Ethernet Switch – User Space
– Docker Container • Mesh Topology • Routes TCP Traffic – Sniffs on Host – Forwards over TCP
Weave
Clocker Project
Clocker Project • Open Source • GitHub
• Apache 2.0 Licensed • Java • Recently Developed • S)ll Beta Status • 0.7.0-‐SNAPSHOT
Why Clocker • Docker Popularity – Solve Some
Limita)ons • Best of Breed – Configura)on – Components • Brooklyn Integra)on – Container to En)ty Mapping
Apache Brooklyn • Apache Brooklyn – Cloudso1 Product
– Open Source Java – Donated to the ASF – Incubator Status
Apache Brooklyn • Applica)on Management Placorm • Deploy,
Manage and Monitor Blueprints • Provisioning, Installa)on and Customiza)on • Management • AutoScaling, Resilience, Performance, Access
Apache Jclouds • Java Cloud Library • API
Agnos)c – CloudStack, OpenStack, AWS EC2, GCE… • Create Virtual Machines – Return SSH Endpoint – Manage Proper)es
Apache Jclouds • Drivers for REST APIs •
Docker Driver – Wrifen by @turlinux • Virtual Container – Using SSH Daemon – Same Endpoint Type as VM – Composi)on on any Image or Dockerfile
Clocker Features • Applica)on Deployment – Oasis CAMP
YAML Blueprint – TOSCA in Development – Same as Core Brooklyn • Mixed Des)na)ons – Some Virtual Machines – Some Bare Metal – Some Containers
Container Management • Sources – Docker Image Defini)on
– Docker Hub – Dockerfile – Brooklyn En)ty Defini)on • Create Image Automa)cally – Commit or Push for Reuse
Container Placement • Placement Strategies – Random, Depth
or Breadth First – CPU or Memory Usage – Memory, CPU or Container Limits – Geographic Constraints • User Defined – Java Predicate
Networking • Shared Weave LAN – Common to All
Containers – Private (Link Local) Addresses • Clocker Controls IP Alloca)on – Applica)ons Segmented by CIDR • Docker Port Forwarding Access
Networking • S)ll First Steps… • Name Resolu)on
– BIND and DNSmasq – Needed for JMX et al • Enables Many More En))es • But Needs Tested!
DemonstraEon
None
None
None
Roadmap • Networking – DNS and DNSmasq Integra)on
– Rancher Integra)on – Open vSwictch Integra)on • Gelng Started – Clocker Dockerfile
Roadmap • Repositories – Docker Repository – Bintray, Ar)factory,
Quay.io – Private Repositories • Applica)on Defini)on – TOSCA
Summary • Clocker – Brooklyn + Docker + Jclouds
+ Weave • Solves – Docker Networking – Container Placement – Applica)on Defini)on
Audience Ques)ons? 1. Typical Docker use cases? 2.
What networking features would make these easier? 3. What other features would be most useful to enhance Docker usability?
Thanks! Ques)ons?
Web Resources http://clocker.io/ http://brooklyn.io/ http://docker.io/ http://github.com/zettio/weave/
http://abstractvisitorpattern.co.uk/