Developing Spring Boot Apps for Kubernetes
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.
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.
Spring Application developers who want to learn best practices & patterns for containerising Spring Boot Applications with Docker, and integrate them in the Kubernetes platform.
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
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)
What is Cloud Native?
Cloud Native design principles
Cloud Native Journey
Container introduction (why)
Containerize your Spring Boot application
Going beyond Dockerfiles
Best practices / optimizing containers
Pack / Buildpacks
Building containers with Spring Boot
Main building blocks:
Using kubectl imperative commands to generate definitions
Manually deploy your spring boot application on Kubernetes
Spring Boot configuration on Kubernetes
Spring Boot Cloud Platform config
Kubernetes Env Vars / ConfigMaps / Secrets
Managing application deployments
Rolling back deployments
Health checks and probes
Spring Booth Health Indicators
Creating a custom health indicator
Liveness and Readiness Kubernetes probes
LivenessState and ReadinessState
Observability I: Logging
Logging challenges in Cloud Native apps
Logging in Spring Boot
Observability II: Metrics
Metrics and Monitoring
Metrics in Spring Boot
Prometheus and Grafana
The cloud is the limit
Requests and Limits