Formation Terraform
Notre formation Terraform vous permettra de prendre cet outil en main pour automatiser la gestion de votre infrastructure. Découvrez ou redécouvrez les principes de l’infrastructure programmable (Infrastructure-as-Code), la culture DevOps, et apprenez toutes les bonnes pratiques pour une utilisation sereine et efficace de Terraform. A l’issue de notre formation, les stagiaires seront capables de déployer et gérer une infrastructure Cloud avec Terraform.
Public admis
- Salarié en Poste
- Entreprise
Demandeur d'emploi et Etudiant non admis
Financement
- Votre OPCO
- Financement personnel
Financement CPF non pris en charge
Modalités
- En centre
- En entreprise
- À distance
Objectifs pédagogiques
- Identifier les apports de solutions d’orchestration et d’automatisation
- Comprendre les principes fondamentaux de Terraform
- Appréhender les solutions tierces permettant d’enrichir ses outils IaC
- Découvrir les bonnes pratiques permettant d’optimiser son efficacité dans la gestion d’infrastructures avec Terraform
Programme de la formation
Introduction : l’Infrastructure as Code
Retour sur la démarche DevOps et l’évolution des infrastructures IT
Les problématiques des outils de gestion d’infrastructure
Introduction à l’Infrastructure as Code (IaC) : principes fondamentaux, bénéfices et contraintes
Les approches déclarative (fonctionnelle) et impérative (procédurale)
Panorama des outils IaC : Ansible, Chef, SaltStack, CFEngine, Puppet, Terraform…
Présentation de Terraform
Avantages et inconvénients de l’utilisation de Terraform
Comment Terraform s’insère dans une démarche IaC ? Cas d’usage
Concepts et composants principaux : ressources, providers, variables, data sources…
L’écosytème Terraform, vue d’ensemble
Gestion du drift (decalage)
Templates avec terragrunt
Test de sécurité
Outils tiers (brainboard, terraspace…)
Installation et prise en main
Mise en œuvre d’un workflow simple avec Terraform CLI : validate, init, plan, apply, show et destroy
Configuration des ressources, cycle de vie
La syntaxe HCL (HashiCorp Configuration Language)
Déploiement de serveurs
Nettoyer les ressources
Gestion des states Terraform
Qu’est-ce qu’un state sur Terraform ?
Stockage partagé
Remote State et Terraform Enterprise, Consul, S3 ou gcs
Verrouiller des fichiers state
Isoler des fichiers state
Bonnes pratiques pour organiser ses projets Terraform
Utiliser le read-only state
Modules Terraform
Comprendre le principe des modules Terraform
Créer un module basique
Variables input et output
Modules configurables
Modules versionnés
Bonnes pratiques pour les modules : ressource séparée et variables path
Créer une infrastructure réutilisable
Pratiques avancées
Syntaxe avancée : boucles, if et if-else
Zero Downtime Deployment (ZDD)
Importer une infrastructure existante
Combiner Terraform et des outils comme Docker, Packer, GitLab CI, Jenkins…
Utilisation de Terraform en équipe
Configurer et initialiser les différents types de backends
Contrôle de version
Tests automatisés
Bonnes pratiques de code
Workflow pour équipes
Automatisation avec Terraform

Proposé par
Sparks
"Tout l'IT, vraiment tout"

Proposé par
Sparks
