Blog članak

OpenTofu protiv Terraforma u 2026.: Grananje je sazrelo

Tri godine nakon grananja, OpenTofu i Terraform postali su bitno različiti proizvodi. Praktična usporedba značajki, licenciranja, migracije i strateškog položaja u 2026.

OpenTofu protiv Terraforma u 2026.: Grananje je sazrelo

Prije tri godine HashiCorp je promijenio licencu Terraforma s MPL 2.0 na BSL 1.1, a zajednica otvorenog koda odgovorila je fork-om pod nazivom OpenTofu. Ono što je počelo kao prosvjedni potez preraslo je u jedno od najznačajnijih grananja u povijesti alata za infrastrukturu. OpenTofu danas djeluje pod okriljem Linux Foundationa, premašio je deset milijuna preuzimanja na GitHubu i nudi značajke koje Terraform još uvijek nema.

Pitanje u 2026. više nije je li fork vjerodostojan. Pitanje je koji alat odgovara vašem timu, vašim zahtjevima usklađenosti i vašoj strategiji prema dobavljačima.

Kronologija u tri datuma

Cijela se vremenska crta grananja svodi na tri trenutka:

Kolovoz 2023. — HashiCorp mijenja licencu za Terraform s MPL 2.0 na BSL 1.1, izvornodostupnu licencu koja ograničava komercijalnu upotrebu od strane konkurenata. Odgovor zajednice bio je trenutačan. Nakon trideset i tri tisuće GitHub zvjezdica i više od stotinu obećanja tvrtki, objavljen je OpenTofu manifest.

Rujan 2023. — Linux Foundation prihvaća preimenovani projekt OpenTofu pod svoje okrilje. Ono što je moglo postati fragmentiran fork s više suparničkih upravljačkih tijela postalo je jedinstven, neovisan o dobavljačima projekt koji stoji iza zaklade s dokazanom poviješću vođenja infrastrukture otvorenog koda.

Veljača 2025. — IBM zaključuje preuzimanje HashiCorpa vrijedno 6,4 milijarde dolara. Terraform, Vault i Consul sada su IBM-ovi proizvodi. Za timove kojima je BSL licenca već bila problematična, IBM-ovo preuzimanje dodalo je drugi sloj strateške neizvjesnosti.

Licenca i upravljanje: Ustavna podjela

Praktična razlika između MPL 2.0 i BSL 1.1 najviše je bitna dobavljačima i pružateljima upravljanih usluga. Za krajnjeg korisnika koji piše HCL i pokreće tofu apply ili terraform apply, licenca ne utječe izravno na svakodnevni rad. Pravi je učinak nizvodan.

OpenTofu (MPL 2.0, Linux Foundation) može se forkati, redistribuirati, ugrađivati u komercijalne proizvode i mijenjati bez ograničenja. Zato svaka veća IaC platforma — Spacelift, env0, Scalr, Harness, GitLab — danas izvorno podržava OpenTofu. Neke su ga postavile kao svoj zadani pogon.

Terraform (BSL 1.1, IBM/HashiCorp) ograničava tko smije nuditi Terraform kao uslugu. Većini internih timova licenca ne predstavlja problem, ali postaje važna kada dobavljač želi izgraditi konkurentsku upravljanu Terraform ponudu. Također je važna ako vaša organizacija ima strogu politiku protiv licenci koje OSI nije odobrio.

Razlika u upravljanju vidljiva je i u praksi. OpenTofu nove značajke isporučuje kroz RFC proces uz recenziju zajednice. Značajke Terraforma vodi IBM-ov plan razvoja. Besplatna razina HCP Terraforma ukinuta je u ožujku 2026., zamjenska je ograničena na petsto upravljanih resursa, a cijene su prema više izvora godišnje porasle za otprilike osamnaest posto.

Usporedba značajki: Gdje svaka strana prednjači

OpenTofu 1.12.2 (trenutačna stabilna verzija) i Terraform 1.15 (travanj 2026.) dijele isti HCL jezik i isti providerski protokol, ali su im skupovi značajki bitno različiti.

Značajke dostupne samo u OpenTofuu

Enkripcija stanja i plana (v1.7) najčešće je navođena prednost OpenTofua. State datoteke rutinski sadrže lozinke baza podataka, API ključeve i privatne ključeve u čistom tekstu. Enkripcija na razini backenda — S3 SSE, GCS enkripcija — štiti podatke u mirovanju na udaljenom backendu, ali ne i tijekom prijenosa ili u lokalnim kopijama. OpenTofu šifrira prije nego što datoteka uopće napusti stroj, koristeći AES-GCM s priključnim pružateljima ključeva.

terraform {
  encryption {
    key_provider "gcp_kms" "prod" {
      kms_encryption_key = "projects/acme/locations/global/keyRings/tofu/cryptoKeys/state"
      key_length         = 32
    }
    method "aes_gcm" "prod" {
      keys = key_provider.gcp_kms.prod
    }
    state { method = method.aes_gcm.prod }
    plan  { method = method.aes_gcm.prod }
  }
}

Terraform nema ekvivalent. Morate se osloniti na enkripciju na razini backenda i prihvatiti taj nedostatak.

Ephemeral vrijednosti (v1.11) drže tajne u memoriji tijekom izvođenja i nikada ih ne zapisuju u state datoteku. Za timove pod režimima usklađenosti poput SOC 2 ili PCI DSS, ova značajka sama po sebi može opravdati migraciju.

Provider for_each (v1.9) eliminira jedan od najponavljajućih obrazaca u Terraformu: pisanje istog provider bloka N puta za postavke s više regija. U Terraformu višeregijska AWS konfiguracija zahtijeva ili duplicirane blokove ili modulski omotač s aliasima. OpenTofu to sažima u jednu petlju:

variable "regions" {
  type = list(string)
  default = ["us-east-1", "eu-west-1", "ap-southeast-1"]
}

provider "aws" {
  region = each.value
  for_each = toset(var.regions)
}

resource "aws_vpc" "this" {
  provider = aws[each.key]
  cidr_block = "10.0.0.0/16"
  for_each = toset(var.regions)
  tags = { Region = each.key }
}

Podrška za OCI registre (v1.10) omogućuje timovima pohranu providera i modula u registrima spremnika, što je ključna značajka za zračno izolirana okruženja i regulirane industrije.

Izvorno S3 zaključavanje (v1.10) uklanja ovisnost o DynamoDB-u za zaključavanje stanja na AWS-u. Jedna tablica manje za upravljanje, jedna IAM politika manje koju treba ispravno postaviti.

Dinamički prevent_destroy (v1.12) čini životnu zaštitu konfigurabilnom po okruženju putem varijabli, umjesto da zahtijeva ručno uključivanje prije svakog destruktivnog applyja.

Značajke dostupne samo u Terraformu

Terraformov odgovor usmjeren je na upravljanu platformu. Stacks pruža orkestraciju više konfiguracija na višoj razini. Sentinel je vlastiti pogon za pravila kao kôd (policy-as-code). HCP Terraform timovima nudi hostirani backend s RBAC-om, izvođenjima i integriranim upravljanjem stanjem.

Terraform 1.15 (travanj 2026.) uveo je dinamičke izvore modula uz const = true na varijablama, čime je zatvorio jaz koji je OpenTofu popunio već u v1.9 — gotovo dvije godine ranije. Uz to je donio i convert(), označavanje zastarjelih varijabli, ograničenja tipova na izlazima te izvornu podršku za Windows ARM64. Riječ je o korisnim poboljšanjima korisničkog iskustva, no ona ne mijenjaju stratešku sliku.

Migracija: Stvarnost zamjene

Najčešće pitanje čitatelja i dalje glasi: koliko je zahtjevna migracija? U praksi je za većinu timova riječ o jednostavnoj zamjeni alata.

# 1. Instalirajte OpenTofu uz Terraform
curl --proto '=https' --tlsv1.2 -fsSL https://get.opentofu.org/install-opentofu.sh | sh

# 2. Napravite sigurnosnu kopiju postojećeg stanja
cp terraform.tfstate terraform.tfstate.backup

# 3. Inicijalizirajte s OpenTofuom
tofu init

# 4. Provjerite — ovo bi trebalo vratiti čist izlaz (bez promjena)
tofu plan

# 5. Prvi apply prepisuje oznaku verzije Terraforma
tofu apply

Nakon migracije ažurirajte skripte CI pipelinea da koriste tofu umjesto terraform, ili dodajte alias terraform=tofu u okruženje izvođača.

Ono što se ne migrira lako: radni tokovi HCP Terraforma, Sentinel politike i Terraform Stacks. Timovi koji su duboko investirani u HashiCorpovu upravljanu platformu suočavaju se sa stvarnim troškovima prelaska koji mogu nadmašiti brige oko licence.

Tri praktična scenarija

Scenarij A: Tim vođen usklađenošću. Vaša organizacija treba šifrirati state datoteke u mirovanju i u prijenosu te potpuno držati tajne izvan stanja. OpenTofu uvjerljivo pobjeđuje. Izvorna enkripcija i ephemeral vrijednosti ne postoje ni u jednoj verziji Terraforma niti imaju najavljeni ekvivalent na planu razvoja. Trošak migracije je nizak; vrijednost usklađenosti je visoka.

Scenarij B: Tim za višeregijsku platformu. Upravljate infrastrukturom u pet AWS regija, svaka sa svojom konfiguracijom providera. OpenTofuov provider for_each uklanja ono što bi u Terraformu inače bile stotine redaka dupliciranog koda provider blokova. Samo to smanjenje viška koda opravdava sat vremena utrošen na prelazak.

Scenarij C: Intenzivan korisnik HCP Terraforma. Vaš se tim oslanja na Sentinel politike, izvođenja unutar HCP-a i upravljani backend stanja. Troškovi migracije — prepisivanje politika, rekonfiguracija CI sustava, prekvalifikacija tima — stvarni su i mjerljivi. Terraform ostaje pragmatičan izbor osim ako vas politika licenciranja ne prisili na promjenu. Pratite rast ekosustava upravljanih platformi oko OpenTofua, ali s prelaskom nemojte žuriti.

Trendovi usvajanja i stvarnost na terenu

OpenTofuovi pokazatelji usvajanja jasni su i uz uobičajene ograde oko metodologije istraživanja. Deset milijuna preuzimanja GitHub izdanja, tristo posto godišnjeg rasta i prihvaćanje u CNCF sandbox u travnju 2025. pokazuju stvaran zamah. Trideset osam posto korisnika Terraforma izjavljuje da aktivno razmatra ili već provodi migraciju s Terraforma.

Ipak, Terraform i dalje ima otprilike 77 puta veći obujam pretraga na Google Trendsu. Jaz u prepoznatljivosti je velik. Procesi zapošljavanja, certifikacijski programi i ugovori o podršci za velika poduzeća i dalje idu u prilog etabliranom rješenju. Migracija na OpenTofu operativno je niskorizična, ali kulturno vidljiva — signalizira stratešku odluku koju dionici iznad razine inženjerskog tima mogu dovesti u pitanje.

Ekosustav dobavljača odlučno se promijenio. Spacelift, env0 i Scalr sada zadano koriste OpenTofu. GitLab ga izvorno podržava. Ako vaša CI platforma već radi na jednoj od njih, trenje pri migraciji gotovo da ne postoji.

Zaključak: Zreo izbor

U 2026. nijedna opcija nije rizičan izbor. OpenTofu je spreman za produkciju, dobro vođen i podržan rastućim ekosustavom. Terraform pod IBM-om nastavlja se razvijati, s modulima Stacks i čvršćom integracijom s HCP-om koji su važni timovima koji su već dio tog ekosustava.

Okvir za odlučivanje svodi se na tri pitanja:

  1. Zahtijeva li vaša usklađenost ili politika licenciranja otvoreni kôd odobren od strane OSI-ja? Ako da, odaberite OpenTofu.
  2. Jeste li duboko investirani u radne tokove HCP Terraforma, Sentinel ili Stacks? Ako da, trošak migracije vjerojatno ne opravdava prelazak.
  3. Podržava li vaša CI platforma već izvorno OpenTofu? Ako da, trenje pri migraciji gotovo je nikakvo, a prednosti dodatnih značajki dolaze besplatno.

Grananje je sazrelo. Donesite odluku na temelju suštine, a ne na temelju toga tko ima bolji marketing.

Povezana područja

Ova su područja rada usklađena s temom članka i daju čišći prijelaz od edukativnog sadržaja do konkretne implementacije.

Nastavite čitati

Prvo po zajedničkim kategorijama, a zatim po najjačem preklapanju u tagovima.