46 lines
1.5 KiB
Markdown
46 lines
1.5 KiB
Markdown
# 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
|
|
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
|