2-day on-prem or online training

Introduction

This course focuses on the most commonly used Kubernetes features as well as provides practical tutorials and real-life examples of deploying distributed applications, managing networking primitives (load balancers, proxies), setting up persistent data storage, dynamic configuration management, and many other exciting features built into the core of Kubernetes.

Audience

Developers, software architects, technical project managers, system administrators.

Certification

You earn eXtreme Automation certificate by attending the course.

View example certificate

Language

The course is taught in English.

Detailed outline

🌞 Day 1

  • 📚 Part 1:

    Architecture overview: master node, worker nodes, etcd, kubelet, controllers

    Anatomy of a pod: the main container, init containers, sidecars, labels, probes

    Basic commands and debugging tricks

  • ❓ Quiz 1: Kubernetes terminology
  • 🛠 Exercise 1:

    Deploy an application as a Pod with the primary process

    Implement initialization logic executed in init containers

    Add watchdog containers and probes.

  • 📚 Part 2:

    Anatomy of a deployment: types of deployments, replica set, replica count

    Introduction to Kubernetes networking

    Anatomy of a service: traffic routing, labels, port mapping

    Service types: node port, cluster IP, load balancer

    Anatomy of kubeproxy

    Introduction to service meshes

  • 🛠 Exercise 2:

    Configure application traffic routing

    Implement different service types

    Implement canary release procedure

  • ❓ Quiz 2: Kubernetes networking
  • 📚 Part 3:

    Persistent volumes: volumes types, volume resizing, volume snapshots

    Working with complex deployments: namespaces, stateful sets

    Job and Cron-jobs

  • 🛠 Exercise 3:

    Configure stateful deployment for an HA database (PostgreSQL or MariaDB)

    Configure an HA caching layer (Redis) for your application

    Implement a scheduled backup procedure for an HA database

  • ❓ Quiz 3: Kubernetes persistence
  • 📚 Part 4:

    Configuration management: config maps, reloadable configurations

    Deployment time configuration injection with Kustomize

    Secrets management and integration with service discovery service (Consul and Vault)

    Kubernetes admission webhooks and cluster events

  • 🛠 Exercise 4:

    Implement two environments (applications + data storage) running in different namespaces with different settings

    Implement automatic configuration propagation at run time using different mechanisms

  • ❓ Quiz 4: Kubernetes configuration management
  • ❓ Quiz 5: Day-1 concluding quiz

🌞 Day 2

  • 📚 Part 5:Resource management: resource requests and limits Anatomy of a node pool Taints and tolerations, scheduling internals Dive into built-in resource monitoring and metrics Auto-scaling policies and range limiters
  • 🛠 Exercise 5: Adjust resource limits for existing deployments Implement auto-limit and auto-scaling policies
  • ❓ Quiz 6: Kubernetes resource management
  • 📚 Part 6:Cluster security with RBAC, service accounts, cluster roles, namespace security Integrating with external security providers Pod security and network policies
  • 🛠 Exercise 6: Implement cross-environment security policies with the help of service accounts and external LDAP integration Limit network traffic between pods
  • ❓ Quiz 7: Kubernetes security
  • 📚 Part 7:Day-1 vs. Day-2 operations Introduction to Helm charts Introduction to Operator pattern Custom resource definitions
  • 🛠 Exercise 7: Implement operator from a given template with Bash or Go
  • ❓ Quiz 8: Kubernetes API and operators
  • ❓ Quiz 9: Closing quiz
  • Q/A + conclusion

Trainer

Andrey Adamovich is a software craftsman with many years of experience in different life cycle phases of software creation. He is passionate about defining good development practices, documenting and presenting architecture, reuse of code and design patterns, profiling and analysis of application performance as well as extreme automation of development and operations activities.

At the moment, Andrey works as a free-lance DevOps consultant offering his expertise in implementing DevOps initiatives, selecting automation tooling, switching to infrastructure-as-code and immutable infrastructure and constructing software delivery pipelines.

Andrey is a frequent speaker at international conferences and local communities. He presented at more than 60 events in 19 countries. He is one of the leaders of LatCraft - Latvian Software Craftsmanship Community as well as co-founder and organizer of DevTernity  conference.

Limited offer. Grab your ticket today.

 

On-premises

Exclusively for your company

6000 5200€