Sobes.tech
Junior

Mis on konto Terraformis ja kui sageli te seda kasutate?

sobes.tech AI

Vastus AI-lt

Terraformi konto (tavaliselt nimetatakse seda "backend configuration") määrab, kus salvestatakse seisundi fail (terraform.tfstate). See fail on väga oluline, kuna sisaldab teavet juurutatud infrastruktuuri praeguse seisundi kohta:

Kasutamise sagedus:

  • Alati meeskonnatöö või pilvekeskkonnas juurutamisel. Kohalik seisundi salvestamine (local backend) kasutatakse ainult katsetamiseks või kõige lihtsamate kohalike projektide jaoks:
  • Iga infrastruktuuri juurutus Terraformiga nõuab backendi konfiguratsiooni seisundi salvestamiseks:

Peamised backend-tüübid, mida ma kasutan:

  • S3 (AWS): Kõige levinum AWS jaoks:
    terraform {
      backend "s3" {
        bucket         = "my-terraform-state-bucket"
        key            = "path/to/my/state.tfstate"
        region         = "us-east-1"
        # Täiendavad valikud, näiteks krüpteerimine või lukustamine
        encrypt        = true
        dynamodb_table = "my-state-lock-table" # Ajahetkelise juurdepääsu vältimiseks
      }
    }
    
  • azurerm (Azure Storage Account): Azure jaoks:
    terraform {
      backend "azurerm" {
        resource_group_name  = "my-terraform-rg"
        storage_account_name = "mystorageaccount"
        container_name       = "tfstate"
        key                  = "path/to/my/state.tfstate"
      }
    }
    
  • gcs (Google Cloud Storage): GCP jaoks:
    terraform {
      backend "gcs" {
        bucket = "my-terraform-state-bucket"
        prefix = "path/to/state" # Fail tuleb olema my-terraform-state-bucket/path/to/state/terraform.tfstate
      }
    }
    

Backend valik sõltub pilveteenuse pakkujast ning koostöö, seisundi lukustamise ja turvalisuse nõuetest. Terraformi konto (backend) eesmärk on tagada usaldusväärne, tsentraliseeritud seisundi salvestamine, mis on kättesaadav kõigile meeskonnaliikmetele ja kaitstud samaaegsete muudatuste eest.