Terraform¶
Terraform est un outil Infrastructure as code (IaC) développé par HashiCorp.
Installation¶
- learn.hashicorp.com - Install Terraform : Procédure d'installation de l'exécutable.
- terraform/install.sh
Points clés¶
- L'infrastructure est décrite dans un dossier à l'aide de fichiers HCL (voir registry.terraform.io - google_compute_instance - Example Usage)
- Les providers correspondent aux systèmes cibles (AWS, Azure, GCP,...)
Principales commandes¶
Commande | Description |
---|---|
terraform init | Préparation du répertoire de travail (téléchargement des modules & co) |
terraform validate | Contrôle du fichier de configuration |
terraform plan | Visualisation des changements à appliquer sur l'infrastructure |
terraform apply | Création ou modification de l'infrastructure |
terraform destroy | Destruction de l'infrastructure |
Fournisseurs disponibles¶
La page registry.terraform.io - providers mets en avant les principaux fournisseurs de cloud public :
Nous trouvons aussi les clouders européens :
- OVHcloud
- Scaleway pour https://www.scaleway.com.
- Hetzner Cloud Provider pour https://www.hetzner.com/cloud
Ainsi que des environnements d'exécution suivants :
Alternatives¶
- Vagrant pour les environnements de développement.
- OpenTofu qui est un fork de Terraform suite à un changement de licence.