2

我正在处理 django 频道并在 google flex 引擎上部署它们时遇到问题,首先我收到“部署未能在分配的时间内变得健康”的错误,并通过在 app.yaml 中添加 readiness_check 来解决它,现在我得到了以下错误:

(gcloud.app.deploy) 操作 [apps/socketapp-263709/operations/65c25731-1e5a-4aa1-83e1-34955ec48c98] 超时。该操作可能仍在进行中。

应用程序.yaml

runtime: python
env: flex
runtime_config:
  python_version: 3
instance_class: F4_HIGHMEM

handlers:
# This configures Google App Engine to serve the files in the app's
# static directory.
- url: /static
  static_dir: static/
- url: /.*
  script: auto
# [END django_app]

readiness_check:
  check_interval_sec: 120
  timeout_sec: 40
  failure_threshold: 5
  success_threshold: 5
  app_start_timeout_sec: 1500

我该如何解决这个问题,有什么建议吗?

4

1 回答 1

4

以下错误是由于几个问题造成的:

1)您没有正确配置您的 app.yaml 文件。App Engine Flexible 中的资源请求不是通过 instance_class 选项,要请求资源,您必须使用资源选项,如下所示:

resources:
  cpu: 2
  memory_gb: 2.3
  disk_size_gb: 10
  volumes:
   - name: ramdisk1
     volume_type: tmpfs
     size_gb: 0.5

2)您缺少应用程序的入口点。要部署Django 频道,他们建议为 Daphne 服务器设置一个入口点。在您的 app.yaml 中添加以下代码:

entrypoint: daphne -b 0.0.0.0 -p 8080 mysite.asgi:application

3) 执行上述操作后,如果仍然出现同样的错误,可能是您的 App Engine Flexible 应用所在区域的 In-use IP 地址配额已达到上限。要检查此问题,您可以转到项目主页的“活动”选项卡。他们,您可以看到配额限制和无法创建 VM 的警告。

默认情况下,App Engine 会保留您的应用程序的早期版本,并且运行可能需要 IP 地址。您可以删除以前的版本和/或请求增加您的 IP 地址配额限制。

还要更新 gcloud 工具和 SDK,这可能会解决该问题。

要查看您正在使用的地址 ,请点击此处,您可以通过点击 Cloud Console 中的“编辑配额”按钮来增加您的配额。

于 2020-01-10T13:02:18.707 回答