Administración de interrupciones de instancias de spot
La mejor manera de gestionar correctamente las interrupciones de instancias de spot y minimizar el impacto en el rendimiento o la disponibilidad es diseñar su aplicación para que sea tolerante a fallos. Para lograrlo, puede aprovechar las recomendaciones de reequilibrio de instancia de EC2 y los avisos de interrupción de instancia de spot.
Una recomendación de reequilibrio de instancia de EC2 es una señal que le notifica en caso de que una instancia de spot tenga un riesgo de interrupción elevado. La señal brinda la oportunidad de administrar de forma proactiva la instancia de spot antes del aviso de interrupción de dos minutos de la instancia de spot. Puede decidir reequilibrar su carga de trabajo con instancias de spot nuevas o existentes que no tengan un riesgo elevado de interrupción. Hemos facilitado el uso de esta señal proporcionando la característica de reequilibrio de capacidad en los grupos de EC2 Auto Scaling. Para obtener más información, consulte Reequilibrio de la capacidad de Amazon EC2 Auto Scaling.
Un aviso de interrupción de instancia de spot es una advertencia que se emite dos minutos antes de que Amazon EC2 interrumpa una instancia de spot. Si su carga de trabajo es “flexible en cuanto al tiempo”, puede configurar sus instancias de spot para que se detengan o hibernen, en lugar de terminarlas, cuando se interrumpan. Amazon EC2 detiene o hiberna automáticamente las instancias de spot en caso de interrupción y las reanuda automáticamente cuando se tiene capacidad disponible.
Puede utilizar la recomendación de reequilibrio de instancias de EC2 o el aviso de interrupción de instancias de spot para diseñar su carga de trabajo teniendo en cuenta la tolerancia a errores, de modo que pueda capturar notificaciones y guardar el estado de un trabajo en el almacenamiento (por ejemplo, Amazon S3, Amazon EFS o Amazon FSx), conservar los archivos de registro de la instancia (o transmitirlos continuamente para un enfoque más tolerante a fallos), drenar las conexiones de un equilibrador de carga, etc.
Algunos servicios de AWS y de terceros ya gestionan las interrupciones de spot para que disminuya el impacto en su aplicación. Por ejemplo, Amazon EKS que ejecuta grupos de nodos administrados con instancias de spot lanza automáticamente nodos de Kubernetes de sustitución cuando se entregan recomendaciones de reequilibrio o avisos de interrupción para un nodo existente.