Terraform Best Practices
Terraform consultingTwitter @antonbabenkoTerraform Weekly
ქართული (Georgian)
ქართული (Georgian)
  • მოგესალმებით!
  • ძირითადი ცნებები
  • კოდის სტრუქტურა
  • კოდის სტრუქტურის მაგალითები
    • Terragrunt
    • Terraform
      • მცირე ზომის ინფრასტრუქტურა Terraform-ით
      • საშუალო ზომის ინფრასტრუქტურა Terraform-ით
      • დიდი ზომის ინფრასტრუქტურა Terraform-ით
  • დასახელების კონვენცია
  • კოდის სტილი
  • ხშირად დასმული კითხვები
  • მითითებები
  • Terraform კონფიგურაციის წერა
  • ვორქშოპი
Powered by GitBook
On this page
Export as PDF
  1. კოდის სტრუქტურის მაგალითები
  2. Terraform

დიდი ზომის ინფრასტრუქტურა Terraform-ით

Previousსაშუალო ზომის ინფრასტრუქტურა Terraform-ითNextდასახელების კონვენცია

Last updated 2 years ago

წყარო:

ეს Terraform კოდის სტრუქტურის მაგალითი განკუთვნილია დიდი ზომის ინფრასტრუქტურისთვის რომელიც იყენებს შემდეგ კომპონენტებს:

  • 2 AWS ანგარიში

  • 2 რეგიონი

  • 2 გამოყოფილი გარემო (prod და stage რესურსების გაზიარების გარეშე). თითოეული გარემო მუშაობს გამოყოფილ AWS ანგარიშში და მოიცავს რესურსებს ორივე რეგიონში

  • თითოეული გარემო იყენებს მზა ინფრასტრუქტურის მოდულის (alb) განსხვავებულ ვერსიას რომლის კოდის წყაროც არის

  • თითოეული გარემო იყენებს თვითნაწერ მოდულს modules/network რომელიც ლოკალურად დირექტორიაში ინახება.

დიდ პროექტში, როგორიც აქ არის აღწერილი, Terragrunt-ის გამოყენების სარგებელი ძალიან თვალსაჩინო ხდება. იხილეთ .

  • იდეალურია პროექტებისთვის, სადაც ინფრასტრუქტურა ლოგიკურად არის გამოყოფილი (ცალკე AWS ანგარიშები)

  • კარგია, როდესაც არ არის საჭირო AWS ანგარიშებს შორის გაზიარებული რესურსების ცვლილება (ერთი გარემო = ერთი AWS ანგარიში = ერთი სახელმწიფო ფაილი)

  • კარგია, როდესაც არ არის საჭირო გარემოს შორის ცვლილებების ორკესტრირება

  • კარგია, როდესაც ინფრასტრუქტურის რესურსები განსხვავებულია თითო გარემოში და მიზანმიმართულად და მათი განზოგადება შეუძლებელია (მაგ., ზოგიერთი რესურსი არ არის ერთ გარემოში ან ზოგიერთ რეგიონში)

რაც უფრო იზრდება პროექტი, უფრო რთული იქნება ამ გარემოს ერთმანეთთან განახლების შენარჩუნება. განიხილეთ ინფრასტრუქტურის მოდულების გამოყენება (თაროზე მოთავსებული ან შიდა) განმეორებადი ამოცანებისთვის.

https://github.com/antonbabenko/terraform-best-practices/tree/master/examples/large-terraform
Terraform Registry
კოდის სტრუქტურის მაგალითები Terragrunt