问题描述
我需要降低 Google Cloud AppEngine Flex 帐户的费用。我需要在工作时间内自动启动实例,然后在晚上停止它们。这一切每天都在发生。我找到了有关 Compute Engine 的信息,但没有找到有关 AppEngine 的信息。
解决方法
您无法将 App Engine flex 扩展到 0。您需要考虑其他可自动缩放为 0 的产品(App Engine 标准或 Cloud Run)或重新设计您的架构。
您可以想象部署在 Compute Engine 上,从而使用 Cloud Scheduler 来安排停止和启动。
如果你真的要使用App Engine Flex,那就更难了,因为,当你在默认服务上时,你不能删除所有版本,至少需要服务。这里的想法是在 App Engine 上部署 2 个服务:
- 您的 App Engine Flex 应用
- App Engine 标准(例如,没有任何内容或维护页面的虚拟)
我们的想法是将晚上 100% 的流量提升到标准版,以卸载 App Engine flex 并且在夜间无需支付任何费用。上午,将100%的流量推广到Flex版。
,App Engine 提供 capacity 以根据应用程序指标缩小和放大。
自动缩放
自动伸缩根据请求创建实例 率、响应延迟和其他应用程序指标。你可以 为这些指标中的每一个指定阈值,以及最小 编号实例以始终保持运行。
要存档,您需要configure your App.yaml并添加automatic_scaling
选项。
automatic_scaling:
min_num_instances: 1
max_num_instances: 15
cool_down_period_sec: 180
cpu_utilization:
target_utilization: 0.6
target_concurrent_requests: 100
您可以将 min_num_instances
和 max_num_instances
中的参数调整为 1(或更大)的值,以匹配您的预算和结算需求