amazon-web-services - precio - elasticbeanstalk amazon
La implementación de Elastic Beanstalk lleva más tiempo que el tiempo de espera, ¿cómo puedo aumentar el tiempo de espera? (4)
De acuerdo con la documentación oficial , puede pasar la opción - --timeout
a su llamada eb create
.
--timeout minutes
Set number of minutes before the command times out.
El despliegue de Elastic Beanstalk de un nuevo entorno para una aplicación que utiliza el sitio web de AWS advierte
Create environment operation is complete, but with command timeouts. Try increasing the timeout period
y aunque finalmente muestra el entorno como verde, intentar conectarse a la url solo da
Service Temporarily Unavailable
The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.
Una versión anterior de la aplicación funciona bien, pero en las extensiones adicionales tiene que copiar un archivo grande desde s3 y luego descomprimirlo, esto toma bastante tiempo. La versión anterior de la aplicación solo tiene que copiar un archivo de 3 GB, pero la nueva versión tiene que copiar un archivo de 6 GB y, como no puedo ver otros errores, supongo que esto ha provocado el tiempo de espera y ha impedido que se inicie Tomcat.
Pero, ¿cómo puedo aumentar el tiempo de espera, no puedo ver dónde se supone que debo hacerlo?
Lo he estado haciendo en el momento de la implementación para mi entorno y también funciona bien de esta manera.
eb deploy production-env --timeout 30
..y eso me da 30 minutos.
Puede hacerlo utilizando la configuración de opciones. La configuración de opciones se puede especificar utilizando ebextensions.
Cree un archivo en el origen de su aplicación en un directorio llamado .ebextensions
. Digamos que el archivo es .ebextensions/01-increase-timeout.config
.
El contenido del archivo debe ser:
option_settings:
- namespace: aws:elasticbeanstalk:command
option_name: Timeout
value: 1000
Tenga en cuenta que este archivo está en formato YAML. Después de esto, puede actualizar su entorno con esta versión del código fuente.
De la documentación para esta opción de configuración:
Tiempo de espera: número de segundos para esperar a que una instancia complete los comandos de ejecución.
Por ejemplo, si las tareas de implementación del código fuente aún se están ejecutando cuando alcanza el período de tiempo de espera configurado, AWS Elastic Beanstalk muestra el siguiente error: "Algunas instancias no respondieron a los comandos. No se recibieron respuestas". Puede aumentar la cantidad de tiempo que el servicio AWS Elastic Beanstalk espera a que su código fuente se despliegue con éxito en la instancia.
Puedes leer más sobre ebextensions here . La documentación sobre la configuración de opciones está disponible here .
Uso: --timeout
Por ejemplo: eb create -db --timeout 20
Esto le dará 20 minutos de límite de tiempo de espera.