Terraform
DevOpsTerraform este un instrument open-source de Infrastructure as Code (IaC) dezvoltat de HashiCorp. Permite definirea și provizionarea infrastructurii cloud prin fișiere de configurare declarative, folosind limbajul HCL. Terraform suportă zeci de furnizori cloud și servicii, permițând gestionarea întregii infrastructuri dintr-un singur loc, cu versionare și reproductibilitate completă.
Terraform este unul dintre cele mai populare instrumente pentru Infrastructure as Code, permițând echipelor să definească, să provizioneze și să gestioneze infrastructura IT folosind fișiere de configurare în loc de procese manuale. Dezvoltat de HashiCorp, Terraform folosește limbajul propriu HCL (HashiCorp Configuration Language).
Modul de funcționare al Terraform se bazează pe un ciclu simplu: write (scriere configurare), plan (previzualizare modificări) și apply (aplicare modificări). Comanda "terraform plan" arată exact ce resurse vor fi create, modificate sau șterse, oferind transparență completă înainte de orice schimbare.
Terraform folosește conceptul de "provider" pentru a interacționa cu diverse platforme: AWS, Google Cloud, Azure, DigitalOcean, Cloudflare și multe altele. Fiecare provider expune resurse specifice care pot fi gestionate declarativ. De exemplu, poți defini servere, rețele, baze de date, certificare SSL și reguli DNS, totul în cod.
Starea infrastructurii este stocată într-un fișier de stare (state file) care servește ca sursă de adevăr. Terraform compară starea dorită (din configurare) cu starea curentă (din state file) pentru a determina modificările necesare. Starea poate fi stocată remote pentru colaborarea în echipă.
Pentru companiile de hosting, Terraform este invaluabil pentru gestionarea infrastructurii la scară. Permite crearea rapidă de medii identice, replicarea configurațiilor între regiuni geografice și asigurarea conformității prin politici ca și cod. Combinat cu Git, oferă un istoric complet al tuturor modificărilor de infrastructură.