Slide 1

Slide 1 text

Azure Kubernetes Service (AKS) - Part 3 Orchestration using Kubernetes - Minikube Nilesh Gule

Slide 2

Slide 2 text

$whoami { “name” : “Nilesh Gule”, “title” : “Architect | Microsoft Azure MVP”, “website” : “https://www.HandsOnArchitect.com", “github” : “https://github.com/NileshGule" “twitter” : “@nileshgule”, “linkedin” : “https://www.linkedin.com/in/nileshgule”, “email” : “[email protected]", “likes” : “Technical Evangelism, Cricket” }

Slide 3

Slide 3 text

AKS learning series - Part 4 - Deploy Multi- container apps to managed Kubernetes with Azure kubernetes Service (AKS) - Part 5 - Debugging & Monitoring AKS using OMS - Part 6 - CI CD with Docker & Kubernetes (Bonus) - Part 1 - Getting started with Docker - Part 2 - Stitch Multi-container apps with Docker Compose - Part 3 - Container Orchestration using Kubernetes with Minikube

Slide 4

Slide 4 text

Application Overview

Slide 5

Slide 5 text

Recap - part 1 (Docker) - https://www.youtube.com/watch?v=fQvmGm8Z85E

Slide 6

Slide 6 text

Recap - part 2 (Docker Compose) - https://www.youtube.com/watch?v=crjRSvPVIlE

Slide 7

Slide 7 text

Container Orchestration

Slide 8

Slide 8 text

Need for Orchestration • Deploy Multi-container apps • Scale containerized apps • Roll out new versions of apps without downtime • Provide networking, service discovery and storage • Manage resources across multiple containers • Self healing

Slide 9

Slide 9 text

DEMO
 
 Minikube & Kubectl !9

Slide 10

Slide 10 text

Kubernetes Open-source system for automating deployment, scaling, and management of containerized application across clusters of machines Basic Objects - Namespace - Pod - Volume - Service Controllers - ReplicaSet - Deployment - StatefulSet - DemonSet

Slide 11

Slide 11 text

Kubernetes - Pod - Smallest unit of deployment - Group of one or more containers - Contains specification how to run container along with its related resources (storage / networking)

Slide 12

Slide 12 text

Kubernetes - Deployment - Desired state definitions for pods and replica sets - Defines - version of container images - number of replicas - update strategy - Metadata to interact with resources

Slide 13

Slide 13 text

DEMO
 
 Namespace, Deployment !13

Slide 14

Slide 14 text

Node 2 Kubernetes - Service - Acts as Load Balancers for pods - Provides stable IP for consumers Node 1 TechTalksWeb Pod1 TechTalksAPI Pod2 Pod1

Slide 15

Slide 15 text

Kubernetes - StatefulSet - Use StatefulSets when data loss is unacceptable - Useful when replicas are needed for availability or scalability, and the replicas need stable volume mounts across restarts - Often used when deploying database workloads that store their state on external storage providers - With StatefulSets a crash of pod or cluster does not result in data loss

Slide 16

Slide 16 text

Kubernetes Control plane

Slide 17

Slide 17 text

Kubectl commands

Slide 18

Slide 18 text

References 1/2 ✴ Demo code - https://github.com/NileshGule/AKS-learning-series ✴ Kubernetes playground - https://labs.play-with-k8s.com ✴ Kubernetes objects on Azure - https://azure.microsoft.com/mediahandler/files/resourcefiles/243b3587-a5cd-4937- b52a-dc5bdc8a78e7/Kubernetes-objects-on-Azure.pdf ✴ Kubernetes Theme park analogy - https://danlebrero.com/2018/07/09/kubernetes-explained-in-pictures-the-theme- park-analogy/ ✴ The Illustrated children’s guide to Kubernetes - https://cdn.chrisshort.net/The-Illustrated-Childrens-Guide-to- Kubernetes.pdf ✴ Orchestrators - https://www.exoscale.com/syslog/container-orchestration/ ✴ Twelve Factor App - https://12factor.net ✴ Kubernetes Basics - https://kubernetes.io/docs/tutorials/kubernetes-basics/ ✴ Azure Kubernetes objects - https://msft.social/TIRUaN ✴ Kubernetes secrets - https://kubernetes.io/docs/concepts/configuration/secret/ ✴ Highly scalable apps - https://www.handsonarchitect.com/2018/03/highly-scalable-multi-container-apps.html ✴

Slide 19

Slide 19 text

References 2/2 ✴ Youtube Part 1 video - https://www.youtube.com/watch?v=fQvmGm8Z85E ✴ engineers.sg - https://engineers.sg/video/azure-container-service-aks-part-1-getting-started-with-docker-by-nilesh- gule--2732 ✴ Youtube Part 2 video - https://youtu.be/crjRSvPVIlE ✴ engineers.sg - https://www.engineers.sg/video/azure-kubernetes-service-aks-2-stitch-multi-container-apps-with- docker-compose--2814 ✴ Slide deck - Speakerdeck - ✴ Slide deck - Slideshare - ✴

Slide 20

Slide 20 text

Thank you very much https://github.com/NileshGule/AKS-learning-series Code with Passion and Strive for Excellence

Slide 21

Slide 21 text

Q&A

Slide 22

Slide 22 text

Feedback http://bit.ly/AKSPart3