我正在GAE灵活环境testing版中运行一个Docker容器,并configuration如下的自动缩放比例:
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利用率图如下所示:
然而在过去的30多分钟里,GAE已经运行了最多10次。 看看我的应用程序的日志,它似乎并不忙碌。 然而这种情况经常发生。
为什么GAE如此激进? 有比CPU利用率图更好的地方来find它用来推动缩放决策的数据吗?
简短的回答是,目前灵活的环境使用计算引擎autoscaler,它具有以下行为 :
在CPU利用率较高的时段,如果利用率接近100%,则自动调节器估计该组可能已经大量过载。 在这些情况下,自动调节程序会将虚拟机的数量增加至less50%或最less4个实例,以较高者为准。 通常,被pipe实例组内的CPU利用率不会超过100%。
一种降低自动调节器攻击性的方法是将target_utilization设置为较高的值。 更多用于调整自动调节器的参数将在未来添加,这些更符合标准环境选项 。