Översikt över Terraform på Azure – Vad är Terraform?

Hashicorp Terraform är ett IaC-verktyg med öppen källkod (Infrastruktur som kod) för att konfigurera och distribuera molninfrastruktur. Den kodifierar infrastrukturen i konfigurationsfiler som beskriver önskat tillstånd för topologin. Terraform möjliggör hantering av alla infrastrukturer – till exempel offentliga moln, privata moln och SaaS-tjänster – med hjälp av Terraform-leverantörer.

Terraform-leverantörer för Azure infrastruktur

Flera Terraform-leverantörer möjliggör hantering av Azure infrastruktur:

  • AzureRM: Hantera stabila Azure resurser och funktioner som virtuella datorer, lagringskonton och nätverksgränssnitt.
  • AzAPI: Hantera Azure resurser och funktioner med hjälp av Azure Resource Manager API:er direkt. Den här leverantören gör det möjligt att använda Azures senaste funktioner utan att leverantören behöver uppdateras. Mer information om AzAPI-providern finns i Terraform AzAPI-providern.
  • AzureAD: Hantera Microsoft Entra resurser som grupper, användare, tjänstens huvudnamn och program.
  • AzureDevops: Hantera Azure DevOps resurser som agenter, lagringsplatser, projekt, pipelines och frågor.
  • AzureStack: Hantera Azure Stack Hub resurser som virtuella datorer, DNS, virtuella nätverk och lagring.

Använda AzAPI jämfört med AzureRM

För att förstå när du ska använda AzAPI vs AzureRM läser du den gemensamma instruktionen med HashiCorp.

Fördelar med Terraform med Azure

I det här avsnittet beskrivs fördelarna med att använda Terraform för att hantera Azure infrastruktur.

Vanligt IaC-verktyg

Med Terraform Azure providers kan du hantera hela din Azure infrastruktur med samma deklarativa syntax och verktyg. Genom att använda dessa leverantörer kan du:

  1. Konfigurera grundläggande plattformsfunktioner som hanteringsgrupper, principer, användare, grupper och principer. Mer information finns i en Terraform-implementering av Cloud Adoption Framework i företagsskala.
  2. Konfigurera Azure DevOps projekt och pipelines för att automatisera regelbundna infrastruktur- och programdistributioner.
  3. Distribuera Azure resurser som krävs av dina program.

Automatisera infrastrukturhantering

Använd syntaxen för Terraform-mallbaserad konfigurationsfil för att konfigurera Azure resurser på ett repeterbart och förutsägbart sätt. Automatisering av infrastrukturhantering medför följande fördelar:

  • Minskar risken för mänskliga fel vid distribution och hantering av infrastruktur.
  • Distribuerar samma mall flera gånger för att skapa identiska utvecklings-, test- och produktionsmiljöer.
  • Minskar kostnaderna för utvecklings- och testmiljöer genom att skapa dem på begäran.

Förstå infrastrukturändringar innan du tillämpar dem

När en resurstopologi blir mer komplex kan det vara svårt att förstå innebörden och effekten av infrastrukturändringar.

Med Terraform CLI kan du verifiera och förhandsgranska infrastrukturändringar innan du tillämpar planen. Det finns flera fördelar med att förhandsgranska infrastrukturändringar på ett säkert sätt:

  • Teammedlemmar kan samarbeta mer effektivt genom att förstå föreslagna ändringar och deras inverkan.
  • Du kan fånga oavsiktliga ändringar tidigt i utvecklingsprocessen.

Nästa steg

Installera och konfigurera Terraform baserat på din miljö:

Note

Azure Storage kontokonverteringar kan introducera out-of-band-ändringar som stöds, vilket gör att Terraform planerar att ersätta ett lagringskonto. Vägledning om hur du förhindrar oväntat återskapande vid de här konverteringarna finns i Förhindra avvikelse i Terraform-tillståndet för tillståndskänsliga Azure-resurser.