【问题标题】:GCP deployment fails on "Updating service"GCP 部署在“更新服务”时失败
【发布时间】:2021-12-21 10:20:08
【问题描述】:

我在 GCP App Engine 上托管了 asp.net 核心应用程序。当我尝试部署应用程序时,它在最后一步失败:

正在更新服务 [名称](这可能需要几分钟)... ...失败

错误:(gcloud.app.deploy) 错误响应:[9] 处理任务 /app-engine-flex/flex_await_healthy/flex_await_healthy>blablabla.wm.1 时发生内部错误

异常堆栈跟踪显示后台运行的服务找不到 MySQL 表(该​​表显然存在)。

我的 app.yaml 文件:

service: XXX
runtime: custom
env: flex
automatic_scaling:
  max_concurrent_requests: 80
  min_num_instances: 1
  max_num_instances: 1
resources:
  cpu: XXX
  memory_gb: XXX
beta_settings:
  cloud_sql_instances: "XXX:XXXX:XXXX=tcp:3306"

尽管出现错误,但看起来应用程序已正确部署。这是唯一的错误,后台服务不会在以后抛出任何异常。事实上它工作正常,可以连接到数据库。

我的猜测是,当应用程序未连接数据库时,GCP 可能正在检查运行状况。所以我尝试将liveness_checkreadiness_check 添加到app.yaml 并在我的应用程序中配置专用的/healthcheck 端点,但它没有做任何更改。

任何想法如何解决它以及可能是什么原因?

【问题讨论】:

  • 当您收到此错误时,您可以查看 Cloud Console Logs Viewer(日志记录 -> 日志)中的 crash.log 以了解您的特定服务/版本,它通常会准确地告诉您发生了什么。但是我希望您尝试将实例数指定为最多两个,这可以通过 manual_scaling 或 max_num_instances 来完成,同时使用自动缩放到 2 (automatic_scaling: min_num_instances: 1 max_num_instances: 2)/(manual_scaling: instances: 2 ) 在您的 app.yaml 文件中

标签: mysql asp.net google-app-engine .net-core google-cloud-platform


【解决方案1】:

部署新版本的应用解决了这个问题

【讨论】:

  • 您可以将此答案标记为已接受。
猜你喜欢
  • 2022-09-01
  • 2019-12-24
  • 2022-12-17
  • 2021-10-05
  • 2014-01-27
  • 1970-01-01
  • 2021-09-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多