$30 off During Our Annual Pro Sale. View Details »

Rock Solid, yet flexible Single Page Applications professionell mit Kubernetes betreiben

Rock Solid, yet flexible Single Page Applications professionell mit Kubernetes betreiben

Kubernetes – das Cloud-Betriebssystem dieser Dekade – bietet auch für den Betrieb von Single Page Applications (SPAs) eine hohe Flexibilität und Individualisierbarkeit. In diesem Halbtages-Workshop zeigt Thorsten Hans, wie Sie Ihre SPA in Docker Images verpacken, und in Kubernetes betreiben können. Lernen Sie essenzielle Konzepte und Techniken für das Hosting von SPAs anhand einer exemplarischen Angular-Anwendung kennen. Hierbei werden wir iterativ vom Standardbetrieb, bis hin zur Abbildung einer professionellen Multi-Tenant-Umgebung mit Canary-Deployments vorgehen.

Thorsten Hans

March 24, 2021
Tweet

More Decks by Thorsten Hans

Other Decks in Technology

Transcript

  1. Rock Solid, yet flexible
    Single Page Applications professionell
    mit Kubernetes betreiben
    Thorsten Hans
    @ThorstenHans
    Consultant

    View Slide

  2. Consultant @ Thinktecture
    #Azure #Kubernetes
    #CloudNative #Terraform
    [email protected]
    thinktecture.com
    thorsten-hans.com
    @ThorstenHans
    Thorsten Hans

    View Slide

  3. What we will cover today
    • Introduction
    • What is Kubernetes?
    • Why should you care?
    • Azure Kubernetes Service (AKS) - Fully managed Kubernetes clusters
    • Containerization of frontend workloads
    • Moving frontends to Kubernetes
    Talking Points

    View Slide

  4. Open-Source Container Orchestrator
    § Kubernetes is a Container Orchestrator
    § Founded at Google
    § Now maintained by Cloud Native Computing Foundation (CNCF)
    § Kubernetes is cloud-vendor agnostic
    § Successor of Google’s Borg
    § Original Codename Seven1
    § Written in GoLang (go)
    1 - https://en.wikipedia.org/wiki/Seven_of_Nine
    What is Kubernetes

    View Slide

  5. As a container orchestrator, Kubernetes provides the following:
    § Runtime environment for containerized applications
    § Virtualized network environment
    § Hardware abstraction layer
    § Container Lifecycle Management
    § Deployment, Rolling Upgrades, Scaling, Load-Balancing
    What is Kubernetes

    View Slide

  6. Kubernetes Control Plane
    Kubernetes Architecture
    Kubernetes Node Pool 1
    Kubernetes Node Kubernetes Node

    View Slide

  7. Kubernetes Control Plane
    Kubernetes Architecture
    Kubernetes Node Pool 1 (general-compute)
    Kubernetes Node Kubernetes Node
    Kubernetes Node Pool 2 (high-intense gpu)
    Kubernetes Node Kubernetes Node

    View Slide

  8. Kubernetes Control Plane
    Kubernetes Architecture
    Kubernetes Node Pool 1
    Kubernetes Node Kubernetes Node
    Kubernetes Node Pool 2
    Kubernetes Node Kubernetes Node

    View Slide

  9. Kubernetes Control Plane
    Kubernetes Architecture
    Kubernetes Node Pool 1
    Kubernetes Node Kubernetes Node
    Kubernetes Node Pool 2
    Kubernetes Node Kubernetes Node
    Azure Container Instances

    View Slide

  10. What is a Kubernetes Control Plane
    § Think of the Control Plane as your clusters brain
    § Determine and reacts to events in the cluster
    § Set of control services
    § consistent and available storage leveraging etcd
    § Requires three (3) instances (virtual or physical servers) to be highly available
    Kubernetes

    View Slide

  11. What is a Kubernetes Control Plane
    A Kubernetes Control Plane runs five mission-critical services
    § etcd
    § Controller Manager
    § Cloud Controller Manager
    § API Server
    § Scheduler
    Kubernetes
    Kubernetes Control Plane
    etcd
    API Server
    Scheduler
    Cloud Controller Manager
    Controller Manager

    View Slide

  12. What is a Kubernetes Node
    A Kubernetes Node provides compute power, typically a node:
    § Is a physical or virtual machine
    § Runs containerized workloads
    § Consists of at least three main components
    Kubernetes
    Kubernetes Node
    Container Runtime
    kubelet kube-proxy

    View Slide

  13. Kubernetes 101
    - Cluster Walkthrough
    - kubectl - The Kubernetes CLI
    Demo

    View Slide

  14. What we will cover today
    • Introduction
    • What is Kubernetes?
    • Why should you care?
    • Azure Kubernetes Service (AKS) - Fully managed Kubernetes clusters
    • Containerization of frontend workloads
    • Moving frontends to Kubernetes
    Talking Points

    View Slide

  15. Kubernetes is everywhere
    Over the past years Kubernetes matured a lot
    § It is often referenced as the operation system of the cloud
    § We see more and more large enterprises building their own (also on-premises) clusters
    § Sometimes it is established due to strategic decisions
    § It empowers IT operations and devs to move faster
    Why should you care?

    View Slide

  16. What we will cover today
    • Introduction
    • What is Kubernetes?
    • Why should you care?
    • Azure Kubernetes Service (AKS) - Fully managed Kubernetes clusters
    • Containerization of frontend workloads
    • Moving frontends to Kubernetes
    Talking Points

    View Slide

  17. Kubernetes-as-a-Service
    Running Kubernetes is hard! However, public cloud vendors – such as Microsoft – offer managed
    Kubernetes environments. With AKS customers get
    § Fully managed Kubernetes cluster
    § Easy cluster administration
    § Simplified cluster ops like scaling, mutating, upgrading, …
    § Cost efficient – the Control Plane is free of charge
    § (optionally) since April 2020 you can pay, to get an SLA for your AKS
    Azure Kubernetes Service (AKS)

    View Slide

  18. Connect & Consume other Azure services
    Using the Kubernetes Cloud-Controller-Manager, AKS integrates with surrounding cloud for
    different topics:
    § Network Ops
    § Handle inbound traffic (Ingress)
    § Integration via: Azure Load Balancer, Public IP address,
    § Cloud Storage Ops
    § Provision and attach cloud storage
    § Integration via: Azure Files Shares and Disks as Volumes
    Seamless integration into Azure

    View Slide

  19. Connect & Consume other Azure services
    Surrounding Azure services help to build professional environments that are easy to run, manage,
    govern and monitor:
    § Consume protected Docker Images from Azure Container Registry
    § Secure via Azure Security Center and Azure Policy
    § Monitor via Azure Monitor and Container Insights
    § Use common services like databases, caching engines with low latency
    Seamless integration into Azure

    View Slide

  20. What we will cover today
    • Introduction
    • What is Kubernetes?
    • Why should you care?
    • Azure Kubernetes Service (AKS) - Fully managed Kubernetes clusters
    • Containerization of frontend workloads
    • Moving frontends to Kubernetes
    Talking Points

    View Slide

  21. Containerization of frontend workloads
    - Docker refresher
    - Containerization of frontend workloads
    - Local execution
    - Docker Image distribution
    Demo

    View Slide

  22. What we will cover today
    • Introduction
    • What is Kubernetes?
    • Why should you care?
    • Azure Kubernetes Service (AKS) - Fully managed Kubernetes clusters
    • Containerization of frontend workloads
    • Moving frontends to Kubernetes
    Talking Points

    View Slide

  23. The frontend is the first in line
    Hosting SPAs is Kubernetes is easy, yet flexible:
    § Ingress Controllers route inbound requests to containers
    § Containers can be scaled based upon individual requirements
    § Canary Deployments or A/B deployments are easy to implement
    Moving frontends to Kubernetes

    View Slide

  24. Running Single Page Applications in Kubernetes
    - Kubernetes Deployments
    - Exposing Apps using NGINX Ingress
    - Horizontal Pod Autoscaling
    - Canary Deployments with NGINX Ingress
    Demo

    View Slide