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 - All Day DevOps
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Hossam Barakat
November 06, 2019
Programming
2
180
Kubernetes for Developers - All Day DevOps
Hossam Barakat
November 06, 2019
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
78
Kubernetes Blue-Green Deployment Made Easy with Argo Rollouts - ADDO
hossambarakat
0
130
Build Your Azure Infrastructure as Code With .NET Core - Azure Day
hossambarakat
0
43
Build Your Azure Infrastructure as Code With .Net Core - Global Azure 2021
hossambarakat
0
63
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
150
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
160
Secure your Kubernetes Containers - All Day DevOps
hossambarakat
0
130
Other Decks in Programming
See All in Programming
Tamach-sre-3_ANDPAD-shimaison93
mane12yurks38
0
200
モックわからないマン卒業記 ~振る舞いを起点に見直した、フロントエンドテストにおけるモックの使いどころ~
tasukuwatanabe
3
430
AI活用のコスパを最大化する方法
ochtum
0
360
生成 AI 時代のスナップショットテストってやつを見せてあげますよ(α版)
ojun9
0
320
AI時代の脳疲弊と向き合う ~言語学としてのPHP~
sakuraikotone
1
1.6k
Symfonyの特性(設計思想)を手軽に活かす特性(trait)
ickx
0
110
ローカルで稼働するAI エージェントを超えて / beyond-local-ai-agents
gawa
1
190
飯MCP
yusukebe
0
410
Understanding Apache Lucene - More than just full-text search
spinscale
0
140
Coding at the Speed of Thought: The New Era of Symfony Docker
dunglas
0
3.3k
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
370
KagglerがMixSeekを触ってみた
morim
0
340
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
エンジニアに許された特別な時間の終わり
watany
106
240k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
170
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.6k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
190
Practical Orchestrator
shlominoach
191
11k
30 Presentation Tips
portentint
PRO
1
260
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
170
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
240
Become a Pro
speakerdeck
PRO
31
5.9k
Transcript
Kubernetes for Developers Hossam Barakat Lead Consultant at Telstra Purple
@hossambarakat_
@hossambarakat_ • What is Kubernetes? • Why Kubernetes? • Kubernetes
Architecture • Deploy Web App with DB on Kubernetes Agenda
@hossambarakat_ Containers 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_ 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_ Kubernetes Architecture Master Worker Worker Client Worker Cluster
@hossambarakat_ Kubernetes Architecture Master API Server Scheduler Worker Kubelet Container
Runtime UI (Dashboard) CLI (Kubectl) Other Client(s) Container Container Cluster
@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_ Pod kind: Pod apiVersion: v1 metadata: name: tasks-app spec:
containers: - name: tasks-app image: hossambarakat/tasklist ports: - containerPort: 80 $ Kubectl apply -f pod.yaml
@hossambarakat_ But wait… what happens if the pod dies?
@hossambarakat_ ReplicaSets Pod ReplicaSet 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 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_ Kubernetes in the cloud
Azure AKS $ az aks create -g myResourceGroup -n myCluster
--generate-ssh-keys $ az aks upgrade --kubernetes-version 1.12.6 --name myCluster --resource-group myResourceGroup $ az aks scale -g myResourceGroup -n myCluster --node-count 6
@hossambarakat_ • Scale agent nodes based on pending pods and
nodes utilization • Scans the cluster periodically to check for pending pods or empty nodes and increases the size if possible AKS Cluster Autoscaler
@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? #2019addo-cloudnative
None
Thanks Hossam Barakat @hossambarakat_