Description
Ce programme de formation sur GitOps et ArgoCD vise à fournir aux participants une compréhension approfondie des principes et des pratiques de GitOps. Les apprenants exploreront les fondations de GitOps, les avantages des différentes stratégies de déploiement, ainsi que l'utilisation d'ArgoCD pour la gestion des applications sur Kubernetes. Le cours inclut des modules sur la configuration avancée, l'intégration avec d'autres outils CI/CD et une étude de cas pratique. Destiné aux professionnels de l'informatique, il permet d'acquérir des compétences essentielles pour optimiser les déploiements dans des environnements complexes.
Objectifs
- Comprendre les principes de GitOps et ses bénéfices dans un workflow DevOps.Installer, configurer, et administrer ArgoCD.Déployer et gérer des applications avec ArgoCD.Comparer ArgoCD avec d'autres outils GitOps, comme Fleet.Implémenter des stratégies PULL et PUSH adaptées à différents scénarios
Récapitulatif
Public
Développeurs, administrateurs système et ingénieurs DevOps.
Niveau : Intermédiaire (ayant des bases en Kubernetes et Git)
Prérequis
Connaissances de base en Kubernetes (pods, deployments, services)
Familiarité avec Git et les workflows Git
Utilisation ou compréhension de base des pipelines CI/CD
Méthodes et modalités pédagogiques
Formation réalisée en Présentiel, Distanciel ou Dual-Learning selon la formule retenue.
Moyens et supports pédagogiques
Mise à disposition d'un poste de travail sur nos formations en Présentiel.
Mise à disposition de nos environnements de visio sur nos formations en Distanciel
Remise d'une documentation pédagogique numérique pendant la formation
La formation est constituée d'apports théoriques, d'exercices pratiques et de réflexions
Dans le cas d'une formation sur site Entreprise, le client s'engage à avoir toutes les ressources pédagogiques nécessaires (salle, équipements, accès internet, TV ou Paperboard...) au bon déroulement de l'action de formation conformément aux prérequis indiqués dans le programme de formation
Modalités de suivi et d'évaluations
Auto-positionnement des stagiaires avant la formation
Émargement des stagiaires et formateur par 1/2 journée
Exercices de mise en pratique ou quiz de connaissances tout au long de la formation permettant de mesurer la progression des stagiaires
Auto-évaluation des acquis de la formation par les stagiaires
Questionnaire de satisfaction à chaud et à froid à l'issue de la formation
Programme détaillé
- Jour 1 : Fondations et introduction à GitOps
- Module 1 : Introduction au GitOps
- ● Qu'est-ce que GitOps ?
- - Historique et origines.
- - Bénéfices : auditabilité, consistance, réduction des erreurs humaines.
- ● Comparaison des outils GitOps :
- - ArgoCD, Fleet, Flux, Jenkins X.
- ● Les stratégies PULL et PUSH :
- - Avantages et inconvénients de chaque approche.
- Module 2 : Introduction à ArgoCD
- ● Qu'est-ce qu'ArgoCD ?
- - Fonctionnalités principales.
- - Architecture d'ArgoCD : components et workflows.
- ● Installation d'ArgoCD :
- - Installation sur un cluster Kubernetes (pratique).
- - Configuration initiale via l'interface CLI/UI.
- ● Présentation de l'interface utilisateur :
- - Dashboard.
- - Concepts clés : Applications, Projects, Repositories.
- Module 3 : Flux de travail GitOps avec ArgoCD
- ● Configuration d'un dépôt Git :
- - Configuration des applications dans ArgoCD.
- - Synchronisation automatique vs manuelle.
- ● Déploiement d'une application simple :
- - Exemple pratique : Application Nginx.
- Jour 2 : Gestion avancée et comparaison avec d'autres outils
- Module 4 : Gestion avancée avec ArgoCD
- ● Customisation des déploiements :
- - Paramétrage des fichiers YAML et Helm Charts.
- - Gestion des secrets (avec Vault ou SOPS).
- ● Stratégies de synchronisation :
- - Sync Policies (automatique, suspendue, pruning).
- - Gestion des conflits de déploiement.
- ● Monitoring et résolution des problèmes :
- - Logs et événements dans ArgoCD.
- - Débogage d'un déploiement échoué.
- Module 5 : Intégration avec d'autres outils
- ● CI/CD avec Argo Workflows :
- - Intégration avec GitLab CI/CD ou Jenkins.
- ● Monitoring avancé :
- - Intégration avec Prometheus et Grafana.
- ● Gestion multi-cluster :
- - Utilisation de Fleet pour la gestion centralisée.
- Module 6 : Étude de cas et comparaison avec Fleet
- ● Comparaison : ArgoCD vs Fleet :
- - Points forts et cas d'usage de chaque outil.
- ● Étude de cas :
- - Déploiement GitOps dans un environnement multi-cluster.
- - Discussion sur la stratégie à adopter (PULL/PUSH).
- Module 7 : Capstone Project
- ● Projet pratique de synthèse :
- - Déployer une application complexe avec plusieurs environnements (staging, production).
- - Implémenter des politiques de synchronisation et des alertes