当前位置: 首页> 娱乐> 八卦 > Kubernetes 文档 / 概念 / 工作负载 / 自动扩缩工作负载

Kubernetes 文档 / 概念 / 工作负载 / 自动扩缩工作负载

时间:2025/7/10 18:00:07来源:https://blog.csdn.net/houzhizhen/article/details/139229082 浏览次数:0次

Kubernetes 文档 / 概念 / 工作负载 / 自动扩缩工作负载

此文档从 Kubernetes 官网摘录
中文地址
英文地址
在 Kubernetes 中,你可以根据当前的资源需求扩缩工作负载。 这让你的集群可以更灵活、更高效地面对资源需求的变化。

当你扩缩工作负载时,你可以增加或减少工作负载所管理的副本数量,或者就地调整副本的可用资源。

第一种手段称为水平扩缩,第二种称为垂直扩缩。

手动扩缩工作负载

Kubernetes 支持工作负载的手动扩缩。水平扩缩可以使用 kubectl 命令行工具完成。 对于垂直扩缩,你需要更新工作负载的资源定义。

这两种策略的示例见下文。

水平扩缩:运行应用程序的多个实例

垂直扩缩:调整分配给容器的 CPU 和内存资源

自动扩缩工作负载

Kubernetes 也支持工作负载的自动扩缩,这也是本页的重点。

在 Kubernetes 中自动扩缩的概念是指自动更新管理一组 Pod 的能力(例如 Deployment)。

水平扩缩工作负载

在 Kubernetes 中,你可以使用 HorizontalPodAutoscaler (HPA) 实现工作负载的自动水平扩缩。

它以 Kubernetes API 资源和控制器的方式实现, 并定期调整工作负载中副本的数量 以满足设置的资源利用率,如 CPU 或内存利用率。

这是一个为 Deployment 部署配置 HorizontalPodAutoscaler 的示例教程。

垂直扩缩工作负载

目前,VPA 可以有四种不同的运行模式

模式描述
Auto目前是 Recreate,将来可能改为就地更新
RecreateVPA 会在创建 Pod 时分配资源请求,并且当请求的资源与新的建议值区别很大时通过驱逐 Pod 的方式来更新现存的 Pod
InitialVPA 只有在创建时分配资源请求,之后不做更改
OffVPA 不会自动更改 Pod 的资源需求,建议值仍会计算并可在 VPA 对象中查看
就地调整的要求

在不重启 Pod 或其中容器就地调整工作负载的情况下要求 Kubernetes 版本大于 1.27。 此外,特性门控 InPlaceVerticalScaling 需要开启。

InPlacePodVerticalScaling: 启用就地 Pod 垂直扩缩。

根据集群规模自动扩缩

对于需要根据集群规模实现扩缩的工作负载(例如:cluster-dns 或者其他系统组件), 你可以使用 Cluster Proportional Autoscaler。 与 VPA 一样,这个项目不是 Kubernetes 核心项目的一部分,它在 GitHub 上有自己的项目。

集群弹性伸缩器 (Cluster Proportional Autoscaler) 会观测可调度 节点 和 内核数量, 并调整目标工作负载的副本数量。

如果副本的数量需要保持一致,你可以使用 Cluster Proportional Vertical Autoscaler来根据集群规模进行垂直扩缩。 这个项目目前处于 beta 阶段,你可以在 GitHub 上找到它。

集群弹性伸缩器会扩缩工作负载的副本数量,垂直集群弹性伸缩器 (Cluster Proportional Vertical Autoscaler) 会根据节点和/或核心的数量 调整工作负载的资源请求(例如 Deployment 和 DaemonSet)。

事件驱动型自动扩缩

通过事件驱动实现工作负载的扩缩也是可行的, 例如使用 Kubernetes Event Driven Autoscaler (KEDA)。

KEDA 是 CNCF 的毕业项目,能让你根据要处理事件的数量对工作负载进行扩缩,例如队列中消息的数量。 有多种针对不同事件源的适配可供选择。

根据计划自动扩缩

扩缩工作负载的另一种策略是计划进行扩缩,例如在非高峰时段减少资源消耗。

与事件驱动型自动扩缩相似,这种行为可以使用 KEDA 和 Cron scaler 实现。 你可以在计划扩缩器 (Cron scaler) 中定义计划来实现工作负载的横向扩缩。

扩缩集群基础设施

如果扩缩工作负载无法满足你的需求,你也可以扩缩集群基础设施本身。

扩缩集群基础设施通常是指增加或移除节点。

关键字:Kubernetes 文档 / 概念 / 工作负载 / 自动扩缩工作负载

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: