Introduksjon til Terraform

Introduksjon til Terraform

I tidligere tider var prosessen med å levere IT -infrastruktur en manuell og veldig utmattende en. Administratorer/serverledere må sette opp serverne fysisk. Også denne tilnærmingen var kostbar og utsatt for mange feil, spesielt menneskeskapte feil. I tillegg var det mangel på smidighet. Med den utviklende størrelsen på IT -infrastrukturen føltes det å utvikle en ny tilnærming for å håndtere denne tilstanden. Dette fødte den såkalte infrastrukturen som kode (IAC) teknikk.

Infrastruktur som kode (IAC) er en teknikk der komponentene i et nettverk, som Compute -forekomster, nettverk, VM -er osv., administreres automatisk i stedet for å gjøre den samme prosessen manuelt. Terraform er ett produkt av IAC-baserte teknikker. Hovedmålet med Terraform er å orkestrere distribusjonen av ressurser eller tjenester på forskjellige infrastrukturplattformer. Disse plattformene kan være skybaserte tjenesteleverandører, virtuelle maskiner osv.

Hva vi vil utforske her

Etter en liten introduksjon til IAC og Terraform, vil vi fortsette med installasjonen av terraform og hvordan det fungerer. La oss fortsette med installasjonen av Terraform på Ubuntu 20.04.

Hvordan du installerer terraform

En offisiell terraformpakke for Ubuntu/Debian, Centos/RHEL, Fedora og Amazon Linux er distribuert av pakkelederne for disse distribusjonene. Precompiled Binaries er også tilgjengelig for nedlasting fra Terraform -nettstedet. Lagre denne binære filen på systemet ditt, trekke den ut og kjør den. Forsikre deg om at banen er riktig innstilt. Alternativt kan vi kompilere den ved hjelp av kildekoden.

Trinn 1. Begynn med å installere GNUPG, Software-Properties-Common og Curl Packages. Dette trinnet er for å validere GPG -signaturen levert av Hashicorp. For å utføre denne oppgaven, åpne en terminal (samtidig klikk på tastene Ctrl+Alt+T) og kjør følgende kommando:

$ sudo apt-get update && sudo apt-get install -y gnupg programvare-Properties-vanlig krøll

Steg 2. For å legge til Hashicorp GPG -tasten, kjør følgende kommando:

$ curl -fssl https: // apt.utgivelser.Hashicorp.com/gpg | sudo apt-key add -

Trinn 3. Nå, fortsett med å legge til depot ved å utføre følgende kommando:

$ sudo apt-add-repository "Deb [arch = amd64] https: // appt.utgivelser.Hashicorp.com $ (lsb_release -cs) hoved "

Trinn 4. Etter å ha lagt til depotet, er vi alle klare til å legge til depotet for å installere Terraform. Bruk følgende kommando:

$ sudo apt-get update && sudo apt-get installer terraform

Trinn 5. Til slutt må du bekrefte om Terraform er installert på systemet ditt ved å bruke følgende kommando:

$ Terraform -version

Arbeid av terraform

Terraform bruker sine API-er for å gi og administrere ressurser på forskjellige skybaserte plattformer og tjenester. Terraform har utviklet leverandører for å jobbe med hvilken som helst plattform eller tjeneste ved hjelp av en API. Det er 1700+ leverandører for å administrere mange ressurser og tjenester. Terraform -registeret inneholder leverandører som er offentlig tilgjengelige. For eksempel har den Amazon AWS, Microsoft Azure, Google, GCP, etc.

Det er hovedsakelig tre trinn i en terraform arbeidsflyt:

  1. Skrive: I dette stadiet er ressursene definert for en bestemt sak. For eksempel kan man være interessert i å distribuere en webserver med en tilpasset VPC og konfigurere den med en lastbalanse- og sikkerhetsgrupper.
  1. Plan: Dette stadiet utvikler en utførelsesplan som beskriver hvilke endringer som vil bli gjort i infrastrukturen. For eksempel viser den hvilke ressurser som vil bli lagt til, oppdatert eller ødelagt.
  1. Søke om: Dette er den siste fasen der planlagte operasjoner endelig blir brukt etter bekreftelsen. Disse brukes i en bestemt rekkefølge.

Terraform bruker konfigurasjonsfiler for å definere hvordan en infrastruktur skal se ut. Det er viktigst nyttig for å tilby en infrastruktur som vokser med tiden. For eksempel legger vi til en VM inne i en VPC til en infrastruktur. Deretter, en annen dag, legger vi til flere VM -er, en belastningsbalanse osv. Dette øker den generelle kompleksiteten i infrastrukturen.

La oss se hvordan Terraform Workflow håndterer denne kompleksiteten:

  1. Først må vi lage en terraform -fil og erklære de viktigste ressursene og andre nødvendige ting her. Lagre filen med en .TF -forlengelse.
  1. Deretter kjører vi en Terraform Command “Terraform Plan”, som sammenligner den faktiske tilstanden med ønsket tilstand.
  1. Til slutt, når alt ser perfekt ut, bruker vi planen ovenfor og spinner opp ressursene vi definerte tidligere i Terraform -filen.

På denne måten fungerer Terraform for Day One -distribusjon, og genererer noe fra ingenting. Hvis vi ønsker å legge til nye ressurser i oppsettet, må vi erklære dem i konfigurasjonsfilen. Terraformen vil sjekke den opprinnelige tilstanden med ønsket tilstand og opprette ønsket tilstand. Terraform gjør bare de endringene som er nødvendige for å nå ønsket tilstand.

Får hjelp

For å liste opp alle kommandoene som er tilgjengelige med Terraformen, bruk følgende “Hjelp” -kommando:

$ terraform -hjelp

For å utforske en bestemt kommando, for eksempel "plan", bruk følgende kommando:

$ Terraform -hjelpplan

Konklusjon

I dette innlegget har vi sett et høyt nivå av terraform. Terraform er et veldig interessant tema å lære og forenkle infrastrukturkompleksitet. Sjekk Linuxhint -artikler for mer interessante opplæringsprogrammer.