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
17
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
32
React/Flux like pattern for embedded UI
suda
0
130
Swagger Driven Development
suda
0
37
Building great CLIs with Node.js
suda
0
54
Projects more accessible for the new contributors
suda
0
34
From Prototype to Production with Particle
suda
0
81
Ember London Show & Tell: Particle
suda
0
22
Building products with Particle
suda
0
20
Leave Coffee Alone!
suda
0
100
Other Decks in Programming
See All in Programming
もうすぐ新年度、Babylon.jsがお勧めな3個の理由
hideg
0
160
Introduction for Open Source Swift Workshop
giginet
PRO
0
180
品質とスピードを両立: TypeScriptの柔軟な型システムをバックエンドで活用する
kosui
4
870
両面どころかインフラもTSでできるよ ~ 全方位TypeScriptによるプロダクト開発 ~
myfinder
8
2.2k
受託開発でGitLab CI を活用していく
xiombatsg
1
110
Creating Retro-Style Photos Using Swift
ski
1
340
オブジェクト指向は必要なのか / Is object-oriented needed?
kishida
27
19k
object-oriented-conference-2024
fuwasegu
6
1.8k
C# 大統一理論推進委員会 会員のための Unity Package Manager プロジェクト構成案
monry
PRO
0
580
今の SmartHR にエンジニアで入社するとどうなるの?
daisukeshinoku
1
290
Learning PHP and Static Analysis with PHP Parser
inouehi
1
250
WinUI 3デモ - "CommunityToolkit.Mvvm"NuGetパッケージ編
andrewkeepcoding
0
130
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
57
7.1k
How GitHub (no longer) Works
holman
301
140k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
67
38k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
58
14k
Principles of Awesome APIs and How to Build Them.
keavy
119
16k
YesSQL, Process and Tooling at Scale
rocio
160
13k
Building an army of robots
kneath
300
41k
Faster Mobile Websites
deanohume
296
30k
Learning to Love Humans: Emotional Interface Design
aarron
266
39k
Building Your Own Lightsaber
phodgson
97
5.6k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.8k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
101
6.6k
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