top of page

Restore or Download a Previous Version of Terraform State

  • victoriagimenez5
  • 19 jun
  • 2 Min. de lectura

""

Introducción

En caso de una destrucción accidental de recursos, puede ser necesario restaurar una versión anterior del estado de Terraform. Si tu bucket de backend que almacena el estado tiene el versionado habilitado, podés descargar fácilmente una versión previa del archivo de estado. Este documento parte del supuesto de que estás usando un bucket S3 con versionado activado.

Pasos para restaurar una versión anterior del estado de Terraform

Sigue los pasos a continuación para recuperar una versión anterior del estado desde un bucket con versionado:


1. Identifica la versión que querés restaurar:

Accede al historial de versiones en tu bucket backend. Ahí vas a ver todas las versiones previas del archivo de estado.

bash

aws s3api list-object-versions --bucket mi-bucket-tf-state --prefix mi-archivo.tfstate

2. Descargá la versión deseada del archivo

Podés hacerlo desde la consola de AWS o mediante CLI:

bash

aws s3api get-object --bucket mi-bucket-tf-state --key mi-archivo.tfstate --version-id ABC1234 --output mi-archivo.tfstate

3. Reemplaza el archivo de estado actual

Abre el archivo de configuración del backend (usualmente backend.tf) y reemplaza el nombre del archivo en la sección correspondiente:

terraform {
	backend "s3" {
		 bucket = "my-tf-state-bucket"
		key    = "my-state-file.tfstate"
		region = "my-region"
		# replace the state file name with the name of the downloaded file
			key    = "my-downloaded-state-file.tfstate"		}	}

4. Verificá el estado restaurado

Ejecuta terraform plan para visualizar diferencias entre el estado restaurado y el actual:

terraform plan

5. Aplicá el nuevo estado restaurado

Con terraform apply restaurás recursos destruidos aplicando el estado recuperado:

terraform apply

Conclusión

Restaurar una versión anterior del estado en Terraform puede ahorrarte el esfuerzo de reconstruir infraestructura desde cero. Gracias al versionado en buckets S3, este proceso es simple y confiable.


""




Martín Carletti


Cloud Engineer


Teracloud








Para conocer más sobre cloud computing, visitá nuestro blog. Y si necesitás un equipo certificado por AWS para escalar, migrar o gestionar tu infraestructura, escribinos acá.



 
 
bottom of page