A recommended four-day workshop for application developers
This proposed agenda uses a small application with services deployed separately. We start with container and Kubernetes basics, then connect each module to your application's behavior.
Day 1
Deploy and release individual services
You will connect container images and configuration to Pods, Deployments, and Services. We explain readiness, liveness, rolling updates, and rollback through a release with dependent services.
Hands-on exercises
- Deploy two application components with separate release lifecycles.
- Introduce an unhealthy version and restore the affected service.
Day 2
Manage versions and environment configuration
We introduce Helm releases and Kustomize, then explain the controllers and nodes that run your application. You will distinguish a release change from recovery after an infrastructure failure.
Hands-on exercises
- Package separate service versions and configuration in Helm releases.
- Simulate a node failure and inspect application recovery.
Day 3
Trace requests between services
You will trace how DNS, Services, ingress, and network policies affect requests in your application. We discuss when to use a service mesh and how placement choices affect availability.
Hands-on exercises
- Trace a request from ingress through two application services.
- Diagnose a dependency failure caused by a selector or network policy.
Day 4
Handle state, demand, and access
We show how secrets, persistent storage, and autoscaling relate to each service's needs. You will discuss database access, workload permissions, and how adding replicas differs from increasing database capacity.
Hands-on exercises
- Configure a service's credentials and persistent data dependency.
- Apply an uneven load and observe which component needs more replicas.
Your service boundaries, database dependencies, and release responsibilities can shape the agenda. Get in touch to tailor the workshop to your move from a Rails monolith to Kubernetes microservices.