Sobes.tech
Junior

Milleks kasutatakse Terraformi?

sobes.tech AI

Vastus AI-lt

Terraform kasutatakse infrastruktuuri kui koodi (Infrastructure as Code, IaC) haldamiseks. See võimaldab kirjeldada ja juurutada infrastruktuuri ressursid (virtuaalmasinad, võrgud, andmebaasid, koormuse jaoturid jne) deklaratiivsel viisil, sõltumata pilveteenuse pakkujast või kohalikest lahendustest:

Peamised eesmärgid:

  • Automatiseerimine: Juurutamise ja haldamise protsesside kiirendamine, eemaldades käsitsi toimingud:
  • Deklaratiivne juhtimine: Kirjeldada soovitud infrastruktuuri olekut, mitte tegevuste järjestust selle saavutamiseks. Terraform määrab ise vajalikud sammud, liikudes olemasolevast olekust soovitu juurde:
  • Reprodutseeritavus: Võimalus täpselt taastada infrastruktuur erinevates keskkondades (arendus, testimine, tootmine) konfiguratsioonifailide alusel:
  • Mastaapsus: Ressursside lihtne lisamine või eemaldamine konfiguratsioonifailide muutmise teel:
  • Versioonihaldus: Infrastruktuuri konfiguratsioonid võivad olla salvestatud versioonihaldussüsteemides (nt Git), tagades muudatuste ajaloo, tagasipöördumise ja koostöövõimalused:
  • Pakkujate abstraktsioon: Toetab paljusid pakkujaid (AWS, Azure, Google Cloud, VMware, Kubernetes, Docker ja teised) pistikprogrammide süsteemi kaudu. Sama HCL (HashiCorp Configuration Language) süntaks kasutatakse erinevate pakkujatega töötamiseks:
  • Muutuste planeerimine: Enne muudatuste rakendamist võimaldab Terraform vaadata täitmise plaani (terraform plan), kus on näidatud, millised ressursid luuakse, muudetakse või kustutatakse, vähendades vigade riski:
  • Koostöövõimalused: Kasutades kaugolekut (remote state), saavad mitu meeskonda või arendajat turvaliselt töötada ühise infrastruktuuriprojekti kallal:

Seega võimaldab Terraform tõhusalt ja usaldusväärselt luua, muuta ja hallata infrastruktuuri, muutes selle osaks tarkvaraarendus- ja tarnimisprotsessist.