15 points par ironlung 2023-10-28 | Aucun commentaire pour le moment. | Partager sur WhatsApp
  • Nous sommes désormais à une époque où il suffit de quelques clics dans la console AWS pour déployer un serveur, ou d’une seule ligne de commande pour mettre en place diverses infrastructures
  • IaC
    • Gérer et provisionner l’infrastructure avec du code
    • Tout ce que nous voulons, comme le réseau, les serveurs ou le stockage, est enregistré et géré sous forme de code
    • Cela permet de partager, tester et réutiliser le code afin de gérer l’infrastructure de manière plus productive
  • Terraform
    • Terraform est l’outil le plus connu parmi les solutions d’IaC
    • Il permet de tout gérer, non seulement les clouds comme AWS, GCP et Azure, mais aussi les solutions internes à l’entreprise
    • Il utilise une approche déclarative qui définit le résultat final souhaité, ce qui facilite la prévision du résultat
    • Même en réutilisant le code, il garantit le même résultat
    • Avec terraform plan, il établit un plan détaillé de ce qui sera créé sur AWS
    • L’application réelle se fait via terraform apply
    • Les informations sur les ressources créées par Terraform sont gérées dans un fichier JSON appelé tfstate
  • Mode d’utilisation de Terraform
    • Il fournit des fonctionnalités permettant de créer des ressources à partir d’entrées utilisateur via différents mots-clés, puis d’afficher les résultats d’exécution dans le CLI
      • Provider
        • Plugin qui implémente un type de ressource
        • On recherche le provider du cloud ou du service utilisé, comme AWS ou GCP, on l’ajoute à la configuration, puis on utilise les ressources correspondantes pour provisionner l’infrastructure
      • Module
        • Petite configuration Terraform réutilisable qui permet de gérer un groupe de ressources liées comme s’il s’agissait d’une ressource unique
        • On peut aussi utiliser librement des modules créés par d’autres afin de gérer efficacement de nombreuses ressources avec peu de code
        • Il est possible d’appeler plusieurs fois le même module avec des configurations différentes
      • Resource
        • Mot-clé qui décrit un ou plusieurs objets d’infrastructure, comme des composants de haut niveau tels qu’un réseau virtuel, une instance de calcul ou un enregistrement DNS
      • Variable
        • Les variables d’entrée permettent de définir les propriétés des ressources sans modifier le code source du module
        • Elles ressemblent aux paramètres de fonction d’un langage de programmation
        • Elles rendent le partage et la réutilisation des modules plus flexibles
      • Output
        • Les valeurs de sortie permettent de produire des informations d’infrastructure utilisables en ligne de commande et d’exposer des informations à d’autres configurations Terraform
        • Elles ressemblent aux valeurs de retour d’un langage de programmation

Aucun commentaire pour le moment.

Aucun commentaire pour le moment.