Formation Terragrunt
€ HT / personne |
2 jours (14 heures) |
Présentation
Terragrunt est l’outil qui vous permettra de tirer profit de toute la puissance de Terraform. Terragrunt fournit des fonctions supplémentaires pour garder vos configurations DRY (“Don’t Repeat Yourself”), travailler avec plusieurs modules Terraform et gérer l’état à distance.
Terragrunt permet l’automatisation de nombreuses corrections pour réduire les risques liés aux versions et aux normes de sécurité. Seul Terragrunt propose un ensemble de fonctionnalités aussi riche :
- Partagez facilement votre état avec les dépendances explicites
- Réduit les tâches récurrentes avec la génération de configuration automatique d’Atlantis
- Supprimer les Terraform duliqués avec “Generate blocks”
- Réduire le codage complexe avec l’environment variable support
- Appliquer les métadonnées de manière universelle avec l’automatic resource tagging
Notre formation Terragrunt vous présentera comment installer et configurer le programme, toutes les bonnes pratiques pour rendre vos composants DRY et les fonctionnalités importantes comme inputs, local, auto-init…
Comme toutes nos formations, cette formation Terragrunt vous présentera la dernière version en date, à savoir Terragrunt 0.33.
Objectifs
- Comprendre les limitations de Terraform et les solutions apportées par Terragrunt
- Structurer et organiser des projets Terraform complexes avec Terragrunt
- Implémenter le principe DRY (Don’t Repeat Yourself) dans leurs configurations
- Gérer les dépendances entre modules et environnements
- Automatiser les déploiements multi-environnements
- Appliquer les bonnes pratiques de sécurité et de gouvernance
Public visé
- Développeurs
- Ingénieur infrastructure
- Administrateurs systèmes
- DevOps
Pré-requis
- Terraform : Maîtrise des concepts de base (providers, resources, data sources, variables, outputs)
- Terraform : Expérience pratique avec les modules Terraform
- Infrastructure as Code : Compréhension des principes IaC
- Cloud : Connaissance d’au moins un cloud provider (AWS, Azure, GCP)
- Ligne de commande : Aisance avec le terminal/CLI
- Git : Notions de versioning et collaboration
Programme de notre formation Terragrunt
JOUR 1 – Fondamentaux et Configuration
Introduction à Terragrunt
- Les limitations de Terraform dans les projets complexes
- Présentation de Terragrunt et ses bénéfices
- Architecture et concepts clés
- Comparaison avec d’autres outils (Atlantis, Spacelift)
- Installation et configuration initiale
- Premier projet simple : conversion d’un projet Terraform existant
Configuration et Structure
- Fichier terragrunt.hcl : syntaxe et structure
- Configuration des backends distants
- Variables et interpolations
- Organisation des répertoires (structure recommandée)
- Configuration des providers
- Création d’une structure de projet multi-environnements
- Configuration du backend S3/Azure Storage
- Mise en place des premiers fichiers terragrunt.hcl
Gestion des Modules et DRY
- Réutilisation de modules Terraform avec Terragrunt
- Configuration centralisée vs distribuée
- Gestion des versions de modules
- Paramétrage et personnalisation par environnement
- Héritage de configuration
- Création de modules réutilisables
- Déploiement du même module sur plusieurs environnements
- Utilisation des fonctions de Terragrunt
Gestion des Environnements
- Stratégies d’organisation multi-environnements
- Séparation des états Terraform
- Gestion des variables par environnement
- Configuration des accès et permissions
- Bonnes pratiques de nommage
- Mise en place d’environnements dev/staging/prod
- Configuration spécifique par environnement
- Test de déploiement sur plusieurs environnements
JOUR 2 – Fonctionnalités Avancées et Automation
Dépendances et Orchestration
- Gestion des dépendances avec dependency
- Ordre d’exécution et orchestration
- Passage de données entre modules
- Gestion des erreurs de dépendances
- Mock outputs pour les tests
- Création d’une chaîne de dépendances (VPC → Subnets → EC2)
- Utilisation des outputs comme inputs
- Gestion des dépendances circulaires
Hooks et Automatisation
- Before et after hooks
- Validation et contrôles de qualité
- Intégration avec des outils externes
- Scripts personnalisés
- Gestion des erreurs dans les hooks
- Mise en place de hooks de validation
- Intégration avec des outils de sécurité (tfsec, checkov)
- Automatisation de tâches post-déploiement
CLI et Commandes Avancées
- Commandes run-all et opérations en masse
- Options de débogage et troubleshooting
- Filtrage et sélection de modules
- Intégration dans les pipelines CI/CD
- Gestion des locks et des conflits
- Déploiement simultané de plusieurs modules
- Résolution de problèmes courants
- Simulation d’un pipeline CI/CD
Sécurité et Bonnes Pratiques
- Gestion sécurisée des secrets et variables sensibles
- Intégration avec les coffres-forts (AWS Secrets Manager, Azure Key Vault)
- Contrôle des accès et permissions
- Audit et logging
- Stratégies de sauvegarde et récupération
- Bonnes pratiques de développement
- Configuration de la gestion des secrets
- Mise en place de contrôles de sécurité
- Création d’un guide de bonnes pratiques pour l’équipe
JOUR 3 (Module optionnel) – Sujets Avancés et Cas d’Usage
Intégration CI/CD Avancée
- Intégration avec GitLab CI, GitHub Actions, Azure DevOps
- Stratégies de déploiement (Blue/Green, Canary)
- Gestion des approbations et des gates
- Tests automatisés d’infrastructure
- Rollback et gestion des échecs
- Création d’un pipeline complet
- Mise en place de tests d’infrastructure
- Simulation de rollback
Patterns Avancés et Architecture
- Terragrunt avec micro-services et architectures distribuées
- Gestion multi-cloud et multi-région
- Patterns de résilience et haute disponibilité
- Intégration avec Kubernetes et conteneurs
- Gestion des migrations d’infrastructure
- Déploiement multi-région
- Architecture résiliente avec Terragrunt
- Migration d’infrastructure existante
Monitoring et Observabilité
- Monitoring des déploiements
- Métriques et alerting
- Optimisation des performances
- Analyse des coûts d’infrastructure
- Tableaux de bord et reporting
- Mise en place de monitoring
- Création de tableaux de bord
- Analyse de performance
Troubleshooting et Maintenance
- Diagnostic et résolution de problèmes courants
- Maintenance et mise à jour des configurations
- Gestion des versions et migrations
- Documentation et knowledge management
- Formation des équipes
- Résolution de cas pratiques
- Mise en place d’une stratégie de maintenance
- Création de documentation
Pour aller plus loin
Formation Kubernetes
Formation Docker
Formation Terraform
Langues et Lieux disponibles
Langues
- Français
- Anglais / English
Lieux
-
France entière
- Paris
- Lille
- Reims
- Lyon
- Toulouse
- Bordeaux
- Montpellier
- Nice
- Sophia Antipolis
- Marseille
- Aix-en-Provence
- Nantes
- Rennes
- Strasbourg
- Grenoble
- Dijon
- Tours
- Saint-Étienne
- Toulon
- Angers
-
Belgique
- Bruxelles
- Liège
-
Suisse
- Genève
- Zurich
- Lausanne
-
Luxembourg
Témoignages
⭐⭐⭐⭐⭐ 4,8/5 sur Google My Business. Vous aussi, partagez votre expérience !
Afficher tous les témoignages
⭐⭐⭐⭐⭐ 4,8/5 sur Google My Business. Vous aussi, partagez votre expérience !
Noter la formation
€ HT / personne |
2 jours (14 heures) |
UNE QUESTION ? UN PROJET ? UN AUDIT DE CODE / D'INFRASTRUCTURE ?
Pour vos besoins d’expertise que vous ne trouvez nulle part ailleurs, n’hésitez pas à nous contacter.
ILS SE SONT FORMÉS CHEZ NOUS