
Quería destruir el DEV
entorno de mi Kubernetes alojado en AWS EKS. Los recursos tienen dos partes; la parte de infraestructura y la parte de aplicación. Utilizo Terraform
/ Terragrunt
para implementar/destruir la infraestructura y helm
para implementar/destruir las aplicaciones. Hay varios pods ejecutándose y podría destruir los lanzamientos ejecutando helm uninstall <release-name>
. Sin embargo, cuando llegó el momento de destruir la infraestructura, cometí un error. Aquí esta lo que hice:
Para destruir la infraestructura, ejecuté: ENV=DEV make destroy
. A este comando, le devuelve esto:
cd infra/DEV && terragrunt destroy
Remote state S3 bucket aib-iac-tf-state does not exist or you don't have permissions to access it. Would you like Terragrunt to create it? (y/n)
Para esto, probé con ambos y
y n
me devuelve este error:
make: *** [Makefile:30: destroy] Error 1
Suponiendo que el usuario root modificó mi acceso para crear/eliminar recursos internos S3 Bucket
, descubrí que no era así. Existe S3 Bucket
aib-iac-tf-state
en el almacenamiento.
Luego fui a revisar el interior *Makefile*
, línea 30 según el error. Esto es lo que hay en las líneas 29 y 30:
destroy:
cd ${INFRA_DIR}/${ENV} && terragrunt destroy ${TF_VARS}
Todavía no puedo destruir los recursos. Cualquier ayuda sería apreciada.
Respuesta1
El error de Terraform le indica que su depósito de estado remoto no existe y, por lo tanto, no puede leer el estado remoto para comprender qué destruir. Esto suena como una mala configuración en el contenedor que estás usando a través de Make.
Si puedes, revisa los .tf
archivos de un bloque como este:
terraform {
backend "s3" {
bucket = "mybucket"
key = "path/to/my/key"
region = "us-east-1"
}
}
Y asegúrese de que el depósito tenga el nombre correcto. Es posible que deba comparar con su cuenta de AWS para encontrar un depósito que contenga los datos correctos.
Si no puede encontrar nada como eso, busque un .tfstate
archivo en su espacio de trabajo local y luego elimine el backend
bloqueo para que utilice su archivo de estado local y no un backend remoto.YMMV- ¡Tal vez quieras encontrar un colega con habilidades en Terraform y pedirle que le eche un vistazo!
TL;DR: me suena un poco como un error en el contenedor, o algo se ha eliminado fuera de servicio.