Advanced Kubernetes Concepts with Jérôme Petazzoni

  4 days


Are you working with Kubernetes already, but still find yourself looking for clarification around advanced concepts?

In this Advanced Kubernetes course led by Jérôme Petazzoni you'll learn advanced topics such as deploying stateful apps, managing capacity and addressing security concerns.

This course has been developed by Jérôme Petazzoni, who was part of the team that created Docker. He has been teaching Docker ever since Docker existed, then Swarm, then Kubernetes.

Advanced Kubernetes Concepts with Jérôme Petazzoni

This is an expanded course covering increasingly complex topics. Content has been curated on each topic to the very essential concepts, without encumbering students with all the extra sugar that can be distracting. Students will leave with the ability to understand how things work, what each option and flag is doing, instead of including a random annotation or option by sheer copy paste.

On the practical side, Jérôme will provision k8s clusters for the students and the first thing they do is SSH into a lab environment and directly interact with Kubernetes. Students are not spending time on the "grunt work" of tediously copy-pasting configuration and YAML.This is a hands-on course that favors work that actually illustrates Kubernetes' complex concepts and provokes "aha!" moments.

This course will be offered virtually over 4 half‑day sessions of 4 hours each.

This course is a live, real-time workshop offered in an intimate virtual classroom — where you will learn directly from Jérôme.

There will be plenty of time to ask questions, dig into the concepts and ensure you're learning skills that are relevant to your kubernetes projects.

This class utilises both Zoom and Slack.

Online Courses for Software Professionals at Skills Matter

Learn how to:

Deploy on Kubernetes beyond kubectl generators and static YAML manifests

Manage capacity and compute resources on Kubernetes

Set permissions on user and network level on Kubernetes

Deploy stateful apps on Kubernetes with stateful sets and persistent volumes

About the Author

Jérôme Petazzoni

Jérôme was part of the team that built, scaled, and operated the dotCloud PAAS, before it became Docker. He worked seven years at the famous container company, wearing various hats. When he's not busy with computers, he collects musical instruments. He can arguably play the theme of Zelda on a dozen of them.

Available dates

Dates coming soon

Can't make it on any of these dates?
Our team is happy to discuss other options with you.
Contact us at and mention ref: K8-ADV-JP-02.
Private tuition and large-group discounts are also available. Find out more here.

Who should take this workshop?

This is an advanced Kubernetes course for devs, ops, or even architects, who have started working with Kubernetes, and want to dive deeper and learn advanced concepts around application packaging, capacity planning, resource management, security, operators, and the specific mechanisms associated with stateful application deployment like databases.


To make the most of this course, you will need to have a basic understanding of Kubernetes fundamentals. You should know:

  • what is a Pod, a Deployment, a Service;
  • how to deploy an app and expose it on a Kubernetes cluster;
  • basic notions of what are labels, selectors, YAML manifests.

Workshop Outline

Packaging applications with Kustomize and Helm
  • Deploying a microservices app with YAML manifests
  • Kustomize and Helm concepts; when to use which?
  • Writing and applying Kustomize overlays
  • Installing charts with Helm
  • Helm 2, Helm 3, and the Helm Hub
  • Writing a basic Helm chart for the whole app
  • Writing advanced Helm charts for app components
  • Helm internals
Capacity management and Kubernetes operators
  • Setting compute resource limits
  • Manage cluster allocation and quotas
  • What happens when the cluster is at, or over, capacity
  • The core metrics pipeline
  • Extending the Kubernetes API
  • Operators
Security focus
  • Isolating workloads with Network Policies
  • Authentication with tokens and certificates
  • Authorization with RBAC (role-based access control)
  • Working with Service Accounts, Roles, Role Bindings
  • Preventing privilege escalations with Pod Security Policy
  • User management with OIDC, certificates, the CSR API
Application configuration and stateful apps
  • Configuring applications with ConfigMaps and Secrets
  • Using the downward API to expose information
  • Deploying apps with Stateful Sets (use case: Consul)
  • The difference between volumes and Persistent Volumes
  • Understanding Persistent Volume Claims and Storage Classes
  • Local persistent volumes vs highly available persistent volumes
  • Example: deploying a database that can withstand node outages

Advanced Kubernetes Concepts with Jérôme Petazzoni
Dates coming soon