Terraform est un environnement open source proposé par la société HashiCorp pour gérer son infrastructure informatique sous forme de scripts (VM, réseau, sécurité, stockage, SGBD, entrée DNS, etc.). Ce concept correspond à l’acronyme IaC (Infrastructure As Code).
Concrètement il s’agit de construire ou de mettre à jour une infrastructure de façon efficace et sécurisée tout en étant capable de gérer les versions et la cohérence de son infrastructure. Le plan d’exécution, basé sur un graphe de dépendances des ressources visualisables, peut concerner des infrastructures de toute taille qui intègrent ou non des technologies Cloud (Azure, AWS, GCP, OpenStack, etc.).
Bulletin d’
inscriptionDemande de
devis Détail du
programme
Programme de la formation Infrastructure Terraform
- Découverte de l’Infrastructure As Code
- Objectifs de l’Infrastructure As Code
- Etat de l’art: DevOps et IaC
- Définition d’une infrastructure immutable
- Infrastructure As Code – Les outils IaC
- Origine de l’automatisation
- Les familles de l’automatisation et leurs outils :
- – Outils de gestion des templates
- – Outils d’orchestration
- – Outils de gestion de configuration
- Travaux pratiques
- Démonstration autour des outils précédents sous forme de « tour d’horizon fonctionnel »
- Introduction à Terraform
- Introduction
- Présentation des autres outils d’HashiCorp
- Introduction au langage HCL de Terraform (Hashicorp Configuration Language)
- Le standard JSON
- Travaux pratiques
- Installation de Terraform
- Introduction au langage Terraform
- Présentation globale de la plateforme de Cloud AWS
- Présentation des ressources de base Terraform sur AWS :
- – Providers
- – Ressources
- – Variables
- – Data-source
- Visualisation des ressources créées avec Terragraph
- Travaux pratiques
- Déploiement de ressources sur AWS :
- – Déploiement d’un serveur sur AWS
- – Déploiement d’un serveur web sur AWS
- – Déploiement d’un cluster de Serveurs Web sur AWS
- – Déploiement d’un LoadBalancer sur AWS
- Faciliter la réutilisation du Code Terraform
- Présentation du système de modules Terraform
- Présentation du Hub communautaire Terraform
- Création d’un module
- Gestion des Input
- Gestion des Output
- Travaux pratiques
- Création d’un module Terraform pour AWS
- Créer un module Terraform de gestion d’un cluster de Serveurs Web avec LoadBalancer frontal sur AWS
- Terraform et Multi-Cloud
- Présentation globale de la plateforme de cloud Microsoft Azure
- Présentation des ressources de base Terraform sur Microsoft Azure
- Travaux pratiques
- Création d’un module Terraform pour GCP
- Créer un module Terraform de gestion d’un cluster de Serveurs Web avec LoadBalancer frontal sur Azure
- Terraform : notions avancées
- Les conditions
- Les boucles
- Terraform et mise à jour de l’infrastructure sans interruption de service
- Création d’un module de gestion des utilisateurs IAM sur AWS (boucle)
- Modification du module de Cluster WEB sur AWS pour ajouter la possibilité d’activer le monitoring CloudWatch (condition)
- Mise à jour du cluster de Serveurs Web avec Terraform sans interruption de service
- Utiliser Terraform en équipe
- Présentation du fichier « Terraform State »
- – Partager le fichier « Terraform State »
- – Protéger le fichier « Terraform State » des écritures concurrentielles
- – Versionner le fichier « Terraform State »
- Best-Practice de gestion du Code Terraform en équipe
- Gestion des Secret dans Terraform
- Tester et valider le code Terraform
- Travaux pratiques
- Mise en place d’une solution de gestion du fichier « Terraform State » sur AWS
- Versionner et stocker le code Terraform sur AWS
- Mise en place d’un test automatique du code Terraform sur AWS
|