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
Kubernetes Demystified
Search
Wojtek Siudzinski
May 15, 2018
Programming
0
33
Kubernetes Demystified
“When you look into it, Kubernetes isn’t that complicated after all”
Wojtek Siudzinski
May 15, 2018
Tweet
Share
More Decks by Wojtek Siudzinski
See All by Wojtek Siudzinski
Strategic and tactical time management
suda
0
60
React/Flux like pattern for embedded UI
suda
0
220
Swagger Driven Development
suda
0
53
Building great CLIs with Node.js
suda
0
66
Projects more accessible for the new contributors
suda
0
43
From Prototype to Production with Particle
suda
0
110
Ember London Show & Tell: Particle
suda
0
28
Building products with Particle
suda
0
31
Leave Coffee Alone!
suda
0
120
Other Decks in Programming
See All in Programming
Agentに至る道 〜なぜLLMは自動でコードを書けるようになったのか〜
mackee
5
1.9k
flutter_kaigi_2025.pdf
kyoheig3
1
360
Stay Hacker 〜九州で生まれ、Perlに出会い、コミュニティで育つ〜
pyama86
2
2.4k
「10分以内に機能を消せる状態」 の実現のためにやっていること
togishima
1
530
なぜ強調表示できず ** が表示されるのか — Perlで始まったMarkdownの歴史と日本語文書における課題
kwahiro
12
7.2k
レイトレZ世代に捧ぐ、今からレイトレを始めるための小径
ichi_raven
0
460
How Software Deployment tools have changed in the past 20 years
geshan
0
4.9k
開発生産性が組織文化になるまでの軌跡
tonegawa07
0
190
TypeScript 5.9で使えるようになった import defer でパフォーマンス最適化を実現する
bicstone
1
390
r2-image-worker
yusukebe
1
180
GeistFabrik and AI-augmented software development
adewale
PRO
0
160
Micro Frontendsで築いた 共通基盤と運用の試行錯誤 / Building a Shared Platform with Micro Frontends: Operational Learnings
kyntk
0
130
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Writing Fast Ruby
sferik
630
62k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
940
KATA
mclloyd
PRO
32
15k
Rails Girls Zürich Keynote
gr2m
95
14k
GraphQLとの向き合い方2022年版
quramy
49
14k
BBQ
matthewcrist
89
9.9k
Code Reviewing Like a Champion
maltzj
527
40k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Music & Morning Musume
bryan
46
7k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Transcript
“WHEN YOU LOOK INTO IT, KUBERNETES ISN’T THAT COMPLICATED AFTER
ALL” WYLIIKITCAA
WHAT IS KUBERNETES? CLUSTER STATE STORE (AND MANAGER)
WHAT IS KUBERNETES? DESIRED STATE CLUSTER
WHAT IS KUBERNETES? “I NEED A CONTAINER RUNNING NGINX” Pick
feasible nodes Update their desired state Get the current state
WHAT IS KUBERNETES? “I NEED A CONTAINER RUNNING NGINX” Pick
feasible nodes Update their desired state Get the current state
HOW DO I SET THE DESIRED STATE? apiVersion: v1 kind:
Pod metadata: name: nginx spec: containers: - name: nginx image: nginx:1.7.9 ports: - containerPort: 80
HOW DO I SET THE DESIRED STATE? $ kubectl create
-f pod-nginx.yaml
WHAT IS KUBERNETES? “I NEED A CONTAINER RUNNING NGINX” Pick
feasible nodes Update their desired state Get the current state
HOW DOES KUBERNETES SELECT THE FEASIBLE NODES? CONTROLLERS
DEPLOYMENT STATEFUL SET DAEMON SET WORKLOAD CONTROLLERS
DEPLOYMENT Declarative updates Rolling back Scaling Creates ReplicaSets WORKLOAD CONTROLLERS
STATEFUL SET Guaranteed order and uniqueness Persistant storage Stable, unique
network identifiers WORKLOAD CONTROLLERS
DAEMON SET Running on all nodes WORKLOAD CONTROLLERS
LABELS
AFFINITY TAINT Node selectors Required/preferred Conditions Eviction TAINT AND AFFINITY
WHAT IS KUBERNETES? “I NEED A CONTAINER RUNNING NGINX” Pick
feasible nodes Update their desired state Get the current state
THE DESIRED STATE
ETCD Distributed key/value store Like a directory tree (/etc) JSON/REST
API Uses a Discovery URL Needs at least 3 nodes for consensus
WHAT IS KUBERNETES? “I NEED A CONTAINER RUNNING NGINX” Pick
feasible nodes Update their desired state Get the current state
KUBELET
None
WHAT IS KUBERNETES? “I NEED A CONTAINER RUNNING NGINX” Pick
feasible nodes Update their desired state Get the current state
None