PLATEFORME KUBERNETES AUTOMATISÉE AVEC GITOPS (vSPHERE)
Au sein de la SACEM, j'ai conçu et déployé une plateforme Kubernetes clé-en-main, entièrement automatisée et industrialisée sur une infrastructure on-premise vSphere. L'objectif de ce projet était de simplifier la mise à disposition d'environnements de développement et de production, en adoptant les meilleures pratiques DevOps et GitOps avec des outils modernes d'Infrastructure as Code (IaC), le tout orchestré via GitLab CI/CD.
Réalisations principales
- Conception d'une chaîne CI/CD GitLab complète pour le provisioning infra, le déploiement RKE2, et la livraison applicative via FluxCD.
- Conception de modules Terraform pour le provisionnement de l'infrastructure (VMs, réseaux, stockage) sur vSphere.
- Déploiement automatisé de clusters Kubernetes RKE2 à l'aide de playbooks Ansible, incluant installation, configuration réseau, et démarrage du service RKE2.
- Mise en place du bootstrap GitOps avec FluxCD pour gérer le déploiement des applications et composants d'infrastructure depuis un dépôt Git.
- Utilisation de Kustomize pour la personnalisation des manifestes Kubernetes selon les environnements (DEV, STAGING, PROD).
- Déploiement d'applications complexes avec Helm et gestion via HelmRelease dans FluxCD.
- Contrôle qualité et sécurité du code IaC avec TFLint et Checkov intégrés dans les pipelines CI.
- Structuration du dépôt GitOps multi-clusters (apps/, infrastructure/, clusters/) pour assurer la réplicabilité et la scalabilité du modèle.
- Mise en place de la supervision des clusters avec Prometheus et Grafana.
- Documentation technique complète : modules, flux CI/CD, procédures d'installation, gestion des erreurs et bonnes pratiques.
Environnement Technique
Jira, Terraform, Ansible, GitLab CI/CD, Kubernetes (RKE2), vSphere, FluxCD, Kustomize, Helm, Prometheus, Grafana, Kyverno, Checkov, TFLint, Docker, Linux