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
32
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
59
React/Flux like pattern for embedded UI
suda
0
210
Swagger Driven Development
suda
0
51
Building great CLIs with Node.js
suda
0
64
Projects more accessible for the new contributors
suda
0
43
From Prototype to Production with Particle
suda
0
100
Ember London Show & Tell: Particle
suda
0
28
Building products with Particle
suda
0
30
Leave Coffee Alone!
suda
0
120
Other Decks in Programming
See All in Programming
Ruby Parser progress report 2025
yui_knk
1
460
ProxyによるWindow間RPC機構の構築
syumai
3
1.2k
アセットのコンパイルについて
ojun9
0
130
AI Coding Agentのセキュリティリスク:PRの自己承認とメルカリの対策
s3h
0
240
@Environment(\.keyPath)那么好我不允许你们不知道! / atEnvironment keyPath is so good and you should know it!
lovee
0
130
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
280
テストコードはもう書かない:JetBrains AI Assistantに委ねる非同期処理のテスト自動設計・生成
makun
0
550
testingを眺める
matumoto
1
140
プロポーザル駆動学習 / Proposal-Driven Learning
mackey0225
2
1.3k
AIを活用し、今後に備えるための技術知識 / Basic Knowledge to Utilize AI
kishida
22
5.9k
OSS開発者という働き方
andpad
5
1.7k
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
710
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
850
A designer walks into a library…
pauljervisheath
207
24k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.7k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Being A Developer After 40
akosma
90
590k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.6k
For a Future-Friendly Web
brad_frost
180
9.9k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Designing for humans not robots
tammielis
253
25k
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