So erstellen Sie mit Terraform eine Infrastruktur in verschiedenen Umgebungen

Terraform ist ein Open-Source-IaC-Tool (Infrastruktur als Code), das einen konsistenten Workflow in der CLI für die Verwaltung von Hunderten von Cloud-Diensten bietet. Terraform konvertiert Cloud-APIs in deklarative Konfigurationsdateien.







, , , . Terraform, , .







Bild







. .









. . — . Terraform .







Terraform — IaC, , .

.









Terraform, .







— 1



terraform.tfvars. , .







. , . outputs.tf, providers.tf, variables.tf . . terraform : init, plan, apply



.







Bild

( 1)







:







  • ,
  • .


:







  • ;
  • , .


— 2



, terraform.tfvars. , .







main.tf variables.tf , terraform . , , :







// Dev Environment
terraform plan --var-file="tfvars/environment/dev.tfvars"
// QA Environment
terraform plan --var-file="tfvars/environment/qa.tfvars"
// Prod Environment
terraform plan --var-file="tfvars/environment/prod.tfvars"
      
      





Bild

( 2)







:







  • ;
  • , .


:







  • ;
  • , .




Terraform default. , , , . , , default.

terraform workspace



. . , terraform workspace new



.









— , . Terraform — root-. Root- , .tf .







, . , . , .







. , .







Bild







Terragrunt



Terragrunt — , DRY , Terraform .







.









  • Terraform — - IaC, CLI .
  • , , , .
  • Terraform.
  • — . .
  • Terraform default. , , , .
  • — , . , .
  • Terragrunt — , DRY , Terraform .


, Terraform. . .








All Articles