首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Kubernetes HPA缩容时杀随机pod |总之避免杀随机pod而选择利用率低的pod

Kubernetes HPA(Horizontal Pod Autoscaler)是Kubernetes中的一个自动扩缩容机制,用于根据应用程序的负载情况自动调整Pod的数量。当负载下降时,HPA会自动缩容Pod的数量,以节省资源并提高效率。

在缩容时,HPA会选择利用率低的Pod进行缩容,而不是随机选择Pod。这是因为利用率低的Pod表示其资源使用较少,可以被安全地缩减而不会对应用程序的性能产生负面影响。

缩容时杀随机Pod可能会导致一些问题,例如可能会杀掉正在处理重要任务的Pod,从而影响应用程序的可用性和性能。因此,选择利用率低的Pod进行缩容是更为合理和安全的做法。

Kubernetes提供了多种方式来实现HPA,例如使用Metrics Server来收集应用程序的指标数据,并根据指标数据进行自动扩缩容。在腾讯云的产品中,可以使用腾讯云容器服务(Tencent Kubernetes Engine,TKE)来部署和管理Kubernetes集群,并通过TKE的HPA功能来实现自动扩缩容。

腾讯云容器服务(TKE)是腾讯云提供的一种托管式Kubernetes服务,它提供了高度可扩展、高可用性的Kubernetes集群,可以帮助用户快速构建和管理容器化应用。TKE的HPA功能可以根据自定义的指标数据进行自动扩缩容,并提供了丰富的监控和告警功能,以便及时发现和解决问题。

了解更多关于腾讯云容器服务(TKE)的信息,请访问:腾讯云容器服务(TKE)产品介绍

总之,为了避免杀随机Pod而选择利用率低的Pod进行缩容是一种更为合理和安全的做法。Kubernetes HPA可以帮助自动实现这一功能,并且腾讯云容器服务(TKE)是一个可靠的选择来部署和管理Kubernetes集群,并使用HPA功能来实现自动扩缩容。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

成本最高降低70%,腾讯大规模业务集群云原生成本优化实践!

如扩容一个触发因子是 CPU 利用率,如果扩容是基于 Request 计算使用率,当使用率大于125%阈值再触发扩容。...根据自身业务需求,各机型优缺点,选择最具性价比机型。 行业现状与方案选型 从我们成本数据分析中我们得到结论核心优化大器是 VPA 和 HPA。那么业界当前有哪些VPA、HPA方案呢?...(二)HPA HPAKubernetes 项目内置水平扩开源项目,它会基于 HPA 资源中业务声明各种 Metrics 指标和扩条件,周期性计算副本数,判定是否需要扩,它架构图如下...(比如扩容稳定窗口为180秒、随机为12-24h、扩容 CPU/Memory 阈值为90、为30%、HPA最小最大副本数等)。...动态调度器可以帮助我们避免Pod 调度到较高负载节点, Descheduler 则可以协助我们将高负载节点 Workload 打散,下线负载节点上 Pod 等。

1.4K20

成本最高降低70%,腾讯大规模业务集群云原生成本优化实践!

如扩容一个触发因子是 CPU 利用率,如果扩容是基于 Request 计算使用率,当使用率大于125%阈值再触发扩容。...根据自身业务需求,各机型优缺点,选择最具性价比机型。 行业现状与方案选型 从我们成本数据分析中我们得到结论核心优化大器是 VPA 和 HPA。那么业界当前有哪些VPA、HPA方案呢?...HPA HPAKubernetes 项目内置水平扩开源项目,它会基于 HPA 资源中业务声明各种 Metrics 指标和扩条件,周期性计算副本数,判定是否需要扩,它架构图如下:...(比如扩容稳定窗口为180秒、随机为12-24h、扩容 CPU/Memory 阈值为90、为30%、HPA最小最大副本数等)。...动态调度器可以帮助我们避免Pod 调度到较高负载节点, Descheduler 则可以协助我们将高负载节点 Workload 打散,下线负载节点上 Pod 等。

2.8K10
  • Kubernetes垂直和水平扩性能评估

    为了帮助选择最佳策略,本文主要对比了kubernetes水平和垂直扩。...通过以上例子,可以看到HPA会将副本数翻倍,不是每次仅创建一个副本,这种方式使得HPA非常精准。 HPA有一个默认延迟(5分钟),在负载降低进行。...该时间仅在利用率低于定义利用率限制才会开始计算。 Vertical Pod Autoscaler 垂直扩目的是增加或降低现有Pods分配资源(CPU或内存)。...图2:水平扩中每个Pod requestCPU 大部分情况下,HPA都能对工作负载变化作出有效反应(尽管请求 CPU 略高于所需 CPU)。当负载上升,其平均扩容决策时间为40秒。...只有在所有场景第3阶段,以及在场景1第4和第5阶段中,CPU停留在所需值以下时间持续了大约1分钟。 HPA能够在5分钟延迟后进行VPA则不会

    1.6K40

    Kubernetes自动伸缩机制,为你降本增效

    1.Pod水平自动扩(HPA) Pod 水平自动扩(HorizontalpodAutoscaler) 可以基于CPU利用率自动扩 ReplicationController、Deployment、...例如,如果你部署目标CPU利用率为50%,现在你有五个pod在那里运行,则平均CPU利用率为 75%。为了使pod平均值更接近你目标,HPA 控制器将增加三个副本。...Pod垂直自动扩 (VPA) Vertical Pod Autoscaler(VPA),即垂直 Pod 自动扩,它根据容器资源使用率自动设置 CPU 和 内存 requests,从而允许在节点上进行适当调度...VPA 最佳实践 避免Kubernetes1.11版本之前使用。 使用updateMode:Off运行 VPA,以了解你要自动缩放pod资源使用情况。...集群自动扩器最佳实践 部署 Cluster Autoscaler ,要与之相匹配Kubernetes版本一起使用。(兼容性列表)。

    1.3K20

    腾讯会议大规模使用Kubernetes技术实践

    腾讯会议,一款提供灵活协作线上会议解决方案。其中大量模块是有状态服务,在使用Kubernetes为其进行容器化部署Pod升级需保持共享内存、长连接服务。...大规模和高性能弹性伸缩 在扩方面,这里主要介绍纵向扩和横向扩工作。...[mk2yq0akft.png] 我们自研了Vertical Workload AutoScaler (VWA) CRD用于Pod垂直扩,主要解决问题是: 当业务出现突发流量时候,HPA扩容不及时...这里面核心特性,包括提供原地升级容器规格能力,不需要重建Container,性能上做了优化,单集群能支持上千个VWA对象。...同时也支持VWA个性化配置,比如可以配置每一个VWA对象循环同步周期,每次扩容最大比例以及最大比例等。 最后再介绍一下在HPA方面我们做工作。

    3.2K138111

    kubernetes 降本增效标准指南|理解弹性,应用弹性

    计算利用率,可以设置 Daemonset 类型不计入 Pod 占用资源。 CA 判断集群状态是否可以触发,需要满足如下要求: 节点空闲时长要求(默认10分钟)。...腾讯云原生团队提出了容器化资源利用率成熟度模型中 level2 就是业务利用容器和云弹性伸缩能力,结合 Kubernetes HPA、VPA、CA 等能力,高峰扩容、空闲,极大提高资源利用率...时间窗口设置,当前 HPA 控制器中针对扩容和分别有一个时间窗口,即在该窗口内会尽量保证 HPA目标副本数处于稳定状态,其中扩容是3分钟,是5分钟。...其它问题 弹性维度 当前 HPA 监控Pod 指标,但是有些 Pod 里存在多个容器,主业务容器高负载情况下,如果此时 sidecar 容器负载,并且此 Pod 下所有容器平均资源利用率低于引发扩容阈值...驱逐选择 一个 Pod 资源利用率很低,若它资源被弹性收缩后,资源被别的负载侵占,此时如果这个 Pod 负载突然变高,但节点又没有剩余可用资源,是该驱逐该 Pod 还是驱逐别的 Pod

    3.1K63

    Kubernetes 微服务最佳实践

    HPA 算法 HPA 什么时候会扩容,这一点是很好理解。但是 HPA 策略,会有些迷惑,下面简单分析下。 HPA 「目标指标」可以使用两种形式:绝对度量指标和资源利用率。...绝对度量指标:比如 CPU,就是指 CPU 使用量 资源利用率(资源使用量/资源请求 * 100%):在 Pod 设置了资源请求,可以使用资源利用率进行 Pod 伸缩 HPA 「当前指标」是一段时间内所有...HPA过于敏感,导致 Pod 数量震荡 通常来讲,K8s 上绝大部分负载都应该选择使用 CPU 进行扩。...对这类服务而言,HPA 有这几种调整策略: 选择使用 QPS 等相对比较平滑,没有 GC 这类干扰指标来进行扩,这需要借助 KEDA 等社区组件。...对 kubernetes 1.18+,可以直接使用 HPA behavior.scaleDown 和 behavior.scaleUp 两个参数,控制每次扩最多 pod 数量或者比例。

    1.1K30

    Kubernetes 服务部署最佳实践(一)

    节点资源不足,会触发自动驱逐,将一些优先级 Pod 删除掉以释放资源让节点自愈。...通常业务都会有高峰和低谷,为了更合理利用资源,我们为服务定义 HPA,实现根据 Pod 资源实际使用情况来对服务进行自动扩,在业务高峰自动扩容 Pod 数量来支撑服务,在业务低谷,自动...Pod 释放资源,以供其它服务使用(比如在夜间,线上业务低峰,自动释放资源以供大数据之类离线任务运行) 。...早期 HPA 用 resource metrics 获取指标数据,后来推出 custom metrics,可以实现更灵活指标来控制扩。...HPA 能实现 Pod 水平扩,但如果节点资源不够用了,Pod 扩容出来还是会 Pending。

    1.1K31

    Kubernetes 服务部署最佳实践(一) 如何合理利用资源

    节点资源不足,会触发自动驱逐,将一些优先级 Pod 删除掉以释放资源让节点自愈。...弹性伸缩 如何支持流量突发型业务 通常业务都会有高峰和低谷,为了更合理利用资源,我们为服务定义 HPA,实现根据 Pod 资源实际使用情况来对服务进行自动扩,在业务高峰自动扩容 Pod 数量来支撑服务...,在业务低谷,自动 Pod 释放资源,以供其它服务使用(比如在夜间,线上业务低峰,自动释放资源以供大数据之类离线任务运行) 。...早期 HPA 用 resource metrics 获取指标数据,后来推出 custom metrics,可以实现更灵活指标来控制扩。...target: averageValue: "100" type: AverageValue 如何节约成本 HPA 能实现 Pod 水平扩,但如果节点资源不够用了

    1.7K1918

    【K8s】Kubernetes 稳定性之自动扩

    如果您有其他想要了解,欢迎私信联系我~ 基本介绍 在 Kubernetes 中,自动扩是一种动态调整集群资源,以灵活应对应用程序资源需求变化机制。...自动扩可以分为两个层面: Node 层面:根据业务规模,实现集群节点自动扩 Pod 层面:根据业务规模,实现 Pod 副本自动扩 自动扩提供了以下好处: 提高资源利用率:根据实际需求动态调整资源...Pod 层面自动扩机制。...HPA 机制 Pod 水平自动伸缩(Horizontal Pod Autoscaler,HPA)是 Kubernetes 中最常见自动扩方式,它可以根据 Pod 实际负载情况自动增加或减少 Pod...HPA工作原理如下: 度量指标:HPA 可以根据 CPU 利用率、内存利用率或其他自定义度量指标来触发扩 目标利用率:设置目标利用率,例如 CPU 10%,HPA 会尝试维持这个利用率水平 限制

    23010

    Kubernetes服务部署最佳实践|如何合理利用资源

    节点资源不足,会触发自动驱逐,将一些优先级 Pod 删除掉以释放资源让节点自愈。...通常业务都会有高峰和低谷,为了更合理利用资源,我们为服务定义 HPA,实现根据 Pod 资源实际使用情况来对服务进行自动扩,在业务高峰自动扩容 Pod 数量来支撑服务,在业务低谷,自动...Pod 释放资源,以供其它服务使用(比如在夜间,线上业务低峰,自动释放资源以供大数据之类离线任务运行) 。...早期 HPA 用 resource metrics 获取指标数据,后来推出 custom metrics,可以实现更灵活指标来控制扩。...HPA 能实现 Pod 水平扩,但如果节点资源不够用了,Pod 扩容出来还是会 Pending。

    1.2K10

    挖掘Kubernetes 弹性伸缩:水平 Pod 自动扩展全部潜力

    如果某些容器缺少相关资源请求,则不会定义 CPU 利用率,并且该指标不会发生自动缩放。对于每个 Pod 自定义指标,控制器操作类似,但使用原始值不是利用率值。...4、HPA对应用控制器,发起扩操作,以达到需要副本数 HPA算法细节 Pod水平自动扩控制器根据当前指标和期望指标来计算扩比例。...当使用 CPU 指标来扩,任何还未就绪(例如还在初始化)状态 Pod 或 最近指标 度量值采集于就绪状态前 Pod,该 Pod 也会被搁置。...如果任何一个指标无法顺利地计算出扩副本数(比如,通过 API 获取指标出错), 并且可获取指标建议,那么本次扩会被跳过。...利用率一直为0,副本至1 结论 在本文中,我们探讨了 Kubernetes Horizontal Pod Autoscaler (HPA) 对于有效管理应用程序资源和可扩展性重要性。

    78031

    kubernetes指南--弹性伸缩

    同样,在使用来节省资源,只有将负载服务后,才能空闲出一批利用率较低节点,此时节点弹性伸缩器检测到 某些节点利用率,关闭这些节点,或是从云厂商取消续订这些节点,才能达到节省资源最终目的...它可以在下列条件之一为真自动调整Kubernetes集群大小: 集群中有 pod 由于资源不足一直 pending 集群中有些节点在很长一段时间内没有得到充分利用,且其上 pod 可以被调度到其他节点上...主要 group 并不进行扩,来避免导致对大范围服务影响。 此外,节点水平伸缩能否成功实施,与调度策略密切相关。...kubernetes 在为 pod 选择可分配节点, 是采用 LeastRequestedPriority 策略,简单来说就是就是尽可能把资源打散,把 pod 分配到资源利用率节点。...这样会倒是有一批利用率较低,但未到阈值节点,因此会导致无法成功,资源利用率。因此实际使用时,需要 调整 kubernetes 调度策略,来达到最优结果。

    3.2K40

    一文搞懂使用 KEDA 实现 Kubernetes 自动弹性伸缩

    指标选择和配置 同时,HPA 和 VPA Autoscaling 依赖于指标的选择和配置。选择不合适指标或错误地配置指标阈值可能导致扩不准确性。...这意味着在应用程序需要处理大量事件,KEDA 可以快速扩展并自动添加 Pod 实例,以确保高吞吐量和延迟。...通过快速响应和自动扩能力,KEDA 确保应用程序始终具备足够资源来应对负载变化,从而保持系统高性能运行。...如果工作负载很高,Pod 将会被横向扩展。如果工作负载较低,则对 Pod 进行。如果完全没有工作负载,则将删除 Pod,以最终优化基础设施资源。...与 HPA 和 VPA 相比,KEDA 具有以下优势: 1、更灵活:KEDA 可以根据任何指标进行缩放, HPA 和 VPA 仅限于 CPU 和 RAM 指标。

    2K20

    kubernetes 降本增效标准指南|ProphetPilot:容器智能成本管理引擎

    ,以及为什么需要采用 有些组件是社区组件或 Kubernetes 原生能力,功能往往还不够强大,比如 HPA,扩感知不够及时和准确,并不一定满足客户需求 组件之间缺乏协调一致体验,各自拥有各自功能...突发流量,感知缓慢,推荐中心能够协同本地感知,联合其他副本一起协同,快速进行 HPA 动作,从而做到秒级 HPA 快速突发扩容;采用 eBPF,在感知到某种系统调用过度时候,直接配置事件触发扩容;...例如当节点数、工作负载水平,可以尽量慢一些,防止流量再次飙升; 周期策略:类似 CronJob,定时按周期执行某些策略; 人工确认策略:完全手工行为,ProphetPilot 不会自动执行这些策略...进行获取,从而在应用层建立起 Workload 相关性依赖图,做到业务整体扩不是 Workload 单独扩。...,往往还是得进行应用优先级划分,进行取舍,才能让资源利用率提升同时,高优保证高优先级应用,丢弃优先级应用,所以,划分应用优先级,或许是未来方向,这个不仅仅是应用层,从应用层,到 Kubernetes

    1.3K72

    k8s多维度自动弹性伸缩

    ,最终会选择幅度最大那个为最终副本数 扩容有一定阈值 要超过一定冷却器(默认5min) 2.6 metrics 分类 最新版 HPA:autoscaling/v2beta1,有四种类型...不可调度后最多 10s 可以触发扩容 node 资源利用率,且 node 上所有 pod 都能调度到其他 node 上。...节点不可用后 10min 开始 可以在启动关闭功能 4.3 哪些pod会阻止CANode 节点上有pod被PodDisruptionBudget控制器限制。...,GCE一般是3~4min 最终时间: 仅pod:取决于 HPA 冷却时间,默认好像是5min Node:CA冷却时间是10min 六、总结 本文针对 k8s 集群扩容背景、价值、...实现做了大概介绍,HPA 默认就可以使用,CA需要额外安装组件使用,VPA使用较少。

    1.8K20

    k8s多维度自动弹性伸缩

    接口调整副本数存在多个指标,最终会选择幅度最大那个为最终副本数扩容有一定阈值要超过一定冷却器(默认5min)2.6 metrics 分类最新版 HPA:autoscaling/v2beta1...不可调度后最多 10s 可以触发扩容node 资源利用率,且 node 上所有 pod 都能调度到其他 node 上。...节点不可用后 10min 开始可以在启动关闭功能4.3 哪些pod会阻止CANode节点上有pod被PodDisruptionBudget控制器限制。...:仅pod:取决于 HPA 冷却时间,默认好像是5minNode:CA冷却时间是10min六、总结本文针对 k8s 集群扩容背景、价值、实现做了大概介绍,HPA 默认就可以使用,CA...我司正是使用了 HPA + CA组合来实现联动扩,后续会做源码级分析,敬请期待。

    1.6K10

    在腾讯云容器服务 TKE 中利用 HPA 实现业务弹性伸缩

    概述 Kubernetes Pod 水平自动扩(Horizontal Pod Autoscaler,以下简称 HPA)可以基于 CPU 利用率、内存利用率和其他自定义度量指标自动扩 Pod 副本数量...本文将介绍和使用腾讯云容器服务 TKE HPA 功能实现 Pod 自动水平扩。...但从下图工作负载 Pod 数量监控可以看出,工作负载在 16:30 分时才触发了 HPA ,这是因为触发了 HPA 有默认 5 分钟容忍时间算法,以防止度量指标短时间波动导致频繁...当 TKE 发生 HPA事件,会在对应 HPA 实例事件列表展示,如下图所示。...适当释放闲置资源,达到提升资源利用率目的,并且整个过程在 HPA 和工作负载事件列表都会有相应事件记录,使整个工作负载水平扩全程可追溯。

    2.7K30

    云原生-什么是HPA和PDB、VPA

    # 示例 接下来让我们用一个简单小例子来看看HPA使用。假设有一个Web服务,我们希望在CPU使用率达到80%自动扩展,下降到20%自动。...# 总结 HPA和VPA是Kubernetes中两种主要自动扩机制。...HPA主要用于根据CPU利用率调整应用程序副本数,适用于需要水平扩展应用程序;VPA则直接调整正在运行中Pod资源分配,适用于对资源需求有明确上限应用程序。...在实际应用中,根据应用程序特点和需求选择合适自动扩机制,可以提高资源利用效率和应用程序稳定性。...HPA使得应用程序能够根据实时负载动态调整规模,提高资源利用率PDB则确保在计划性维护期间最小化Pod中断,提高应用程序可靠性。

    48410

    大规模k8s集群潮汐调度

    02、方 案 据了解,在Kubernetes 1.22版本开始,默认开启了pod-deletion-cost特性,允许用户设置Pod删除成本,它是一个整数值,可以为正数、零或负数,分值越优先级越高...控制器,当CPU使用率达到50%,则触发弹性扩,为避免抖动带来频繁伸缩,我们把稳定窗口设置为300s,保留最小副本数为2 hpa.yaml apiVersion: autoscaling/v2...Pod启动生成/data/task.txt文件进行判断,值为0,即空闲,值为1,即繁忙。...最后一个环节,我们执行,看看pod-deletion-cost分值Pod是否被优先删除,执行如下指令缩减副本。...(正常情况下工作负载扩应当是HPA自动完成,在这里为了方便演示,我们才通过人为干预) kubectl scale deployment nginx -n hpa --replicas=1 查看情况

    22010
    领券