如果不进行滚动更新,为什么要自动调整Kubernates?

时间:2016-02-02 15:37:03

标签: kubernetes horizontal-scaling

参考这个doc我想我理解在更新期间临时水平扩展pod的价值。例如,您从1个pod转到2个pod - 更新pod 1然后删除pod 2。

如果您没有进行更新,水平缩放Kubernates是否有任何价值?不会复制pod只会降低每个pod的性能吗?

例如,在保持RAM数量固定的同时将pod数量增加一倍意味着每个pod将拥有一半的RAM。

1 个答案:

答案 0 :(得分:1)

  

......在保持RAM数量固定的同时将pod数量增加一倍......

我认为你错误地理解当你横向扩展pod时会发生什么。每个pod都分配了一定数量的内存,当您创建新的pod时,每个现有pod都会继续使用那么多内存,而新pod将获得相同数量的内存。因此,作为水平缩放窗格的整体内存使用量随着正在运行的窗格数量呈线性增长。

唯一的限制是当您达到群集中可用内存的总限制时,此时您将无法安排新的pod。此时,您需要(手动或自动)缩放群集中的节点数以添加其他资源。

  

如果您没有进行更新,是否有任何值来横向缩放Kubernates?

是。如果您正在为流量提供服务且当前pod数量无法处理负载,则添加新pod可能会有所帮助。例如,在One million requests per second demo期间,作者确定每个nginx pod可以提供的请求数,然后缩放pod数以处理预期的负载。如果这是一个网站,水平pod自动缩放器可以允许您根据当前的请求数动态扩展nginx pod的数量。