Terraform Best Practices
Terraform consultingTwitter @antonbabenkoTerraform Weekly
Polski (Polish)
Polski (Polish)
  • Cześć!
  • Kluczowe koncepty
  • Struktura kodu
  • Przykłady kodu
    • Terragrunt
    • Terraform
      • Mała infrastruktura z Terraform
      • Infrastruktura średniej wielkości Terraform
      • Infrastruktura wielkogabarytowa z Terraform
  • Konwencje nazewnictwa
  • Stylizacja kodu
  • FAQ
  • Źródła i dalsze materiały
  • Pisanie konfiguracji Terraform
  • Warsztaty
Powered by GitBook
On this page
Export as PDF
  1. Przykłady kodu
  2. Terraform

Infrastruktura wielkogabarytowa z Terraform

PreviousInfrastruktura średniej wielkości TerraformNextKonwencje nazewnictwa

Last updated 3 years ago

Źródło:

Ten przykład zawiera kod dla strukturyzacji konfiguracji Terraform dla dużego rozmiaru infrastruktury, która zawiera:

  • 2 konta AWS

  • 2 regiony

  • 2 oddzielne środowiska (prod i stage, które nic ze sobą nie dzielą). Każde środowisko funkcjonuje na osobnym koncie AWS

  • Każde środowisko korzysta z innej wersji gotowego modułu infrastruktury (alb) pochodzącego z

  • Każde środowisko używa tej samej wersji modułów/sieci (modules/network) modułu wewnętrznego, ponieważ pochodzi z katalogu lokalnego.

W dużych projektach, takich jak przedstawiono tutaj, korzyści z użycia Terragrunt stają się bardzo widoczne. Spójrz na .

  • Idealny dla projektów, w których infrastruktura jest logicznie odseparowana (osobne konta AWS)

  • Dobre, gdy nie ma potrzeby modyfikowania zasobów współdzielonych między kontami AWS (jedno środowisko = jedno konto AWS = jeden plik stanu)

  • Dobre, gdy nie ma potrzeby organizowania zmian między środowiskami

  • Dobre, gdy zasoby infrastruktury są celowo różne w zależności od środowiska i nie można ich uogólniać (np. niektóre zasoby są nieobecne w jednym środowisku lub w niektórych regionach)

W miarę rozwoju projektu coraz trudniej będzie zapewnić wzajemną aktualność tych środowisk. Rozważ użycie modułów infrastruktury (gotowych lub wewnętrznych) do powtarzalnych zadań.

https://github.com/antonbabenko/terraform-best-practices/tree/master/examples/large-terraform
Terraform Registry
przykłady kody Terragrunt