4–7 Nov 2019
Please log in

Deploying and scaling applications with Kubernetes

Jerome Petazzoni (Tiny Shell Script LLC)
9:00—17:00 Monday, 4 November—Tuesday, 5 November
Location: M2
Average rating: ****.
(4.75, 8 ratings)

Participants should plan to attend both days of training course. Note: to attend training courses, you must be registered for a Platinum or Training pass; does not include access to tutorials on Tuesday.

Jerome Petazzoni dives into Kubernetes' concepts and architecture and explains how you can use it to deploy and scale your applications, featuring theory and practice with demos and exercises. You'll be given access to a Kubernetes cluster during training, and get your hands dirty completing the exercises.

What you'll learn, and how you can apply it

  • Learn how to deploy your containerized applications to production with Kubernetes
  • Understand that although Kubernetes has the reputation of being complex to setup and operate, it doesn't have to be the case

Who is this presentation for?

  • You're a developer targeting Kubernetes clusters, ops supporting them, or architects and tech leads willing to understand cloud native principles.




  • Familiarity with container principles and at least one container engine (useful but not required)

Hardware and/or installation requirements:

  • A laptop with a SSH client installed


Day 1

Kubernetes concepts

  • What’s an orchestrator?
  • From pods to containers
  • The control plane
  • Declarative versus imperative models
  • Kubernetes networking overview

First contact with a Kubernetes cluster

  • Getting familiar with kubectl
  • Understanding deployments, replica sets, pods
  • Listing and inspecting existing resources
  • Running our first containers

Service discovery and load balancing

  • Accessing pods through services
  • Service types: ClusterIP, NodePort, LoadBalancer
  • Headless services
  • Using DNS for service discovery

Build, ship, and run a microservices app

  • Creating deployments
  • Exposing deployments internally and externally
  • Scaling and load balancing
  • Mitigating update impact with rolling deploys

Advanced deployment patterns

  • Dynamically update load balancer backends with labels
  • Traffic engineering with selectors and labels
  • Adjusting rollout speed and resource usage

Using YAML to define resources

  • Generating and exporting resource YAML
  • Update the cluster state by editing YAML specs
  • Use case: Creating a DaemonSet from a deployment
  • Knowing the gotchas of YAML
  • Resources generating more resources with templates

Operating a Kubernetes cluster

  • Installation options
  • Accessing application logs
  • Centralizing logs
  • Collecting metrics
  • The Kubernetes dashboard

Day 2

Deploying multiple apps side-by-side

  • Using namespaces
  • Deploying multiple instances of the same app

Managing app complexity

  • Review of app configuration mechanisms
  • Managing app configuration with config maps
  • Managing sensitive information with secrets

Packaging and deploying to multiple environments

  • Kustomize
  • Helm and Helm Charts


  • Authentication and authorization in Kubernetes
  • Authentication with certificates and tokens
  • Authorization with role-based access control
  • Granting specific permissions to service accounts
  • Isolating components with network policies

Productivity tricks

  • Managing access to multiple clusters
  • Securely accessing internal services

The “ingress” resource

  • Using “ingress” for HTTP traffic
  • Different ingress implementations
  • Advanced traffic engineering

Deploying stateful applications

  • Declaring and using persistent volumes
  • Abstracting storage systems with persistent volume claims
  • Scaling or replication with stateful sets
  • Deploying resilient stateful applications

About your instructor

Photo of Jerome Petazzoni

Jérôme Petazzoni is a DevOps advocate and international speaker. He was born and raised in France, where he worked on geographic information systems, voice over IP, video streaming, and encoding and started a cloud hosting company back when EC2 wasn’t an Amazon product yet. In California he built and scaled the dotCloud PaaS, which eventually gave birth to Docker. While at Docker, he represented the company at hundreds of conferences and events and trained thousands of engineers to use Docker, Swarm, and Kubernetes. He’s fluent in many languages (mostly programming ones), owns a dozen musical instruments, and can play the theme of Zelda on most of them.

Twitter for jpetazzo

Conference registration

Get the Platinum pass or the Training pass to add this course to your package.

Comments on this page are now closed.


Picture of Sophia DeMartini
Sophia DeMartini | Senior Speaker Manager
20/08/2019 20:51 CEST

Hi Ricardo,

Unfortunately our conference trainings are in-person only and we do not record them.

You can search for similar trainings/topics on our Learning Platform, here:


If you need further assistance, please contract our Customer Service department at cs@oreilly.com.

Thank you,

Ricardo Manhães Savii |
20/08/2019 6:20 CEST


Will it be possible to participate online? Or see a recording?

  • Oracle Cloud Infrastructure
  • Cloudflare
  • JFrog
  • Akamas
  • Aqua Security Software
  • Fastly
  • Google
  • Instana
  • JetBrains
  • LaunchDarkly
  • LightStep
  • OVHcloud
  • SignalFx
  • VictorOps
  • Wayfair
  • Blameless
  • Chronosphere
  • FusionReactor
  • humanitec
  • replex GmbH
  • StackState
  • Datadog
  • GitLab
  • Gremlin
  • StormForger
  • SysEleven GmgH
  • Vamp.io

Contact us


For conference registration information and customer service


For more information on community discounts and trade opportunities with O’Reilly conferences


For information on exhibiting or sponsoring a conference


For media/analyst press inquires