Ambient IT

Terraform

Par Ambient IT

Objectifs

  • Appréhender les différents services offerts par Terraform
  • Utiliser Terraform pour déployer une infrastructure sur AWS
  • Maîtriser le langage HLC, le stockage distant et les providers

Programme

Présentation de Terraform

  • Le Principe d’un outil d’infrastructure as code
  • Les différents providers

Installation de Terraform

  • Installation du package
  • Vérification de l’installation

Construction d’une infrastructure AWS

  • Configuration du provider AWS
  • Définition de l’infrastructure cible
  • Initialisation de la configuration Terraform
  • Création de l’infrastructure
  • Importation de ressources existantes dans Terraform
  • Retrait de ressources de Terraform sans les détruire
  • Modification de l’infrastructure
  • Redéploiement de l’infrastructure
  • Destruction de l’infrastructure

Le langage HLC

  • Les types et valeurs des expressions
  • Utilisation des variables d’entrée (variable)
  • Utilisation des valeurs de sortie (output)
  • Utilisation des valeurs locales (locals)
  • Les dépendances implicites entre les ressources
  • Les dépendances explicites entre les ressources
  • Les cycle de vie des ressources (lifecycle)
  • Les fonctions intégrées
  • Les templates
  • Les expressions conditionnelles
  • Création de plusieurs ressources identiques (count et for_each)
  • Les blocs dynamiques

Les modules

  • Présentation du principe de module
  • Les différents types de source
  • Les versions de module
  • Utilisation d’un module du registre terraform
  • Création de modules terraform

Mise à jour de Terraform

  • Mise à jour du binaire
  • Mise à jour des providers
  • Mise à jour des modules
  • Les restrictions de version

Stockage à distance du state

  • Les différents backend
  • Le système de verrou
  • Les remote state

Avancé

  • Travailler avec plusieurs versions de Terraform
  • Définition multiple d’un provider
  • Les workspaces

Module complémentaire (+1 jour) : Préparation à l’examen Terraform Associate

Infrastructure as Code (IaC)

  • Qu’est-ce que l’IaC ?
  • Pourquoi utiliser l’IaC ?
  • Les bénéfices du multi-cloud et des fournisseurs agnostiques

Terraform CLI et le workflow Terraform

  • Les différents scénarios présents à l’examen
  • Présentation du flux Terraform
  • Maîtrise du cycle (Write, Plan et Apply)

Configuration avancée

  • Lire, modifier et générer une configuration
  • Meilleures pratiques en matière d’injection secrète sécurisée
  • Créer et différencier la configuration de ressource et de data
  • Créer et maintenir l’état
  • La gestion de secret dans les fichiers state

Stratégie et méthode pour réussir l’examen

Formations de la même catégories (5)

Dawan
Découvrir Devops avec AnsiblePar Dawan

Comprendre l'intérêt du mouvement DevOps - Installer Ansible - Exploiter des playbooks Ansible pour déployer son SI

M2i Formation
Amazon Web Services - Ingénierie DevOpsPar M2i Formation
  • Utiliser les pratiques et concepts principaux de la méthodologie DevOps
  • Concevoir et mettre en place une infrastructure sur AWS, qui prend en charge un ou plusieurs projets de développement DevOps
  • Utiliser AWS CloudFormation et AWS OpsWorks pour déployer l'infrastructure nécessaire à la création d'environnements de développement, de test et de production pour un projet de développement logiciel
  • Utiliser AWS CodeCommit et découvrir l'éventail d'options permettant de mettre en place un environnement d'intégration continue sur AWS
  • Utiliser AWS CodePipeline pour concevoir et mettre en oeuvre un pipeline d'intégration et de livraison continues sur AWS
  • Mettre en oeuvre plusieurs cas d'utilisation courants du déploiement continu à l'aide des technologies AWS, notamment le déploiement bleu / vert et les tests A / B
  • Faire la distinction entre les différentes technologies de déploiement d'applications disponibles sur AWS (notamment AWS CodeDeploy, AWS OpsWorks, AWS Elastic Beanstalk, Amazon EC2 Container Service et Amazon EC2 Container Registry) et décider laquelle correspond le mieux à un scénario donné
  • Ajuster précisément les applications que vous envoyez sur AWS pour bénéficier de hautes performances et utiliser les outils et technologies AWS pour surveiller que votre application et votre environnement ne rencontrent aucun problème.
Ambient IT
TerraformPar Ambient IT

Terraform est un outil open source d’infrastructure-as-code écrit en go et mis au point par HashiCorp.

Il permet, via du code écrit en HLC (HashiCorp Configuration Language), de définir l’ensemble des ressources constituant une architecture et de pouvoir ensuite la déployer, la modifier et la détruire au besoin.

En fonction de l’architecture cible et des services utilisés, il existe un nombre important de plug-ins permettant de choisir les providers de Cloud (AWS, GCP, Azure, etc.), les services d’hébergement (Heroku, OVH, etc.), et autres SCM (Consul, Chef, Kubernetes, etc.) avec lesquels interagir.

Terraform est donc un outil permettant d’automatiser et d’orchestrer le déploiement et l’approvisionnement de ressources pour créer une architecture.

Cette infrastructure se différencie de ses concurrents, car elle est compatible avec les autres environnements, les ‘providers‘.

La dernière version en date de Terraform vous sera enseignée à savoir Terraform 0.15.

Cellenza training
Azure DevOps pour les Managers et les Product OwnersPar Cellenza training

Cette formation vous permettra de découvrir les outils à votre disposition dans Azure DevOps pour gérer au mieux vos projets de façon Agile.

M2i Formation
Azure DevOps Services - Mise en place d'une démarche DevOpsPar M2i Formation
  • Définir les composantes d'une usine logicielle
  • Gérer un référentiel de source depuis Azure DevOps Services
  • Administrer projets et utilisateurs
  • Construire avec Azure Pipelines
  • Intégrer une campagne de tests
  • Produire des rapports pour le suivi des projets.