GAE 灵活环境自动扩展启动了太多实例,超出了观察到的负载

GAE 灵活环境自动扩展启动了太多实例,超出了观察到的负载

我在 GAE 灵活环境测试版中运行 Docker 容器,并配置了自动缩放功能,如下所示:

automatic_scaling:
  min_num_instances: 2
  max_num_instances: 10
  cool_down_period_sec: 60
  cpu_utilization:
    target_utilization: 0.75

控制台中相应 Compute Engine VM 实例的 CPU 利用率图表如下所示:

CPU 利用率图表

然而在过去的 30 多分钟里,GAE 一直运行着最多 10 个实例。查看我的应用程序日志,它似乎也没有特别繁忙。然而这种情况经常发生。

GAE 为何如此积极地扩展?有没有比 CPU 利用率图表更好的地方来查找它用来推动扩展决策的数据?

答案1

简短的回答是,目前灵活环境使用 Compute Engine 自动扩缩器,它具有追随行为

在 CPU 使用率较高的时期,如果利用率接近 100%,则自动扩缩器会估计该组可能已经严重过载。在这些情况下,自动扩缩器会将虚拟机数量增加至少 50% 或至少 4 个实例(以较高者为准)。通常,托管实例组中的 CPU 利用率不会超过 100%。

降低自动缩放器攻击性的一种方法是将设置target_utilization为高值。希望将来能添加更多用于调整自动缩放器的参数,这些参数更符合标准环境选项

相关内容