Izvor: https://github.com/antonbabenko/terraform-best-practices/tree/master/examples/small-terraform
Ovaj primjer sadrzi kod koji je primjer organizacije Terrafrom konfiguracije za male infrastrukture bez vanjskih zavisnosti.
Idealan za pocetak i izmjene u hodu
Idealan za male resurs module
Dobar za male i linearne infrastrukturne module (npr: )
Dobar za mali broj resursa (manje od 20-30)
Jedan fajl stanja za sve resurse moze uciniti proces rada sa Terrafromom sporim ukoliko broj resursa poraste (razmislite o upotrebi argumenta -target da bi ogranicili broj resursa)
Izvor: https://github.com/antonbabenko/terraform-best-practices/tree/master/examples/medium-terraform
Ovaj primjer sadrzi kod koji je primjer organizacije Terrafrom konfiguracije za infrastrukture srednje velicine, u ovom primjeru se koriste:
2 AWS racuna
2 odvojena okruzenja (produkcijsko and testno). Svako okruzenje je smjesteno unutar posebnog AWS racuna i nemaju dodairnih tacaka.
Svako okruzenje koristi razlicitu verziju infrastrukturnog modula (alb) preuzetog sa
Svako okruzenje koristi istu verziju internog modula modules/network posto je taj modul preuzet iz lokalnog direktorija.
Idealan za projekte gdje je infrastruktura logicki razdvojena (radvojeni AWS racuni)
Dobar kada nema potrebe da mijenjate resurse koji su dijeljeni izmedju AWS racuna (jedno okruzenje = jedan AWS racun = jedan Terraform fajl stanja)
Kako projekat raste, bit ce teze odrzati ova okruzenja u azuriranom stanju. Razmislite o upotrebi infrastruktrurnih modula za zadatke koji se ponavljaju.
Dobar kada su resursi infrastrukture u razilicitim okruzenjima sa svrhom i kada se ne mogu generalizovati (npr: neki resursi se ne koriste u jednom od okruzenja ili u nekom od regiona)
Source: https://github.com/antonbabenko/terraform-best-practices/tree/master/examples/large-terraform
Ovaj primjer sadrzi kod koji je primjer organizacije Terrafrom konfiguracije za vece infrastrukture, u primjeru se koriste:
2 AWS racuna
2 regiona
2 odvojena okruzenja (produkcijsko and testno). Svako okruzenje je smjesteno unutar posebnog AWS racuna i resursi se prostiru izmedju 2 regije.
Svako okruzenje koristi razlicitu verziju infrastrukturnog modula (alb) preuzetog sa
Svako okruzenje koristi istu verziju internog modula modules/network posto je taj modul preuzet iz lokalnog direktorija.
Idealan za projekte gdje je infrastruktura logicki razdvojena (radvojeni AWS racuni)
Dobar kada nema potrebe da mijenjate resurse koji su dijeljeni izmedju AWS racuna (jedno okruzenje = jedan AWS racun = jedan Terraform fajl stanja)
Kako projekat raste, bit ce teze odrzati ova okruzenja u azuriranom stanju. Razmislite o upotrebi infrastruktrurnih modula za zadatke koji se ponavljaju.
Dobar kada su resursi infrastrukture u razilicitim okruzenjima sa svrhom i kada se ne mogu generalizovati (npr: neki resursi se ne koriste u jednom od okruzenja ili u nekom od regiona)