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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Wojtek Siudzinski
May 15, 2018
Programming
0
40
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
63
React/Flux like pattern for embedded UI
suda
0
240
Swagger Driven Development
suda
0
56
Building great CLIs with Node.js
suda
0
70
Projects more accessible for the new contributors
suda
0
48
From Prototype to Production with Particle
suda
0
120
Ember London Show & Tell: Particle
suda
0
32
Building products with Particle
suda
0
36
Leave Coffee Alone!
suda
0
130
Other Decks in Programming
See All in Programming
Goの型安全性で実現する複数プロダクトの権限管理
ishikawa_pro
2
1.4k
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
480
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
250
Nuxt Server Components
wattanx
0
200
Reactive ❤️ Loom: A Forbidden Love Story
franz1981
2
190
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
210
Kubernetesでセルフホストが簡単なNewSQLを求めて / Seeking a NewSQL Database That's Simple to Self-Host on Kubernetes
nnaka2992
0
190
Geminiをパートナーに神社DXシステムを個人開発した話(いなめぐDX 開発振り返り)
fujiba
0
120
条件判定に名前、つけてますか? #phperkaigi #c
77web
2
860
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
4.9k
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
670
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
240
Featured
See All Featured
First, design no harm
axbom
PRO
2
1.1k
Why Our Code Smells
bkeepers
PRO
340
58k
Exploring anti-patterns in Rails
aemeredith
2
300
Code Review Best Practice
trishagee
74
20k
Paper Plane (Part 1)
katiecoart
PRO
0
6.1k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
A better future with KSS
kneath
240
18k
Documentation Writing (for coders)
carmenintech
77
5.3k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
350
30 Presentation Tips
portentint
PRO
1
260
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
230
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