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 For Developers - Sydney Alt.Net
Search
Hossam Barakat
November 27, 2018
Technology
0
56
Kubernetes For Developers - Sydney Alt.Net
Hossam Barakat
November 27, 2018
Tweet
Share
More Decks by Hossam Barakat
See All by Hossam Barakat
Build Your Cloud Infrastructure as Code With .Net Core - Build Stuff
hossambarakat
0
71
Kubernetes Blue-Green Deployment Made Easy with Argo Rollouts - ADDO
hossambarakat
0
120
Build Your Azure Infrastructure as Code With .NET Core - Azure Day
hossambarakat
0
38
Build Your Azure Infrastructure as Code With .Net Core - Global Azure 2021
hossambarakat
0
56
Practical Domain-Driven Design with EF Core - NDC London 2021
hossambarakat
0
250
Build Your Cloud Infrastructure as Code With .Net Core - ADDO 2020
hossambarakat
0
140
Practical Domain Driven Design With EFCore - NDC Sydney 2020
hossambarakat
0
140
Build Your Cloud Infrastructure as Code With .Net Core - NDC Porto 2020
hossambarakat
2
150
Kubernetes for Developers - All Day DevOps
hossambarakat
2
180
Other Decks in Technology
See All in Technology
“それなりに”安全なWebアプリケーションの作り方
xryuseix
0
370
ZOZOTOWNカート決済リプレイス ── モジュラモノリスという過渡期戦略
zozotech
PRO
0
320
AWS資格は取ったけどIAMロールを腹落ちできてなかったので、年内に整理してみた
hiro_eng_
0
220
Claude Code 10連ガチャ
uhyo
3
680
Flutterで実装する実践的な攻撃対策とセキュリティ向上
fujikinaga
2
410
Lazy Constant - finalフィールドの遅延初期化
skrb
0
190
Javaコミュニティの歩き方 ~参加から貢献まで、すべて教えます~
tabatad
0
110
AIと共に開発する時代の組織、プロセス設計 freeeでの実践から見えてきたこと
freee
3
690
手を動かしながら学ぶデータモデリング - 論理設計から物理設計まで / Data modeling
soudai
PRO
24
5.3k
Spring Boot利用を前提としたJavaライブラリ開発方法の提案
kokihoshihara
PRO
2
210
データとAIで未来を創るDatabricks - 君の可能性を加速させるプラットフォーム
taka_aki
0
110
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
3
1.3k
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
329
39k
We Have a Design System, Now What?
morganepeng
54
7.9k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Building an army of robots
kneath
306
46k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Embracing the Ebb and Flow
colly
88
4.9k
Scaling GitHub
holman
463
140k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Transcript
Kubernetes for Developers Hossam Barakat Senior Consultant at Readify @hossambarakat_
| www.hossambarakat.net
@hossambarakat_ • What is Kubernetes? • Why Kubernetes? • Kubernetes
Architecture • Kubernetes Building Blocks • Kubernetes in the cloud Agenda
@hossambarakat_ Hardware Host Operating System Application Application Application Container Dependencies
Application Host Operating System Hardware Container Engine Container Container Container Container Hardware Host Operating System Virtual Machine Guest OS Application Virtual Machine Guest OS Application Hypervisor
@hossambarakat_ What is Docker?
@hossambarakat_ The application is deployed to production
@hossambarakat_ Then the application went viral
@hossambarakat_ Containers bring scalability challenges!
@hossambarakat_ Container orchestration platforms to rescue
@hossambarakat_ • Service discovery • Scaling • Health monitoring •
Failover • Networking • Scheduling • Coordinated app upgrades Container Orchestration
@hossambarakat_ Kubernetes
@hossambarakat_ • Self-healing • Horizontal scaling • Service discovery and
load balancing • Automated rollouts and rollbacks • Secret and configuration management • Storage orchestration • Automatic binpacking • Batch execution Why Kubernetes?
@hossambarakat_ Why do we use K8s instead of Kubernetes? Kubernetes
8 K8s
@hossambarakat_ Kubernetes Architecture Master Worker Worker Client Worker Cluster
@hossambarakat_ Kubernetes Architecture Master API Server Controller Manager Scheduler Worker
Kubelet Container Runtime UI (Dashboard) CLI (Kubectl) Other Client(s) Container Container Cluster
@hossambarakat_ • Localhost installation (Minikube, Docker For Desktop) • On-Premise
Installation (VMs, Bare Metal) • Cloud (Google, Azure, AWS,…) Installing Kubernetes
@hossambarakat_ ASP.NET App On Kubernetes ASP.NET Application
@hossambarakat_ ASP.NET App On Kubernetes ASP.NET Application ASP.NET Application ASP.NET
Application
@hossambarakat_ Pods
@hossambarakat_ Pods Pod
@hossambarakat_ Pods Scaling Pod Pod
@hossambarakat_
@hossambarakat_ But wait… what happens if the pod dies?
@hossambarakat_ ReplicaSets Pod ReplicaSet Pod
@hossambarakat_ ReplicaSets Master Worker 1 Worker 2 Pod 1 Pod
2 Worker 3 Pod 2
@hossambarakat_ Labels Pod
@hossambarakat_
@hossambarakat_ Deployment ReplicaSet Deployment Pod Pod
@hossambarakat_ Deployment Rollout Deployment ReplicaSet V2 Pod Pod ReplicaSet V1
Pod Pod
@hossambarakat_
@hossambarakat_ Connecting to Pods 10.0.0.1 DB Pod A 10.0.0.2 DB
Pod B ASP.NET Pod
@hossambarakat_ Service 10.0.0.2 Pod B 10.0.0.3 Pod C IP: 10.0.0.30
DNS: myservice Service 10.0.0.1 Pod A
@hossambarakat_ Service 10.0.0.1 DB Pod A ASP.NET Pod IP: 10.0.0.30
DNS: myservice Service
@hossambarakat_ Service IP: 10.0.0.30 DNS: tasks-app-svc Service IP: 10.0.0.90 DNS:
mssql-service Service 10.0.0.1 Pod 10.0.0.1 Pod 10.0.0.1 Pod
@hossambarakat_
@hossambarakat_ Persistent Volume
@hossambarakat_ Persistent Volume
@hossambarakat_ Persistent Volume
@hossambarakat_
@hossambarakat_ Kubernetes in the cloud
Azure AKS $ az aks create -g myResourceGroup -n myCluster
--generate-ssh-keys $ az aks get-credentials -g myResourceGroup -n myCluster $ kubectl get nodes $ az aks scale -g myResourceGroup -n myCluster --node-count 6
@hossambarakat_ • Kubernetes Architecture • Deploy application using different workloads
• Kubernetes in the cloud Summary
@hossambarakat_ • https://github.com/hossambarakat/TaskList • Introduction to Kubernetes (edX) • Learn
Kubernetes using Interactive Hands-on Scenarios (Katacoda) • https://kubernetes.io/docs/ Resources
@hossambarakat_ Questions?
Thanks Hossam Barakat @hossambarakat_ www.hossambarakat.net