Bloggen
Terraform tekstplakat og logo
Fagartikkel

Hvorfor Terraform?

Automatisering av skyinfrastruktur gjennom deklarativ kode

Publisert

Å takle utfordringene ved utvikling og deployment i skyen kan virke komplisert. Denne korte artikkelen gir en introduksjon til Terraform, et kraftig verktøy som forenkler prosessen med å automatisere skyinfrastrukturen gjennom noe kalt "Infrastructure as Code" (IaC). Hvilke problemstillinger Terraform kan løse og hvem som bør vurdere denne type verktøy.

Problemstillingene med deployment i skyen

Når du utvikler og publiserer programvare til skyen, for eksempel AWS, GCP eller Microsoft Azure, står du overfor en overflod av muligheter. Denne friheten fører imidlertid til en rekke valg og operasjoner for å oppnå sikker og pålitelig drift. Typisk følger man en oppskrift ved å bruke et grafisk brukergrensesnitt (GUI) for å opprette brukere, tilganger, prosesser og ressurser. Dette kan fungere bra ved sjeldne anledninger, men utfordringer oppstår når virksomheten vokser.

Typiske utfordringer kan være:

  • Oversiktstap: Du kan glemme eller miste oversikt over alle stegene som kreves for at tjenestene dine skal kjøre.

  • Blokkerende avhengigheter: Opprettelsen av infrastrukturen har mange blokkerende avhengigheter, med betydelig tid mellom hvert steg som krever manuell interaksjon.

  • Kontoendringer: Ved organisatoriske endringer må du gjenta hele prosessen hvis du bytter fra én konto til en annen.

  • Mangel på oversikt: Du mangler total oversikt over alle ressursene som kjører i skyen, og skyleverandører har økonomiske insentiver til å opprettholde tjenester du kanskje har glemt eller oversett.

Denne kompleksiteten kan effektivt adresseres ved å utforske automatiseringsverktøy som Terraform for å skape en mer strømlinjeformet og oversiktlig skyinfrastruktur.

Hvorfor Terraform?

  1. Kompleksitet ved skyutvikling:
    Utviklere står overfor utfordringer med valg og operasjoner når de jobber med store skytjenesteleverandører som AWS, GCP, eller Microsoft Azure.
  2. Terraform og IaC:

    Terraform løser kompleksiteten ved å tillate automatisering av opprettelse, endring og nedleggelse av infrastruktur gjennom deklarativ kode.
  3. Fordeler for store virksomheter:

    Terraform gir betydelige fordeler som automatisering, hastighet, oversikt og mobilitet, spesielt for store organisasjoner.

Hvem bør vurdere Terraform?

Betydelige fordeler for organisasjoner som streber etter:

  1. Automatisering: Terraform muliggjør automatisering av opprettelse, endring og nedleggelse av skyressurser, noe som reduserer manuelle operasjoner og feil.

  2. Skalerbarhet: Med Terraform kan infrastrukturen enkelt skaleres opp eller ned etter behov, noe som gir fleksibilitet og kostnadseffektivitet.

  3. Konsistens: Ved å definere infrastrukturen som kode, sikrer Terraform konsistens i miljøet, eliminering av konfigurasjonsavvik og mulige feilkilder.

  4. Overvåkning og Oversikt: Terraform gir organisasjoner en helhetlig oversikt over alle skyressurser, noe som forenkler overvåkning og administrasjon.

  5. Reproduserbarhet: Infrastrukturdefinisjonene i Terraform gir en reproduserbar modell, slik at hele infrastrukturen kan gjenopprettes nøyaktig som definert.

  6. Fleksibilitet: Terraform støtter flere store Public Clouds, og gir organisasjoner valgfrihet og fleksibilitet når de arbeider med forskjellige skytjenesteleverandører.

  7. Rask Utvikling: For store virksomheter gir Terraform en effektiv måte å automatisere og strømlinjeforme utviklingsprosesser, noe som resulterer i økt hastighet og smidighet.

Samlet sett gir Terraform en robust plattform for å oppnå automatisering, konsistens og oversikt over skyinfrastrukturen, noe som er avgjørende for moderne skybasert utvikling og drift.

Eksempler på implementasjon

Ønsker du gå litt dypere og lese om noen eksempler på implementasjon kan du lese dette på fullversjonen av denne artikkelen som er skrevet av Harald Vinje. 

Tekblog.dev-Terraform og AWS

Konklusjon

Terraform kan være utfordrende å mestre, da det krever en grundig forståelse av ulike aspekter ved Public Cloud, i tillegg til spesifikk kunnskap om leverandørene man benytter seg av. Når man først mestrer det, viser Terraform seg som et svært kraftig verktøy. For store virksomheter muliggjør det automatisering og strømlinjeforming av utviklingsprosesser på en måte som gir betydelige fordeler når det gjelder hastighet, oversikt og mobilitet.

 

Jeg håper du fant innlegget nyttig! 
 

Fullversjonen av denne artikkelen er skrevet av Harald Vinje, senior utvikler i Item. 

Her finner du den:

Tekblogg.dev - Terraform og AWS

Kontakt oss for spørsmål om skytjenester

Vi har lang erfaring og mye kompetanse omkring tilrettelegging av skyløsninger og teknisk arkitektur til ulike virksomheter.

Erik Borse

Kundeansvarlig / Rådgiver
(+47) 951 78 616
erik.borse@item.no
Publisert