Configuración de comprobaciones de estado de Auto Scaling - AWS Elastic Beanstalk

Configuración de comprobaciones de estado de Auto Scaling

Amazon EC2 Auto Scaling monitoriza el estado de cada instancia de Amazon Elastic Compute Cloud (Amazon EC2) que lanza. Si una instancia termina de forma inesperada, Auto Scaling lo detecta y lanza una instancia de sustitución. De forma predeterminada, el grupo de Auto Scaling creado para su entorno utiliza las comprobaciones de estado de Amazon EC2. Si una instancia de su entorno no supera una comprobación de estado de Amazon EC2, Auto Scaling la desactiva y la sustituye.

Las comprobaciones de estado de Amazon EC2 solo se aplican al estado de la instancia, no al estado de la aplicación, del servidor o de los contenedores de Docker que se ejecuten en la instancia. Si la aplicación se bloquea, pero la instancia en la que se ejecuta sigue en buen estado, puede que la instancia se expulse del balanceador de carga, pero Auto Scaling no la sustituirá automáticamente. El comportamiento predeterminado es adecuado la solución de problemas. Si Auto Scaling sustituyera la instancia en cuanto se produjera un bloqueo en la aplicación, el problema podría pasar desapercibido, incluso aunque el bloqueo se produjera nada más arrancar la instancia.

Si desea que Auto Scaling sustituya las instancias cuya aplicación ha dejado de responder, puede utilizar un archivo de configuración para configurar el grupo de Auto Scaling para que utilice las comprobaciones de estado de Elastic Load Balancing. En el siguiente ejemplo se establece el grupo que deben usar las comprobaciones de estado del balanceador de carga, además de la comprobación de estado de Amazon EC2, para determinar el estado de una instancia.

ejemplo .ebextensions/autoscaling.config

Resources: AWSEBAutoScalingGroup: Type: "AWS::AutoScaling::AutoScalingGroup" Properties: HealthCheckType: ELB HealthCheckGracePeriod: 300

Para obtener más información sobre las propiedades HealthCheckType y HealthCheckGracePeriod, consulte AWS AutoScaling AutoScalingGroup en la Guía del usuario de AWS CloudFormation y Comprobaciones de estado para instancias de Auto Scaling en la Guía del usuario de Amazon EC2 Auto Scaling.

De forma predeterminada, la comprobación de estado de Elastic Load Balancing está configurada para intentar establecer una conexión TCP con su instancia en el puerto 80. Esto confirma que el servidor web que se ejecuta en la instancia está aceptando conexiones. Sin embargo, es posible que desee personalizar la comprobación de estado del balanceador de carga para asegurarse de que la aplicación, y no solo el servidor web, se encuentra en buen estado. El valor de periodo de gracia define el número de segundos durante los que una instancia puede no superar la comprobación de estado sin que se termine y reemplace. Las instancias pueden recuperarse después de haber sido expulsadas del balanceador de carga, así que asigne a la instancia una cantidad de tiempo adecuada para su aplicación.