Plan du cours
Module 1 : Introduction à l'Infrastructure as Code et à Terraform
- Concepts et avantages de l'IaC pour les environnements sur site et hybrides
- Vue d'ensemble de Terraform : fournisseurs, ressources, état et cycle de vie
- Installation de Terraform, de Azure CLI et des outils requis
- Premier exercice pratique : écriture et application locale d'une configuration Terraform simple
Module 2 : Langage de configuration HashiCorp (HCL) et bases de la configuration
- Syntaxe HCL, ressources, attributs et expressions
- Variables, sorties (outputs), variables locales (locals) et contraintes de types
- Utilisation de l'interface CLI Terraform : init, plan, apply, destroy et fmt
- Travaux pratiques : créer une configuration paramétrée pour une ressource sur site et une ressource Azure
Module 3 : Fournisseurs, ressources et fondamentaux du fournisseur Azure
- Compréhension des fournisseurs et de la configuration des fournisseurs (fournisseur AzureRM)
- Correspondance entre l'infrastructure et les ressources Terraform (réseau, calcul, stockage)
- Gestion de l'authentification Azure et des principes de service pour l'automatisation
- Exercice : provisionnement d'un réseau virtuel Azure et d'une simple machine virtuelle via Terraform
Module 4 : Gestion de l'état, back-ends et collaboration
- État Terraform : objectif, format et considérations relatives au cycle de vie
- Back-ends distants avec Azure Storage Account et stratégies de verrouillage d'état
- Espaces de travail, environnements et motifs de collaboration pour les équipes
- Travaux pratiques : configurer l'état distant dans Azure Storage et exécuter un flux de travail multi-utilisateurs
Module 5 : Modularisation, réutilisabilité et meilleures pratiques
- Création et utilisation de modules Terraform
- Entrées/sorties de modules, gestion des versions et motifs d'enregistrement (registry)
- Structure de dossiers, conventions de nommage et structure de dépôt maintenables
- Exercice : créer un module réutilisable pour une VM Azure + disque + réseau et le tester dans différents environnements
Module 6 : Gestion des appareils virtuels Azure et intégration sur site
- Gestion des machines virtuelles Azure, des composants du Bureau à distance Windows et du cycle de vie des appareils via Terraform
- Motifs pour la gestion d'appareils hybrides : connexion de ressources sur site et d'appareils gérés par Azure
- Intégration de systèmes de gestion de stockage volumétrique ou d'appareils via des sources de données et des fournisseurs externes
- Travaux pratiques : déployer un parc de VM Azure représentant des unités d'opérateurs et configurer le balisage d'inventaire et une surveillance de base
Module 7 : CI/CD, automatisation et pipelines de déploiement
- Intégration de Terraform avec CI/CD (GitHub Actions, pipelines Azure DevOps)
- Automatisation des commandes plan/apply avec des secrets sécurisés et des principes de service
- Fondamentaux de la « Policy as Code » (motifs Sentinel ou Open Policy Agent) et vérifications pré-déploiement
- Exercice : créer un simple flux de travail GitHub Actions pour planifier et appliquer Terraform dans un abonnement bac à sable
Module 8 : Sécurité, secrets et pratiques opérationnelles
- Gestion des secrets : intégration avec Azure Key Vault et évitement des données sensibles dans les fichiers d'état
- Contrôle d'accès, RBAC et privilèges minimaux pour les comptes d'automatisation
- Détection des dérives (drift detection), réconciliation de l'état et pratiques de correction de base
- Liste de vérification : sauvegarde, audit et gouvernance pour l'infrastructure gérée par Terraform
Module 9 : Tests, débogage et dépannage
- Débogage des configurations Terraform et lecture efficace des différences de planification (plan diffs)
- Approches de tests unitaires et d'intégration (terraform validate, tflint, kitchen-terraform)
- Motifs d'erreurs courants et stratégies de résolution
- Travaux pratiques : exécuter les outils de validation et de linting et corriger les problèmes détectés
Module 10 : Projet de synthèse — Scénario de déploiement hybride
- Exercice de conception : planifier un déploiement d'appareils sur site + Azure en utilisant les motifs appris
- Mise en œuvre des composants principaux à l'aide de modules, d'état distant et de fragments de pipeline CI/CD
- Présentation de la solution, discussion sur les compromis et révision du mode opératoire (runbook) pour les opérations
Résumé et prochaines étapes
Pré requis
- Compréhension des concepts de base en matière de réseau et de virtualisation
- Familiarité avec la ligne de commande Windows ou Linux
- Connaissances de base des concepts d'infrastructure cloud ou sur site
Public cible
- Administrateurs systèmes et ingénieurs en plateforme
- Praticiens DevOps débutant dans l'Infrastructure as Code
- Équipes TI gérant une infrastructure hybride (sur site + Azure)
Nos clients témoignent (3)
le rythme était globalement excellent. Michal a su maintenir l'attention du public et s'assurer que tout le monde suivait bien dans l'ensemble
Asif Shaikh - Carpmaels & Ransford
Formation - Terraform on Microsoft Azure
Traduction automatique
Vérification de tous les détails en pratique - en écrivant du vrai code
Michal Pipala - EY
Formation - Advanced Terraform: Efficient Infrastructure as Code
Traduction automatique
l'instructeur était très bien préparé
Federico Biavati - CRIF S.P.A.
Formation - Terraform for Managing Cloud Infrastructure
Traduction automatique