¿Cómo puedo eliminar una pila de AWS CloudFormation que está en el estado DELETE_FAILED?

4 minutos de lectura
0

Quiero eliminar mi pila de AWS CloudFormation, pero la pila se queda en el estado DELETE_FAILED.

Breve descripción

Su pila puede estar en el estado DELETE_FAILED por las siguientes razones:

  • Un objeto u otras dependencias de un recurso de pila no pueden eliminarse. Para resolver este problema, complete los pasos de la sección Supresión de una pila con un objeto dependiente u otras dependencias que no se pueden eliminar.
  • El rol de servicio que se está utilizando no es válido o no se puede asumir. Para resolver este problema, complete los pasos de la sección Supresión de una pila con un rol no válido.
  • Un recurso personalizado no se ha estabilizado en el tiempo previsto. Para resolver este problema, complete los pasos de la sección Supresión de una pila para un recurso personalizado que no se ha estabilizado.

Solución

Supresión de una pila con un objeto dependiente u otras dependencias que no se pueden eliminar

Los problemas de dependencia suelen producirse cuando se realiza un cambio externo. Por ejemplo, su pila da error si un grupo de seguridad que forma parte de su pila está conectado a una interfaz de red elástica que no forma parte de su pila. La pila da error porque no se puede eliminar el recurso del grupo de seguridad. Para eliminar la pila, debe retener ese recurso dependiente.

Para eliminar una pila reteniendo un recurso, siga los pasos que se describen a continuación:

Consola de AWS CloudFormation

  1. Abra la consola de AWS CloudFormation.
  2. Elija la pila que está en el estado DELETE_FAILED.
  3. Seleccione Eliminar.
    Nota: Se abrirá una ventana con una lista de los recursos que no se han podido eliminar.
  4. En la ventana, seleccione todos los recursos que desee retener y, a continuación, seleccione Eliminar pila.

Interfaz de la línea de comandos de AWS

Nota: Si recibe errores al ejecutar los comandos de la AWS CLI, asegúrese de utilizar la versión más reciente de la AWS CLI.

Ejecute el siguiente comando delete-stack:

$ aws cloudformation delete-stack --stack-name my-stack --retain-resources myresource1 myresource2

Nota: Sustituya my-stack por el nombre de su pila. Sustituya myresource1 y myresource2 por los ID lógicos de los recursos que no se pudieron eliminar.

La pila de CloudFormation intentará eliminar la pila de nuevo, sin eliminar ninguno de los recursos que seleccionó para que se conservaran. El estado de la pila cambia a DELETE_COMPLETE.

Importante: Para evitar cargos innecesarios, debe eliminar manualmente los recursos que se retienen al eliminar la pila.

Supresión de una pila con un rol no válido

Si intenta eliminar una pila que se creó utilizando un rol de servicio que ahora no existe, recibirá el siguiente error: «An error occurred (ValidationError) when calling the DeleteStack operation: Role is invalid or cannot be assumed».

Para resolver el error, siga estos pasos:

  1. Abra la consola de AWS CloudFormation.
  2. Elija la pila que quiera eliminar para ver sus detalles.
  3. En la pestaña Información de la pila, anote el nombre del rol de IAM asignado a la pila.
  4. Cree un rol de AWS Identity and Access Management (IAM) utilizando el mismo nombre que el rol de IAM del paso 3.
    Importante: Cuando cree su rol de IAM, verifique que tiene los permisos adecuados para eliminar los recursos de la pila.
  5. En la consola de AWS CloudFormation, vuelva a intentar eliminar la pila.

Supresión de una pila para un recurso personalizado que no se ha estabilizado

Para eliminar una pila de un recurso personalizado que no se ha estabilizado en el tiempo previsto, consulte ¿Cómo elimino un recurso personalizado basado en Lambda que está detenido en el estado DELETE_FAILED o DELETE_IN_PROGRESS en CloudFormation y no avanza?


OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 2 años