繁体   English   中英

Kube.netes Horizontal and Vertical Pod autoscaling togather

[英]Kubernetes Horizontal and Vertical Pod autoscaling togather

我们正在试用 Kube.netes Autoscaling 选项。 我们已经配置了 Horizontal Pod Autoscaling,但想知道是否可以为特定应用程序实现水平和垂直自动缩放条件? 解释更多 如果我不想增加 pod 的数量,我希望能够增加 pod 的资源,如果我不想增加 pod 资源,我将能够增加 pod 的数量以进行扩展对于同一个应用程序。

如果您的 HPA 不是基于 CPU 或 Memory,您可以毫无问题地执行此操作,但是当 HPA 基于 CPU 或 Memory 时,不建议同时使用 VPA 和 HPA。

取自VPA 文档“Vertical Pod Autoscaler should not be used with the Horizontal Pod Autoscaler (HPA) on CPU or memory at this moment”

关于如何这样做有一些选择。 例如,您可以相对于 CPU/内存更改更新 HPA。

进一步的例子,有一个免费的gMaestro工具,它同时支持rightsizing和HPA,你可以尝试使用它。

是的,绝对可以同时设置水平和垂直 Pod 自动缩放选项。 您必须适当地设置资源限制。 这是一个例子:

  1. 您配置300m CPU 的 Pod 资源request800m CPU 的limit 这将配置 VPA 以允许 pod 拥有300m->800m的 CPU。
  2. 然后,如果 pod CPU 为800m ,则将 HPA 配置为横向扩展。

现在,将发生的情况是,pod 将垂直扩展,最多0.8个 vCPU 内核,一旦达到该点,水平自动扩展器将启动并生成一个新 pod,现有 pod 将被限制为 0.8vCPU .

是了解 VPA 设置并开始使用的一个很好的资源。

当然,如果您希望您的扩展由自定义指标驱动,而不是 vCPU 或 memory,您将需要集群中的自定义 HPA 或 VPA controller。

这被大量使用,是一种非常常见的设计模式:)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM