【问题标题】:Kubernetes Horizontal and Vertical Pod autoscaling togatherKubernetes 水平和垂直 Pod 自动缩放在一起
【发布时间】:2022-10-04 16:38:36
【问题描述】:

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

【问题讨论】:

    标签: kubernetes containers autoscaling


    【解决方案1】:

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

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

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

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

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

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

    【讨论】:

      【解决方案2】:

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

      取自VPA documentation“目前,垂直 Pod Autoscaler 不应与 CPU 或内存上的 Horizo​​ntal Pod Autoscaler (HPA) 一起使用”

      有一些关于如何执行此操作的选项。例如,您可以相对于 CPU/内存更改更新 HPA。

      更多示例,有一个名为gMaestro 的免费工具,它支持大小调整和HPA,您可以尝试使用它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-04-11
        • 2023-04-01
        • 2021-11-06
        • 1970-01-01
        • 2021-03-04
        相关资源
        最近更新 更多