What you need to know:

Have questions? Speak to an instructor.

This is a full-time, 3 days course on learning and mastering Kubernetes.

Things you need to know about the course:

  • Tick

    This is a real event held in Zurich.

  • Tick

    You will get your hands dirty: the split is 40% lecture and 60% hands-on labs.

  • Tick

    You will have the chance to ask questions and discuss with the instructor.

  • Tick

    You will learn from expert instructors (you can find us on the Learnk8s Telegram group).

  • Tick

    You will have access to all the material after the course. That's the full Learnk8s Academy (12 courses)

  • Tick

    It's beginner-friendly, but you will learn some pretty advanced topics during day 3.

This course is not:

  • Tick

    Not Death by PowerPoint. There are slides, but most of the content is hands-on labs.

A typical schedule for the 3 days is as follows:

    1. Lecture + hands-on labs + challenges

      Kubernetes doesn't know how to deploy apps written in languages such as Java, Node.js, or .NET. Instead, it only understands and uses Linux containers. But how do these Linux containers work? Are those strictly necessary to master Kubernetes? In this course, you will familiarise yourself with containers and Docker.

      1. Containers vs VMs

      2. Understanding process isolation

      3. Is Docker the only one?

      4. Docker client-server architecture

      5. Running containers

      6. Building Docker images

      7. Mounting volumes

      8. Exposing ports

      9. Managing containers lifecycle

      10. Injecting environment variables

      11. Debugging running containers

    2. Lecture + hands-on labs + challenges

      In this course, you will learn how to build, deploy and scale your application in a Kubernetes cluster. You will also learn how to declare and schedule resources to the cluster and understand how to expose architect apps that are designed to be horizontally scalable.

      1. Managing containers at scale

      2. The battle of container orchestrators

      3. Visualising the data centre as a single VM

      4. The best Tetris player

      5. Exploring an API over your infrastructure

      6. What are Pods, Services, and Igresses?

      7. Creating a local cluster with minikube

      8. Creating a Deployment

      9. Exposing Deployments

      10. What is a Pod?

      11. Scaling applications

      12. Testing resiliency

    3. Lecture + hands-on labs + challenges

      Every time you deploy new features in production, you shouldn't stop your app, change the version and start it again. With zero-downtime deployments, no one notices any glitch while you're upgrading your apps. How does that work in Kubernetes? In this course, you will learn how Services work in Kubernetes and how you can roll out changes with zero downtime using Rolling updates, Canary Deployments or Blue-green deployments.

      1. Monitoring for uptime

      2. Liveness probe

      3. Readiness probe

      4. Executing zero downtime deployments

      5. Using labels and selectors

      6. Releasing features with canary deploymentss

      7. Releasing features with blue-green deployments

      8. Preparing for rollbacks

    1. Lecture + hands-on labs

      Can Kubernetes recover from failures? In this course, you will learn the Kubernetes core components by building a cluster from scratch using kubeadm. But the best way to learn something is by breaking it. So you will also break the cluster one node at the time and observe what happens.

      1. Single and multi-node clusters

      2. Examining the control plane

      3. Persisting changes in etcd

      4. Syncing changes with RAFT

      5. Event-based architecture

      6. Understanding the kubelet

      7. Verifying "no single point of failure"

      8. Setting up a multi-master cluster

      9. Investigating multi-master setup in EKS

      10. Exploring multi-master setup in Monzo

      11. Creating a 3 node cluster with kubeadm

      12. Installing an overlay network

      13. Installing an Ingress controller

      14. Exploring the API without kubectl

      15. Taking down the cluster one node at the time

    2. Lecture + hands-on labs

      How do you route external traffic to your applications in the cluster? How can two apps in the cluster talk to each other? How is Kubernetes assigning IP addresses to Pods and Services? In this course, you will explore how the traffic is routed in the cluster.

      1. Network routing in Linux

      2. Understanding network requirements

      3. Exploring the Endpoints

      4. Balancing in-cluster traffic

      5. Routing traffic with kube-proxy

      6. CRI, CNI, CSI: interfaces for the kubelet

      7. Choosing between latency and load balancing

      8. Pros and cons of the 4 types of Services

      9. Discovering Services

      10. Routing traffic with an Ingress controller

      11. End-to-end traffic journey

    3. Lecture

      Dive into the specifics of network interfaces, IP addresses and network topologies in this course about advanced Kubernetes networking. Learn how to build your Kubernetes network and how the Container Network Interface (CNI) works. And while you're at it why not making your very own Container Network Interface (CNI)?

      1. Exploring the Node network

      2. Cluster network

    1. Lecture + hands-on labs

      How does Kubernetes store state? Can you host databases in your cluster? Can you extract configurations and share them with different deployments? How do you make sure that your storage layer is replicated and persisted even if a node becomes unavailable? In this course, you will learn how to deploy a database with durable persistence.

      1. Managing configurations

      2. Managing secrets

      3. Using Kubernetes Volumes

      4. Creating Persistent Volumes

      5. Creating Persistent Volume Claims

      6. Provisioning volumes dynamically

      7. Managing stateful applications

      8. Creating volumes on bare metal

      9. Deploying a single database with persitence

      10. Deploying a clustered database with persitence

      11. Designing storage that can span multiple nodes

    2. Lecture + hands-on labs

      Resources in Kubernetes are described as YAML files. If you wish to have the same resources for different environments such as development, preproduction and production, you may be tempted to copy the files three times. Or you could use a templating engine. In this course, you will learn how to do precisely that with Helm.

      1. Creating reusable templates

      2. Helm's templating engine

      3. Understanding the Helm architecture

      4. Templating resources with Go and Sprig

      5. Managing releases with Helm

      6. Writing helper functions

      7. Reverting changes with rollbacks

      8. Depending on other charts

      9. Storing reusable templates in repositories

    3. Lecture

      After deploying your app to production, the received traffic may change in unpredictable ways. How do you keep your app responsive at all times? You can adapt the number of replicas. But is it feasible to do this manually, or are there better ways? In this course, you will learn how to autoscale an application based on an application-specific custom metric.

      1. Introduction to autoscaling

      2. The Horizontal Pod Autoscaler

      3. The Kubernetes metrics registry

      4. Exposing metrics from your apps

      5. Installing and configuring Prometheus

      6. Understanding custom and external metrics adapters

      7. Tuning the Horizontal Pod Autoscaler

    4. Lecture

      Wear your black hat and try to break the cluster. Study mitigation and countermeasure to secure your cluster against malicious attacks.

      1. Role-based access control

  • Tick

    CI/CD

  • Tick

    Service Meshes (and Istio)

  • Tick

    CKA/CKAD exam preparation

  • Tick

    Multi-cloud, multi-data centre deployments

  • Tick

    Advanced Scheduling workloads

  • Tick

    ML/AI with Kubeflow

During the third day, the instructor will ask you to vote for your favourite topics.

You will cover as many modules as possible, starting from the most popular.

In private and corporate training, you can customise the schedule in full.

  • Tick

    Lifetime access to the Learnk8s Academy — the online Kubernetes courses (worth USD 499.00).

  • Tick

    All the slides from the events.

  • Tick

    A virtual workstation in the cloud for the duration of the course.

  • Tick

    Lifetime access to the private Slack channel where you can always ask for help.

  • Tick

    A certificate of completion signed by the instructor.

  • Tick

    Knowledge of basic Linux commands and navigation.

  • Tick

    Familiarity with Linux networking.

  • Tick

    Some experience with reverse proxies such as Nginx or HAProxy.

  • Tick

    Exposure to Virtual Machines.

  • Tick

    A laptop with 8GB of memory and 20GB of space available.

  • Tick

    Windows 10 Pro, macOS, Ubuntu (or your favourite Linux distribution).

  • Tick

    An instructor will get in touch with you.

  • Tick

    You will receive a list of tools that you should install ahead of the event.

  • Tick

    We will collect your dietary requirements (if any).

  • Tick

    You will be granted access to the Learnk8s Academy.

  • Tick

    We will keep you informed (and send gentle reminders) until the day of the event.

What you need to know:

Have questions? Speak to an instructor.

If the date isn't quite right, don't worry. We run workshops regularly. Join our newsletter and keep up to date with the latest news (and workshop announcements) from Learnk8s:

*We'll never share your email address, and you can opt-out at any time.

We care more about our students' success than taking their money.

If you follow the lectures and practise the material (without being distracted by your day to day duties) and still DO NOT feel like you made any progress, we'll give you a full refund.

We're honest to the end about the level of effort, skills, and other ingredients required.

This is not a watch someone else presenting a PowerPoint and become an expert type of course. The learning curve is steep; then, the plateau of usefulness is very long and smooth. It's a great feeling operating Kubernetes after you've mastered it.

  • Software developers, Data engineers, Architects and DevOps seeking to learn how to use Kubernetes to automate deployment, scaling and management of containerised applications.

  • You will receive the joining instructions with all the material needed to run the course after you sign up for the course.

  • The material was authored for Minikube 1.9.x, Kubernetes 1.18, Helm 3

  • Absolutely! Send us an email at hello@learnk8s.io with some proof that you are a student and we'll send you a discount code. This applies to anyone in any type of schooling, including evening classes and coding bootcamps!

  • Sure - send an email to hello@learnk8s.io.