Wat is Terraform? Uitleg over Infrastructure as Code

Home Woordenlijst Wat is Terraform? Uitleg over Infrastructure as Code

Terraform is een Infrastructure as Code (IaC) tool van HashiCorp (sinds 2025 onderdeel van IBM). In plaats van servers, netwerken, databases en DNS-records bij elkaar te klikken in een cloudconsole, beschrijft u ze in configuratiebestanden. Terraform bepaalt vervolgens wat er moet worden aangemaakt, gewijzigd of verwijderd en voert dat voor u uit, op AWS, Azure, Google Cloud en honderden andere platforms.

Hoe werkt Terraform?

  • Configuratie in HCL: resources worden vastgelegd in HashiCorp Configuration Language, een leesbaar declaratief formaat dat net als andere code in Git staat.
  • Providers: plugins die de configuratie vertalen naar API-aanroepen voor een platform, zoals AWS, Azure, Cloudflare, GitHub of Kubernetes.
  • Plan en apply: terraform plan laat precies zien wat er verandert; terraform apply voert het uit.
  • State: Terraform houdt een state-bestand bij met de echte infrastructuur die het beheert, meestal centraal opgeslagen met locking zodat een team er veilig mee kan werken.
  • Modules: herbruikbare bouwstenen, bijvoorbeeld een standaard netwerk- of database-opzet die in elke omgeving wordt gebruikt.

Waarom Infrastructure as Code?

Met infrastructuur als code zijn omgevingen reproduceerbaar: test, acceptatie en productie worden vanuit dezelfde definities opgebouwd, en een nieuwe omgeving of een herstel na een storing kost minuten in plaats van dagen. Elke wijziging loopt via versiebeheer en review, zodat u weet wie wat heeft veranderd en waarom. En omdat de plan-stap de gevolgen vooraf toont, worden fouten opgemerkt voordat ze productie bereiken. In combinatie met CI/CD worden infrastructuurwijzigingen net zo betrouwbaar uitgerold als applicatiecode.

Terraform, OpenTofu, CloudFormation of Ansible?

OpenTofu is een open-source fork van Terraform, ontstaan nadat HashiCorp Terraform in 2023 onder de Business Source License bracht; het is grotendeels compatibel. AWS CloudFormation en Azure Bicep doen hetzelfde, maar alleen voor hun eigen cloud, terwijl Terraform over platforms heen werkt. Ansible wordt vooral gebruikt om servers en software te configureren en wordt vaak gecombineerd met Terraform, dat de infrastructuur aanmaakt.

Terraform in de praktijk

Wij gebruiken Terraform om cloudinfrastructuur voor platforms van klanten op te zetten: netwerken, servers, beheerde databases, containerplatforms zoals Kubernetes, DNS en monitoring, allemaal in code. Zie onze Terraform diensten en de case schaalbare AWS-infrastructuur.

Veelgestelde vragen over Terraform

Is Terraform gratis?

De Terraform CLI is gratis te gebruiken, ook zakelijk, onder de Business Source License, met alleen beperkingen voor het bouwen van concurrerende producten. HashiCorp verkoopt betaalde abonnementen op HCP Terraform voor teams. OpenTofu is een volledig open-source alternatief.

Is Terraform een programmeertaal?

Niet in de gebruikelijke zin. HCL is een declaratieve configuratietaal: u beschrijft de gewenste eindsituatie en Terraform bepaalt de stappen om daar te komen.

Wat is het Terraform state-bestand?

Een bestand waarin Terraform bijhoudt welke echte resources bij de configuratie horen. Het moet veilig worden opgeslagen en binnen het team gedeeld, meestal in centrale opslag met locking, omdat het gevoelige waarden kan bevatten.

Kan Terraform bestaande infrastructuur beheren?

Ja. Bestaande resources kunnen in Terraform worden geïmporteerd, zodat een handmatig opgebouwde omgeving stap voor stap onder code komt.