Kubernetes instructor-led training

Learn how to deploy and scale applications with Kubernetes.

  • Private courses

  • Public courses

  • Online courses Slack

Cargo loading

These courses are great if you wish to:

  • Tick

    Get started with Kubernetes in your next project and you need to quickly get up to speed in deploying and scaling your Node.js, Java, .NET, Scala, etc. microservices

  • Tick

    Design and architect micro services on Kubernetes that leverage the strength of distributed systems

  • Tick

    Design applications that can be deployed on AWS, GCP, Azure, etc., without requiring changing any of the application or infrastrucure code

  • Tick

    Autoscale your clusters and applications as your service becomes more popular

  • Tick

    Standarise your development environments and workflow and design processes for continuous delivery and intregration with Kubernetes

  • Tick

    Become a Certified Kubernetes Administrator (CKA) or Certified Kubernetes Application Developer (CKAD)

Small cargo

“It is an excellent course covering a wide range of Kubernetes concepts, that will give you more than enough knowledge to go back to experiment and be productive with Kubernetes.”

— Luke Anderson, Senior IT Engineer

The advanced course is made 6 core modules that are designed to last 2 full days. You're recommended to select 4 optional modules for the third day, but you choose more if you wish.

Linux containers and Kubernetes

Kubernetes doesn't know how to deploy Java, Node.js, or .NET applications. The only thing it can deal with is Linux containers. But how do these Linux containers work? Why should you care? Are those necessary to master Kubernetes?

You will learn how to package and run applications in Docker containers. The module covers the following topics:

  • Containers vs VMs
  • Understanding process isolation
  • Is Docker the only one?
  • Docker client-server architecture
  • Running containers
  • Building Docker images
  • Mounting volumes
  • Exposing ports
  • Managing containers lifecycle
  • Injecting environment variables
  • Debugging running containers
Zero to Kubernetes

Learn the basics of Kubernetes and deploy your first application to minikube — a Kubernetes cluster for local development. Learn how to declare resources in YAML files, how to send those to the cluster and retrieve them. Understand how Kubernetes reconciles the desired state of the infrastructure.

You will learn the basics of Kubernetes and how to deploy Linux containers. The module covers the following topics:

  • Managing containers at scale
  • The battle of container orchestrators
  • Visualising the data centre as a single VM
  • The best Tetris player
  • Exploring an API over your infrastructure
  • What are Pods, Services, and Igresses?
  • Creating a local cluster with minikube
  • Creating a Deployment
  • Exposing Deployments
  • What is a Pod?
  • Scaling applications
  • Testing resiliency
Deployment strategies

Every time you deploy new features in production you don't want to stop your service, load a new version and remove the holding page. Ideally, you should be able to transition to a new version of your application without anyone noticing any downtime. You can leverage Kubernetes to do that.

You will learn different techniques to deploy your applications with zero downtime. The module covers the following topics:

  • Monitoring for uptime
  • Liveness probe
  • Readiness probe
  • Executing zero downtime deployments
  • Using labels and selectors
  • Releasing features with canary deploymentss
  • Releasing features with blue-green deployments
  • Preparing for rollbacks
Kubernetes architecture

When you deploy applications to Kubernetes you don't decide in which server a container is scheduled. Kubernetes abstracts your data centre into a single entity, and you don't get to worry about the underlying resources. But how does Kubernetes work its magic?

You will learn the core components in Kubernetes and how they work. The module covers the following topics:

  • Single and multi-node clusters
  • Examining the control plane
  • Persisting changes in etcd
  • Syncing changes with RAFT
  • Event-based architecture
  • Understanding the kubelet
  • Verifying "no single point of failure"
  • Setting up a multi-master cluster
  • Investigating multi-master setup in EKS
  • Exploring multi-master setup in Monzo
  • Creating a 3 node cluster with kubeadm
  • Installing an overlay network
  • Installing an Ingress controller
  • Exploring the API without kubectl
  • Taking down the cluster one node at the time
Kubernetes networking

How do you route traffic from the internet to your applications? How can you secure your communication with TLS? How about path routing to different services? In this module, you will explore how the traffic is routed in the cluster.

You will learn how the traffic flows inside the cluster. You will also learn how to expose your apps to the public internet. The module covers the following topics:

  • Network routing in Linux
  • Understanding network requirements
  • Exploring the Endpoints
  • Balancing in-cluster traffic
  • Routing traffic with kube-proxy
  • CRI, CNI, CSI: interfaces for the kubelet
  • Choosing between latency and load balancing
  • Pros and cons of the 4 types of Services
  • Discovering Services
  • Routing traffic with an Ingress controller
  • End-to-end traffic journey
Managing state with Kubernetes

How does Kubernetes store files and state? Can you host databases in it? Should you? 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?

You will learn how to persist data in Kubernetes. The module covers the following topics:

  • Managing configurations
  • Managing secrets
  • Using Kubernetes Volumes
  • Creating Persistent Volumes
  • Creating Persistent Volume Claims
  • Provisioning volumes dynamically
  • Managing stateful applications
  • Creating volumes on bare metal
  • Deploying a single database with persitence
  • Deploying a clustered database with persitence
  • Designing storage that can span multiple nodes
Templating Kubernetes resources

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. Learn how to do precisely that with Helm — the Kubernetes package manager.

You will learn how to template resources for different environments. The module covers the following topics:

  • Creating reusable templates
  • Helm's templating engine
  • Understanding the Helm architecture
  • Templating resources with Go and Sprig
  • Managing releases with Helm
  • Writing helper functions
  • Reverting changes with rollbacks
  • Depending on other charts
  • Storing reusable templates in repositories
Optional modules

Kubernetes is a vast subject and there're many other topics you might be interested in such what's the best autoscaler and how you should secure your cluster. If you worked in a regulated environment, you could find interesting advanced allocations: scheduling workloads only on specific Nodes.

You can pick and choose from the modules below. Looking for something in particular? Get in touch!

  • Advanced networking
  • Security
  • Autoscaling
  • Advanced scheduling
  • Multi-cloud, multi-data centre deployments
  • Service meshes
  • Extending and customising Kubernetes

“A really enjoyable 3-day workshop on Kubernetes. I cemented my understanding of Kubernetes and can now start implementing and furthering my knowledge with real examples and workflows. Next stop, production experience.”

— David Heward, Senior Devops Engineer

Don't worry. We run in-person classrooms in Europe, North America and Asia. If your city is not on the list, drop us a line at hello@learnk8s.io and will try to make it happen.

Need to train your team?

We offer flexible, cost-effective group membership for businesses, schools or government organisations.

Are you looking for something else?

Book a free 15m consultation