Slide 1

Slide 1 text

Kubernetes für .NET-Core-Entwickler Thorsten Hans @ThorstenHans Consultant

Slide 2

Slide 2 text

Focus: Cloud Native & Infrastructure as Code Consultant @ Thinktecture AG [email protected] [email protected] thinktecture.com thorsten-hans.com @ThorstenHans Thorsten Hans

Slide 3

Slide 3 text

Talking Points What is Kubernetes Azure Kubernetes Service Hands-On

Slide 4

Slide 4 text

Open-Source Container Orchestrator § Initially founded by Google / now maintained by CNCF § Successor of Google’s Borg § Original Codename Seven1 § Greek for pilot or helmsman of a ship § Written in go 1 - https://en.wikipedia.org/wiki/Seven_of_Nine Kubernetes

Slide 5

Slide 5 text

What is Kubernetes § Container Orchestrator § Runs Containers § Takes care about Networking / Isolation of workloads § Abstracts hardware from developers § Cloud-Agnostic § Container Lifecycle Management § Deployment, Rolling Upgrades, Scaling, Load-Balancing Kubernetes

Slide 6

Slide 6 text

Kubernetes Master Kubernetes Node Pool 1 Kubernetes Worker Node Kubernetes Worker Node Birds-View Kubernetes Architecture

Slide 7

Slide 7 text

Kubernetes Master Kubernetes Node Pool 1 Kubernetes Worker Node Kubernetes Worker Node Birds-View Kubernetes Architecture Kubernetes Node Pool 2 Kubernetes Worker Node Kubernetes Worker Node

Slide 8

Slide 8 text

Kubernetes Master Kubernetes Node Pool 1 Kubernetes Worker Node Kubernetes Worker Node Birds-View Kubernetes Architecture Kubernetes Node Pool 2 Kubernetes Worker Node Kubernetes Worker Node

Slide 9

Slide 9 text

Kubernetes Master Kubernetes Node Pool 1 Kubernetes Worker Node Kubernetes Worker Node Birds-View Kubernetes Architecture Kubernetes Node Pool 2 Kubernetes Worker Node Kubernetes Worker Node Azure Container Instances

Slide 10

Slide 10 text

What is a Kubernetes Master § Cluster control-plane § Set of control services § etcd based storage § Requires three instances to be highly available § Executing five essential master services Kubernetes Kubernetes Master etcd API Server Scheduler Cloud Controller Manager Controller Manager

Slide 11

Slide 11 text

What is a Kubernetes Worker-Node § Physical or virtual machine § Responsible for running Pods § Consists of at least three main components Kubernetes Kubernetes Worker-Node Container Runtime kubelet kube-proxy

Slide 12

Slide 12 text

Talking Points What is Kubernetes Azure Kubernetes Service Hands-On

Slide 13

Slide 13 text

AKS § Fully managed Kubernetes cluster § Easy cluster administration e.g. Scaling or Upgrading Kubernetes § Seamless integration with other Azure services § Cost efficient – you pay just for your Worker-Nodes § Since April 2020 you can pay for AKS to get an SLA Azure Kubernetes Service

Slide 14

Slide 14 text

Seamless Azure Integration § Kubernetes Load-Balancer will spin up an Azure Load-Balancer § Mount Azure Files Shares and Disks as Volumes § Consume Docker Images from Azure Container Registry § Use other Azure Services like Redis, Azure SQL, … § Traffic inside the same region is always free § Get Container Insights using Azure Monitor § Protect applications using Azure Security Center AKS and Azure Integration

Slide 15

Slide 15 text

Talking Points What is Kubernetes Azure Kubernetes Service Hands-On

Slide 16

Slide 16 text

Running .NET Applications in Kubernetes - Containerize .NET Application - Create ACR and AKS - Create Deployment for the Application - Expose Application - Consume Configuration Values Demo

Slide 17

Slide 17 text

https://12factor.net/ • Adopt the twelve-factor app manifest • Focus on • Configuration • Process • Port binding • Logging • Concurrency The 12 Factor Manifest

Slide 18

Slide 18 text

• Use Kubernetes Namespaces • Group Applications logically • Always specify resource requests and limits • Always add health checks • Liveness- and Readiness-Probes • Use Labels • Follow the single responsibility principle Embrace the application platform