Files
TerraformTraining/Workshop/F. Remote state.md

1.5 KiB

Remote state

Voor nu hebben we de hele tijd gebruik gemaakt van een remote state. Maar aangezien jullie allemaal onderdeel zijn van een team wat samen werkt is het beter om een remote state te gaan gebruiken, zodat jullie collega's ook updates kunnen deployen voor de infrastructuur.

Er zijn natuurlijk meerdere backend opties die je kunt gebruiken zoals:

  • S3
  • OSS
  • GCS
  • en nog veel meer.

Maar wij gaan voor vandaag gebruik maken van azurerm.

Config

Een remote state configureren is gellukig heel simpel.

  • Ga naar je main.tf en zoek naar het terraform block.
  • verander het block naar het volgende:
terraform {
  backend "azurerm" {
    resource_group_name = "Naam van de resource group waar het storage account staat."
    storage_account_name = "Naam van het storage account"
    container_name = "naam van de container"
    key = "de naam van het bestand."
  }
}

https://developer.hashicorp.com/terraform/language/backend/azurerm

Omdat we nu al een local state hebben zullen we de configuratie moeten herinitializeren. Dit doe je door terraform init met de -reconfigure of -migrate-state" flag uit te voeren.

Check https://developer.hashicorp.com/terraform/cli/commands/init#backend-initialization voor uitleg over de verschillen.

Wij gebruiken voor nu -migrate-state.

Tips

  • Er is een storage account gedeployed in je resource group, deze heeft ook al een container die je kunt gebruiken.
  • Zorg dat de key eindigd met .tfstate