App Engine Flex no pudo configurar los recursos

App Engine Flex no pudo configurar los recursos

Durante los últimos 2 días nos encontramos con un problema de implementación. La aplicación se implementó perfectamente antes. No hemos introducido ningún cambio en app.yaml.

Haciendo cosas habituales comogcloud app deploy app.yaml

service: subscriber
runtime: nodejs
env: flex

env_variables:
  SCRIPT: subscriber.js
  LOG_LEVEL: info

health_check:
  enable_health_check: false

resources:
  memory_gb: 4

automatic_scaling:
  min_num_instances: 1
  max_num_instances: 40
  cpu_utilization:
    target_utilization: 0.75

La compilación continúa como de costumbre pero al final falla con el error:

34b3438ad618: Layer already exists
de5e96f3b52d: Layer already exists
21df82f90a72: Layer already exists
0529bceacd9f: Layer already exists
3578a2f7453e: Pushed
94aa0c608f65: Pushed
latest: digest: sha256:3addb3a35b43dc5c45ebc86ad10c7f8c7b4408c781095fd819bd94ac8d7b497b size: 2417
DONE
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Updating service [subscriber] (this may take several minutes)...failed.                                                                                                                                                        
ERROR: (gcloud.app.deploy) Error Response: [13] App Engine Flex failed to configure resources.

Versión de Gcloud:

gcloud version
Google Cloud SDK 189.0.0
alpha 2017.09.15
beta 2017.09.15
bq 2.0.29
core 2018.02.12
gcloud 
gsutil 4.28
kubectl 

Respuesta1

Es posible que esto se haya correlacionado con una versión reciente relacionada con el enable_health_check: falseparámetro para aplicaciones donde split_health_checksestán habilitados.

¿Podría intentar implementar enable_health_check: trueo ejecutar eldominio:

gcloud app update --no-split-health-checks?

Respuesta2

De acuerdo con ladocumentos:

... Controles de salud actualizadosson más detallados y le permiten utilizar comprobaciones independientes para confirmar que su instancia de App Engine se está ejecutando (en vivo) y lista para servir contenido (lista). Estos controles de salud son habilitado por defecto.

Básicamente significa que no es necesario incluirlo enable_health_check: False. Simplemente omita estas dos líneas si no desea utilizar comprobaciones de estado heredadas.

Por otro lado, si quieres utilizarcontroles de salud heredados, ejecuta el comando:

gcloud app update --no-split-health-checks

y agregue una sección de verificación de estado a su archivo de configuración:

health_check:
  enable_health_check: True

  check_interval_sec: 5

  timeout_sec: 4
  unhealthy_threshold: 2
  healthy_threshold: 2

información relacionada