to become a mainstream global technology. oAccording to CNCF9s respondents, 96% of organizations are either using or evaluating Kubernetes 3 a record high since the surveys began in 2016. oCNCF 2021 Survey @annietalvasto 5 @annietalvasto 5 @annietalvasto 5 @annietalvasto 5 @AnnieTalvasto
use AKS oDeploying a .NET app to Kubernetes oNext steps in Kubernetes o Helm o Linkerd o Keda oResources @annietalvasto 8 @annietalvasto 8 @annietalvasto 8 @AnnieTalvasto
open platform for developing, shipping, and running applications. Docker enables you to separate your applications from your infrastructure so you can deliver software quickly.
of Kubernetes Deploy and manage Kubernetes with ease Scale and run applications with confidence Secure your Kubernetes environment Accelerate containerized application development Work how you want with open-source tools & APIs Set up CI/CD in a few clicks
Create a resource group: az group create Create AKS cluster : az aks create Connect to cluster az aks get-credentials Run the application! @annietalvasto 29 @annietalvasto 29 @annietalvasto 29 @AnnieTalvasto
see the number and state of pods: kubectl get pods To manually change: kubectl scale --replicas=5 deployment/azure-vote-front Verify with: kubectl get pods Automation: use cluster autoscaler! @annietalvasto 30 @annietalvasto 30 @annietalvasto 30 @AnnieTalvasto
1 Find out: az aks get-upgrades Example: az aks get-upgrades --resource-group myResourceGroup --name myAKSCluster --output table When you can upgrade: Name ResourceGroup MasterVersion Upgrades ------- --------------- --------------- -------------- default myResourceGroup 1.18.10 1.19.1, 1.19.3 If not: ERROR: Table output unavailable. Use the --query option to specify an appropriate query. Use --debug for more info. @annietalvasto 31 @annietalvasto 31 @annietalvasto 31 @AnnieTalvasto
2 To upgrade: az aks upgrade \ --resource-group myResourceGroup \ --name myAKSCluster \ --kubernetes-version KUBERNETES_VERSION Check with az aks show command: az aks show --resource-group myResourceGroup --name myAKSCluster -- output table @annietalvasto 32 @annietalvasto 32 @annietalvasto 32 @AnnieTalvasto
1 - An Introduction to Kubernetes o Part 2 - Configuring resources with YAML manifests o Part 3 - An introduction to deploying applications with Helm o Part 4 - Creating a Helm chart for an ASP.NET Core app o Part 5 - Setting environment variables for ASP.NET Core apps in a Helm chart o Part 6 - Adding health checks with Liveness, Readiness, and Startup probes o Part 7 - Running database migrations when deploying to Kubernetes o Part 8 - Running database migrations using jobs and init containers o Part 9 - Monitoring Helm releases that use jobs and init containers o Part 10 - Creating an 'exec-host' deployment for running one-off commands o Part 11 - Avoiding downtime in rolling deployments by blocking SIGTERM o Part 12 - Tips, tricks, and edge cases @annietalvasto 34 @annietalvasto 34 @annietalvasto 34 @AnnieTalvasto
Computing Foundation (CNCF) hosts critical components of the global technology infrastructure. CNCF brings together the world9s top developers, end users, and vendors and runs the largest open source developer conferences. CNCF is part of the nonprofit Linux Foundation. @annietalvasto 37
chololatey for kubernetes oHelm maintainer: oPackage management: Tooling that enables someone who has knowledge of an application and a platform to package up an application so that someone else who has neither extensive knowledge of the aplication or the way it needs to be run on the platform can use it. @annietalvasto 40 @annietalvasto 40 @annietalvasto 40 @AnnieTalvasto
A Kubernetes cluster o Deciding what security configurations to apply to your installation, if any o Installing and configuring Helm. @annietalvasto 42 @annietalvasto 42 @annietalvasto 42 @AnnieTalvasto
oThe overall goal is to reduce mental overhead of having service mesh oWhat does it do? o Observability o Realiability o Security @annietalvasto 45 @annietalvasto 45 @annietalvasto 45 @AnnieTalvasto
oSimple, minimalist design oDeep Runtime Diagnostics oUltralight and ultra fast oInstalls in seconds with zero config oActionable service metrics @annietalvasto 46 @annietalvasto 46 @annietalvasto 46 @AnnieTalvasto
for event driven applications, kubernetes is more for resource based scaling (CPU and memory). oKeda: Event driven scale controlling that can run inside any kubernetes cluster. oYou can install it into new or existing clusters. @annietalvasto 49 @annietalvasto 49 @annietalvasto 49 @AnnieTalvasto
offers out of the box. oSingle purpose, simple, non-intrusive. oWorks with any container and any workload @annietalvasto 50 @annietalvasto 50 @annietalvasto 50 @annietalvasto 50 @AnnieTalvasto
image Helm upgrade Kubectl upgrade -> git push GitOps provides one model for making infrastructure, apps and Kubernetes add-on changes, you have consistent end-to-end workflow across your entire organization oWhy is Flux great for GitOps? @annietalvasto 53 @annietalvasto 53 @annietalvasto 53 @annietalvasto 53 @AnnieTalvasto
system declaratively o2) Keep configuration under source control o3) Use software agents to reconcile and ensure correctness and alert for drfit Benefits o Collaboration on infra o Access Control o Auditable History o Drift Correction o Clear boundaries between dev-team and kubernetes @annietalvasto 54 @annietalvasto 54 @annietalvasto 54 @annietalvasto 54 @AnnieTalvasto
o https://docs.microsoft.com/en-us/azure/aks/cluster-autoscaler o https://docs.microsoft.com/en-us/azure/aks/upgrade-cluster o Kubernetes for .NET Developers - Hossam Barakat o https://www.youtube.com/watch?v=uh4V2IjSrlI o Deploying ASP.NET Core applications to Kubernetes - Part 1 o https://andrewlock.net/deploying-asp-net-core-applications-to- kubernetes-part-1-an-introduction-to-kubernetes/ o Project Tye o https://github.com/dotnet/tye o Workshop: o https://docs.microsoft.com/en-us/learn/modules/aks- workshop/ o Cncf yYoutube - https://www.youtube.com/channel/UCvqbFHwN- nwalWPjPUKpvTA o Techworld with Nana - https://www.youtube.com/channel/UCdngmbVKX1Tgre699- XLlUA o Links and slides: github.com/annietalvasto Learn more @annietalvasto 61 @annietalvasto 61 @annietalvasto 61 @AnnieTalvasto