- Cours pratique
- Informatique
Formation GitOps avec GitLab, Terraform et Kubernetes
Mettre en œuvre GitOps avec les fonctionnalités natives de GitLab pour provisionner, déployer et opérer Kubernetes avec Terraform

- Durée
- 2 jours
- Niveau
- Intermédiaire
- Modalités
- Présentiel / Distanciel
Description de la formation GitOps
Qu'est-ce que GitOps avec GitLab, Terraform et Kubernetes ?
GitOps est une approche d’automatisation qui s’appuie sur Git comme source de vérité unique pour piloter l’infrastructure, les configurations et les déploiements. Avec GitLab, Terraform et Kubernetes, les équipes Ops et DevOps disposent d’une chaîne cohérente pour gérer l’infrastructure as code, contrôler les changements via les Merge Requests, exécuter les pipelines CI/CD et superviser les déploiements sur cluster. GitLab ne se limite pas ici à un simple dépôt Git : la plateforme devient le point central de gouvernance, d’orchestration, de validation et de traçabilité de l’ensemble du cycle GitOps.
Pourquoi suivre une formation GitOps avec GitLab, Terraform et Kubernetes ?
Mettre en place GitOps avec GitLab permet de fiabiliser les déploiements, d’améliorer la gouvernance des changements et de renforcer la sécurité opérationnelle. Cette formation apporte une vision concrète des fonctionnalités GitLab mobilisables pour une approche GitOps moderne : GitLab CI/CD, Merge Requests, approvals, Environments, variables protégées, Terraform state, GitLab Agent for Kubernetes, dashboards et observabilité. Elle permet aux équipes Ops déjà familières de GitLab de structurer une chaîne industrialisée et traçable, depuis le provisioning du cluster jusqu’au redéploiement applicatif sur Kubernetes. La progression pédagogique repose sur un projet fil rouge unique qui évolue pendant les deux jours, afin d’ancrer les usages dans une logique produit et opérationnelle.

Objectifs pédagogiques
À l'issue de cette formation GitOps, vous aurez acquis les connaissances et compétences nécessaires pour :
- Comprendre les principes fondamentaux du GitOps et leur mise en œuvre dans l’écosystème GitLab
- Structurer un projet GitLab servant de source de vérité pour l’infrastructure et les déploiements Kubernetes
- Mettre en œuvre des pipelines GitLab CI/CD pour exécuter les cycles Terraform plan/apply et piloter les changements
- Exploiter les fonctionnalités GitLab liées à la gouvernance : Merge Requests, Approval Rules, Protected Branches et Environments
- Gérer les états Terraform, les secrets et les accès de manière sécurisée dans GitLab
- Connecter GitLab à un cluster Kubernetes avec GitLab Agent for Kubernetes et configurer les droits associés
- Déployer des applications sur Kubernetes via Helm ou Kustomize en s’appuyant sur GitLab Environments et les pipelines
- Mettre en place des mécanismes de rollback, de traçabilité et d’observabilité dans GitLab
- Détecter les dérives d’infrastructure et articuler les mises à jour Terraform et Kubernetes dans un flux GitOps cohérent
Objectifs opérationnels
Savoir concevoir et exploiter une chaîne GitOps complète avec GitLab pour provisionner un cluster Kubernetes avec Terraform.
Programme
Contenu du cours, module par module
7 modules
- Définition de GitOps : source of truth, déclaration d’état cible et mécanismes de réconciliation
- Positionnement de GitOps par rapport à une chaîne GitLab CI/CD classique
- Panorama des fonctionnalités GitLab utiles à une approche GitOps : repository, Merge Requests, CI/CD, Environments, approvals
- Présentation du projet fil rouge : un dépôt GitLab unique qui porte l’infrastructure et les déploiements
- Organisation des branches, conventions de dossiers et stratégie de promotion entre environnements
Travaux pratiques
Description : Les participants prennent en main le dépôt GitLab qui servira de support aux deux journées. Ils organisent l’arborescence pour séparer les composants Terraform, les manifestes Kubernetes et les éléments de pipeline. Ils définissent les branches, les règles de contribution et les premiers mécanismes de validation. En quoi GitLab devient-il plus qu’un simple outil CI/CD lorsqu’il est utilisé comme socle GitOps ? La validation des acquis repose sur la mise en place d’un dépôt cohérent, versionné et exploitable pour les modules suivants.
- Intégration de Terraform dans GitLab CI/CD pour automatiser les phases plan et apply
- Gestion du state Terraform dans GitLab et principes de sécurisation associés
- Utilisation des GitLab Environments pour représenter les environnements cibles
- Mise en place d’approbations et de contrôles avant application des changements d’infrastructure
- Provisioning du cluster Kubernetes qui servira de base aux travaux du Jour 2
Travaux pratiques
Description : Les participants créent les pipelines nécessaires pour exécuter Terraform plan puis Terraform apply dans GitLab. Ils configurent le stockage et la gestion du state, associent les jobs aux environnements GitLab et ajoutent des étapes de validation via Merge Request et approvals. Le cluster Kubernetes est effectivement provisionné au cours du module pour être réutilisé le lendemain. La validation des acquis consiste à obtenir un pipeline fonctionnel, traçable et capable de créer l’infrastructure attendue sans intervention manuelle non maîtrisée.
- Gestion des secrets avec GitLab CI/CD Variables, variables protégées et intégration Vault
- Sécurisation des branches, des tags et des environnements dans GitLab
- Gouvernance des changements via Merge Requests, reviewers, Approval Rules et historique d’audit
- Introduction aux policies et aux contrôles de conformité sur l’IaC
- Bonnes pratiques de revue de code infrastructure et de séparation des responsabilités
Travaux pratiques
Description : Les participants configurent les variables sensibles, protègent les branches critiques et définissent des règles d’approbation adaptées aux changements d’infrastructure. Ils simulent des modifications IaC soumises à revue, analysent les impacts dans la Merge Request et valident le processus avant exécution. Comment garantir que les changements d’infrastructure restent contrôlés, auditables et conformes aux pratiques d’exploitation ? La validation des acquis repose sur la capacité à faire passer un changement Terraform dans un flux GitLab gouverné et sécurisé.
- Présentation de GitLab Agent for Kubernetes et de l’architecture KAS
- Connexion du projet GitLab au cluster provisionné la veille
- Gestion du kubeconfig, des contextes et des accès depuis GitLab
- Mise en place des rôles et permissions Kubernetes avec une approche RBAC
- Vérification de la connectivité et des capacités d’administration depuis GitLab
Travaux pratiques
Description : Les participants installent et configurent GitLab Agent for Kubernetes pour rattacher le cluster au projet fil rouge. Ils vérifient les accès, ajustent les permissions RBAC et préparent la communication entre GitLab et Kubernetes pour les opérations de déploiement. Le cluster provisionné au Jour 1 devient ainsi pleinement exploitable dans une logique produit GitLab. La validation des acquis est réalisée par un test de connexion concluant et par la capacité à piloter le cluster depuis GitLab dans le périmètre défini.
- Déploiement sur Kubernetes avec GitLab CI/CD, Helm et Kustomize
- Exploitation de GitLab Environments pour suivre les déploiements par contexte
- Mise en place de review apps pour les validations temporaires
- Gestion des versions, promotions, redéploiements et rollbacks depuis GitLab
- Lecture des déploiements et historique applicatif dans l’interface GitLab
Travaux pratiques
Description : Les participants construisent un pipeline de déploiement applicatif qui publie une application sur le cluster via Helm ou Kustomize. Ils configurent les environnements GitLab, testent des review apps, puis simulent des mises à jour et un rollback pilotés depuis la plateforme. Quels bénéfices opérationnels obtient-on lorsque GitLab centralise à la fois la validation, le déclenchement et le suivi des déploiements Kubernetes ? La validation des acquis repose sur la réussite d’un cycle complet de déploiement, promotion et restauration dans GitLab.
- Détection des dérives d’infrastructure avec Terraform et intégration dans les pipelines GitLab
- Exploitation des alertes, tableaux de bord et informations de suivi disponibles dans GitLab
- Corrélation entre changements d’infrastructure, déploiements applicatifs et historique de pipeline
- Stratégie de mise à jour du cluster : node pools via Terraform et workloads via Kubernetes
- Bonnes pratiques d’exploitation continue dans un modèle GitOps piloté par GitLab
Travaux pratiques
Description : Les participants provoquent puis analysent des écarts entre l’état attendu et l’état réel, afin d’illustrer la logique de réconciliation propre à GitOps. Ils exploitent les pipelines, les indicateurs de déploiement et les éléments de supervision disponibles dans GitLab pour suivre l’évolution du projet. Ils distinguent les mises à jour relevant de Terraform de celles relevant de Kubernetes et construisent une stratégie de maintenance cohérente. La validation des acquis repose sur la capacité à identifier une dérive, à la corriger et à tracer l’opération dans GitLab de bout en bout.
- Chaînage d’un changement d’infrastructure et d’un redéploiement applicatif dans un flux unique
- Orchestration des étapes Terraform puis Kubernetes dans GitLab CI/CD
- Traçabilité complète via commit, Merge Request, pipeline, environnement et historique de déploiement
- Vérification de la gouvernance, des approvals et de la sécurité du processus
- Consolidation des bonnes pratiques vues pendant les deux jours
Travaux pratiques
Description : Les participants réalisent un exercice final où un commit déclenche une modification d’infrastructure, suivie d’un redéploiement applicatif sur le cluster Kubernetes. Ils s’assurent que chaque étape est visible et gouvernée dans GitLab, depuis la Merge Request jusqu’au résultat de déploiement. Le lab permet de réutiliser l’ensemble des briques produit étudiées : approvals, variables, environnements, agent Kubernetes, pipelines et historique. Comment démontrer concrètement qu’une plateforme GitLab bien configurée peut servir de centre de contrôle GitOps pour les équipes Ops ? La validation des acquis repose sur la réussite du scénario de bout en bout et sur la capacité à en expliquer les mécanismes.
Travaux pratiques
Mise en œuvre d’un projet fil rouge unique dans GitLab avec provisioning Terraform, connexion Kubernetes via GitLab Agent et déploiement applicatif en GitOps. Environ 65 % du temps de formation est consacré aux travaux pratiques.
Programme mis à jour le 01/04/2026
Public concerné
Ce cours s’adresse aux ingénieurs systèmes, administrateurs cloud, ingénieurs DevOps, SRE, responsables d’exploitation et profils Ops souhaitant industrialiser leurs pratiques GitLab autour de Terraform, Kubernetes et GitOps.

Prérequis
Les participants doivent déjà disposer d’une expérience de base avec GitLab, notamment sur l’utilisation des dépôts, des branches, des Merge Requests et des pipelines simples. Une première pratique de l’administration système ou cloud est recommandée, ainsi que des notions sur l’infrastructure as code et sur Kubernetes. Il est également souhaitable de connaître les principes généraux de Git et du YAML afin de se concentrer pleinement sur la mise en œuvre GitOps et sur les fonctionnalités avancées de GitLab. Ces prérequis sont nécessaires pour tirer profit de la formation, en particulier sur les aspects de gouvernance, de sécurité et d’automatisation produit.
J’évalue mes connaissances pour vérifier que je dispose des prérequis nécessaires pour profiter pleinement de cette formation en faisant le test de prérequis.
Faire le testFinancement
Cette formation peut être prise en charge par votre entreprise, seule ou avec l’appui de son opérateur de compétences. Nous fournissons le devis et les pièces attendues par l’OPCO.
Formations liées
- Google Cloud Platform : Débuter avec Google Kubernetes EngineRéf. GCPKE1 jourFondamentalProchaine session : 19 oct.790 €
- Google Kubernetes Engine : ArchitectingRéf. AWGK2 joursIntermédiaireProchaine session : 20 oct.1 580 €
- Intégration continue avec Maven, Nexus, Jenkins, SonarRéf. OICJ3 joursIntermédiaireProchaine session : 22 déc.2 090 €
- Puppet : Automatiser la gestion de ses configurationsRéf. OPUP2 joursFondamentalProchaine session : 9 nov.1 590 €