Retour aux projets

SoundFlow

En cours

Déploiement d'une infrastructure de streaming musical scalable avec Terraform, Kubernetes, Docker et GitLab CI sur Azure.

Terraform
Azure
Kubernetes
Docker
GitLab CI
Python

À propos du projet

Ce projet vise à concevoir et déployer une infrastructure informatique robuste et scalable pour SoundFlow, un service de streaming musical. L'objectif est d'améliorer le processus de déploiement, d'assurer une haute disponibilité et d'automatiser la livraison continue (CI/CD) en s'inspirant des architectures des leaders du secteur.

Stack Technique

  • Terraform : Automatisation du déploiement de l'infrastructure sur Azure (VMs, Load Balancer, Base de données, Blob Storage, CDN).
  • Docker : Conteneurisation d'une application web Python (API) pour garantir la portabilité et la cohérence des environnements.
  • Kubernetes (AKS) : Orchestration des conteneurs pour assurer la scalabilité, la haute disponibilité et la gestion automatisée des déploiements.
  • GitLab CI : Mise en place d'une pipeline CI/CD complète pour automatiser les étapes de build, test, et déploiement de l'application.
  • Nginx : Configuration en tant que reverse proxy pour la répartition de charge et la sécurisation de l'architecture.
  • PostgreSQL/MySQL : Déploiement d'une base de données en architecture Leader-Follower pour optimiser les performances en lecture/écriture.
  • Azure Monitor : Supervision de l'infrastructure et des applications pour garantir leur bon fonctionnement.

Défis et Solutions

  • Concevoir une architecture distribuée et hautement disponible, incluant un Load Balancer, des serveurs web, une base de données répliquée et un CDN.
  • Automatiser entièrement le provisionnement de l'infrastructure sur le cloud Azure avec Terraform.
  • Créer une pipeline CI/CD performante et sécurisée pour déployer une application conteneurisée sur un cluster Kubernetes.
  • Intégrer la supervision à chaque étape du projet pour assurer la fiabilité et la performance des services.