Developing Spring Boot Apps for Kubernetes

ONLINE TRAINING
November 25 - 26 2021
CLASSROOM TRAINING
August 24 - 25 2021
Training Cost
ONLINE TRAINING
1.250 EUR (VAT ex.) per person
CLASSROOM TRAINING
1.350 EUR (VAT ex.) per person
Practical informationClass from 9 AM to 5 PM
LanguageEnglish (unless all attendees speak Dutch)
Location

Most of our classroom training courses take place in Belgium (Edegem) or The Netherlands (Breda). Please click the button with the desired date to check the exact location of the training.

This training in-company?
Upon your request we can organize this training for you.
CONTACT US
Duration

2 days

Course overview

Kubernetes is the industry approved platform for growing a Cloud Native strategy. Spring (Boot) has always encouraged developers to leverage the tools/technologies that best solves their business use cases.

In this training, we will bring both worlds together so that you as a Spring (boot) developer can take ownership of your code from development to production. We will look at some best practices/patterns on how to containerize your Spring Boot application & run it on a Kubernetes cluster. We will also look at how you can integrate your Spring Boot app with Kubernetes.

This is an intensive, hands-on training, every student will get access to a Kubernetes cluster to complete the labs.

By the time the training is over, you will have a good understanding of how Spring Boot & Kubernetes work hand in hand and you will have bridged some of the gaps between Dev & Ops.

Who should attend this training

Spring Application developers who want to learn best practices & patterns for containerising Spring Boot Applications with Docker, and integrate them in the Kubernetes platform.

Course Objectives

By the end of the training, you will have learned the following:

  • Design principles of Cloud Native apps

  • Why is Kubernetes the industry approved platform & how does Spring Boot fit in?

  • Containerize Spring Boot applications

  • Deploy Spring Boot applications on Kubernetes

  • Spring Boot configuration in Kubernetes

  • Spring Boot application lifecycle in Kubernetes

  • Visibility & Observability

Prerequisites
  • This training requires you to have good knowledge of Java & Spring boot (Spring Core/boot training is recommended)

  • Basic knowledge of Docker/containers & Kubernetes is recommended

  • This is a BYOD (Bring Your Own Device) training. Please bring your own laptop to the course. Please make sure the following software is installed:

    • This training has an interactive hosted environment. You will only need an internet browser (preferably Google Chrome)

Course Content

Introduction

  • What is Cloud Native?

  • Cloud Native design principles

  • Cloud Native Journey

Building containers 

  • Container introduction (why)

  • Docker introduction

  • Containerize your Spring Boot application

Going beyond Dockerfiles

  • Best practices / optimizing containers

  • Jib

  • Pack / Buildpacks

  • Building containers with Spring Boot

Kubernetes Introduction

  • Kubernetes Architecture

  • Main building blocks:

    • Pod

    • Deployment

    • ReplicaSet

    • Service

    • Ingress

  • Using kubectl imperative commands to generate definitions

  • Manually deploy your spring boot application on Kubernetes

  • Organizing resources

Spring Boot configuration on Kubernetes

  • External configuration

  • Spring Profiles

  • Spring Boot Cloud Platform config

  • Kubernetes Env Vars / ConfigMaps / Secrets

Managing application deployments

  • Deployment strategies:

    • Rolling upgrade

    • Recreate

    • Blue-green

    • Canary

  • Rolling back deployments

  • Rollout considerations

Health checks and probes

  • Spring Booth Health Indicators

  • Creating a custom health indicator

  • Liveness and Readiness Kubernetes probes

  • LivenessState and ReadinessState

  • Graceful Shutdown

Observability I: Logging

  • Logging challenges in Cloud Native apps

  • Logging in Spring Boot

  • Logging Architectures

Observability II: Metrics

  • Metrics and Monitoring

  • Metrics in Spring Boot

  • Custom metrics

  • Prometheus and Grafana

The cloud is the limit

  • Kubernetes Resources

  • Requests and Limits

  • Scheduling

ENROLL NOW
This training in-company?
Upon your request we can organize this training for you.
CONTACT US