Kubequest

Plateforme Kubernetes complète en environnement cloud

PROJET INDIVIDUELPROJET EPITECH

Gaëlle De Nas De Tourris

3/13/20262 min temps de lecture

a desktop computer sitting on top of a white desk
a desktop computer sitting on top of a white desk

KubeQuest est un projet d’ingénierie DevOps consistant à concevoir et déployer une infrastructure Kubernetes complète dans le cloud, avec une approche orientée production et bonnes pratiques SRE.

L’objectif principal était de moderniser une infrastructure de conteneurisation en mettant en place un cluster Kubernetes entièrement fonctionnel, capable d’héberger des applications, de gérer leur déploiement et d’assurer leur supervision.

Architecture & Infrastructure

Le projet s’appuie sur une infrastructure distribuée composée de plusieurs machines virtuelles hébergées sur AWS :

  • cluster Kubernetes multi-nœuds (control plane + workers)

  • nœud dédié à l’exposition des services (Ingress)

  • nœud dédié à l’observabilité (monitoring & logs)

Cette architecture permet de reproduire un environnement proche de la production avec séparation des rôles et montée en charge.

Mise en place de la plateforme Kubernetes

Plusieurs composants clés ont été déployés pour construire une plateforme complète :

  • Exposition des services via un Ingress Controller (NGINX)

  • Interface d’administration avec Kubernetes Dashboard

  • Monitoring avancé avec Prometheus et Grafana

  • Centralisation des logs avec Loki

  • Gestion des déploiements en GitOps avec Kustomize

L’ensemble des configurations est versionné et automatisé afin de garantir reproductibilité et traçabilité.

Déploiement applicatif & automatisation

Une application initialement déployée via Docker Compose a été :

  • convertie en ressources Kubernetes

  • packagée sous forme de Helm chart

  • déployée via une approche GitOps

Le pipeline permet de :

  • automatiser les déploiements

  • contrôler l’état des applications

  • gérer les mises à jour et rollback

Bonnes pratiques & sécurité

Le projet intègre les standards actuels Kubernetes :

  • gestion des ressources (CPU / RAM)

  • utilisation de Secrets

  • mise en place de réplicas et haute disponibilité

  • stockage persistant pour les bases de données

  • système de sauvegarde

Côté sécurité :

  • contrôle des déploiements avec OPA (Open Policy Agent)

  • authentification centralisée via Dex + OAuth Proxy

Observabilité & résilience

Une stack complète permet de :

  • surveiller les performances des applications

  • analyser les logs en temps réel

  • détecter les anomalies

Le projet inclut également :

  • démonstration d’auto-scaling

  • gestion des déploiements défaillants avec rollback automatique

Technologies utilisées

  • Kubernetes (cluster multi-nœuds)

  • Docker

  • Helm / Kustomize (GitOps)

  • Prometheus / Grafana / Loki

  • NGINX Ingress Controller

  • Terraform (provisionnement infrastructure)

  • OPA / Dex (sécurité & authentification)

 Compétences développées

  • Conception d’architecture cloud

  • Administration Kubernetes

  • DevOps & GitOps

  • Observabilité (monitoring & logging)

  • Sécurité des infrastructures

  • Automatisation des déploiements