Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Kubernetes For Developers - Sydney Alt.Net
Search
Hossam Barakat
November 27, 2018
Technology
82
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Kubernetes For Developers - Sydney Alt.Net
Hossam Barakat
November 27, 2018
More Decks by Hossam Barakat
See All by Hossam Barakat
Build Your Cloud Infrastructure as Code With .Net Core - Build Stuff
hossambarakat
0
98
Kubernetes Blue-Green Deployment Made Easy with Argo Rollouts - ADDO
hossambarakat
0
160
Build Your Azure Infrastructure as Code With .NET Core - Azure Day
hossambarakat
0
53
Build Your Azure Infrastructure as Code With .Net Core - Global Azure 2021
hossambarakat
0
73
Practical Domain-Driven Design with EF Core - NDC London 2021
hossambarakat
0
270
Build Your Cloud Infrastructure as Code With .Net Core - ADDO 2020
hossambarakat
0
160
Practical Domain Driven Design With EFCore - NDC Sydney 2020
hossambarakat
0
150
Build Your Cloud Infrastructure as Code With .Net Core - NDC Porto 2020
hossambarakat
2
170
Kubernetes for Developers - All Day DevOps
hossambarakat
2
190
Other Decks in Technology
See All in Technology
安心して変更できるWebフロントエンドの作り方
pirosikick
4
2.5k
山手線を徒歩で一周してわかった、 位置情報アプリは「足」が最強のデバッガー
hinakko
0
160
TinyGo 開発サイクルを高速化する:Go で作るエミュレータ入門
zozotech
PRO
1
740
aws-iot-platform-architecture-use-cases.pdf
ma2shita
0
150
AI 時代のスタートアップエコシステ厶から考究する技術的負債との向き合い方
m3m0r7
PRO
2
2.1k
AI に書かせたその API、 “信頼” できますか?
nagix
0
110
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
1
900
2026-09-18 gotanda.sre Terraformで複数環境作ったり、複数Stateに分割したりそれとTerragrunt / Terraform multi envs and multi states
masasuzu
1
190
ソフトウェアDNAとクラウドエージェントのススメ
cloudace
0
110
データ_AIの事業の勝敗をわけるもの
nek0128
0
360
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
200
AIを活用するために決めた "やらないこと" - 価値に注目する / Not betting on AI
soudai
PRO
1
520
Featured
See All Featured
Tell your own story through comics
letsgokoyo
1
1.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
The Cult of Friendly URLs
andyhume
79
7k
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.6k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
50
10k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
480
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.9k
Optimising Largest Contentful Paint
csswizardry
37
4k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
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