我们有一个大多数时间都处于闲置状态的服务,因此,如果在该服务在30分钟内未收到任何请求时删除所有Pod,并在下次出现请求时删除所有Pod,这对我们来说将非常好新的请求来自Kubernetes,它将创建第一个pod并处理响应。
是否可以将最小Pod实例计数设置为0?
我发现当前Kubernetes不支持此功能,有没有办法实现这一目标?
答案 0 :(得分:2)
Kubernetes不支持Web服务器(如nginx,apache或puma,passenger,gunicorn,unicorn甚至{ {3}}可以软启动它们,然后在第一个请求出现时立即提出,这是因为您的第一个请求将总是较慢。 (Kubernetes Pod背后可能没有一定的行为依据,我可以看到很多设计更改或必须针对这种非常特殊的情况创建一种新型的工作负载)
如果吊舱闲置,则不会消耗那么多资源。您可以为请求/限制调整pod Google App Engine Standard的值,以便请求少量的CPU /内存,并将限制设置为较高的CPU /内存。从理论上讲,使Pod始终运行的好处是,您的第一个请求将永远不必等待很长时间即可获得响应。
答案 1 :(得分:0)
是的。您可以使用Horizontal Pod Autoscale来实现。
请参见水平Pod自动缩放示例:Horizontal Pod Autoscaler Walkthrough