【问题标题】:app.yaml values are not reflected in Google Cloud Consoleapp.yaml 值未反映在 Google Cloud Console 中
【发布时间】:2018-01-29 20:50:35
【问题描述】:

我正在使用 app.yaml 文件来灵活配置我的应用引擎。该文件如下所示,

runtime: java
env: flex
service: hello-service
health_check:
  enable_health_check: True
  check_interval_sec: 10
  timeout_sec: 4
  unhealthy_threshold: 2
  healthy_threshold: 2
automatic_scaling:
  min_num_instances: 3
  max_num_instances: 10
  cool_down_period_sec: 120 # default value
  cpu_utilization:
    target_utilization: 0.5

但是,当我点击云控制台中版本列表的“查看”链接时,我只能在弹出窗口中看到以下内容,

runtime: java
env: flexible
threadsafe: true
automatic_scaling:
  min_num_instances: 3
  max_num_instances: 10
health_check:
  enable_health_check: true
  check_interval_sec: 10
  timeout_sec: 4
  unhealthy_threshold: 2
  healthy_threshold: 2

如您所见,它缺少一些“自动缩放”属性。我不确定为什么。我是否需要停止并启动相关版本才能看到更改?

【问题讨论】:

    标签: google-app-engine configuration


    【解决方案1】:

    很可能是没有显示匹配默认值的配置值。

    来自documentation 缺失参数的默认值:

    cool_down_period_sec

    自动缩放器在它之前应该等待的秒数 开始从新实例收集信息。这可以防止 自动缩放器在实例运行时收集信息 初始化,在此期间收集的使用情况将不可靠。 冷却时间必须大于或等于 60 秒。 默认为 120 秒

    target_utilization

    目标 CPU 利用率(默认 0.5)。 CPU 使用率是平均的 所有正在运行的实例,用于决定何时减少或增加 实例数。

    cpu_utilization 可能不会显示,因为 target_utilization(它下面的唯一项目)消失了。

    应该很容易检查 - 只需稍微更改缺失配置的值,重新部署并查看更新的值是否被记住。

    【讨论】:

    • 感谢@Dan Cornilescu。但是,当我更改值并重新部署时,会反映一些值,但其他值仅在停止并启动应用程序引擎后才会反映。每次应用程序时我都需要停止和启动应用程序引擎吗?部署了吗?
    • 不适用于指示基础架构的缩放参数,而不是特定实例(实例可能有较旧的代码副本,但那又如何?)。同样的可能适用于健康检查,但我不太确定。
    • 应用引擎似乎没有考虑“check_interval_sec: 10”,因为即使在此设置之后,每秒都会发出健康检查请求。不知道我在这里缺少什么。
    • 我已更改默认值并已部署,但仍无法在“查看”链接中看到应用版本中的值。我什至尝试过停止和启动应用程序引擎,但仍然没有运气。此外,似乎根本没有考虑“enable_health_check”,并且仍然不断收到健康检查请求。有没有我们可以检查此配置的地方。在物理实例中?另外,我们是否可以检查实例中的 java 应用程序的日志以查看根本原因?
    猜你喜欢
    • 1970-01-01
    • 2022-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-10
    • 1970-01-01
    • 2015-01-28
    相关资源
    最近更新 更多