Epitech projectDevOpsShipped
Bernstein
Epitech DevOps project: Kubernetes deployment of a multi-service app.
Orchestrating a distributed app (Poll → Worker → Result, Redis, PostgreSQL) on a Kubernetes cluster behind Traefik, with cAdvisor observability.
Context
A group project orchestrating a distributed application in Kubernetes with several services, databases, and observability components.
Team
Team of 3 GitHub contributors.
Role
Contribution to the Kubernetes infrastructure: volume management, read-only configuration, workload placement and affinity across nodes, the Result service, and various deployment tweaks.
What was built
A Kubernetes cluster hosting a Poll frontend, an asynchronous worker, a Result frontend, Redis, PostgreSQL, Traefik as ingress, and cAdvisor for observability, with ConfigMap, Services, Deployments, volume, PostgreSQL Secret, and Ingress manifests.
Architecture
Poll (frontend) → Redis → Worker (asynchronous) → PostgreSQL → Result (frontend), with Traefik as ingress and cAdvisor for container monitoring.
Media gallery
Diagram / architectureArchitecture
Technical decisions
Architecture largely set by the brief
Much of the architecture (Poll/Worker/Result services, Redis, PostgreSQL) comes from the Epitech brief. The personal work is mainly in the implementation: Kubernetes debugging, node placement, storage, and deployment constraints.
Stack
KubernetesDockerPostgreSQLRedisTraefik
Skill → evidence
Deploys and debugs a multi-service app on Kubernetes
Set up and troubleshooting of several infrastructure pieces: volumes, read-only configuration, workload placement, and the Result service.
Results
The cluster is deployed and documented through its Kubernetes manifests.
Limitations
The project does not provide published load, availability, or performance metrics.
