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

为什么使用EKS nodegroup时,pod没有触发扩容?

EKS(Elastic Kubernetes Service)是亚马逊AWS提供的一项托管式Kubernetes服务,用于简化在AWS上部署、管理和扩展容器化应用程序的过程。

在EKS中,使用EKS nodegroup来管理和扩展Kubernetes集群中的节点。EKS nodegroup是一组EC2实例,它们作为Kubernetes集群的工作节点,负责运行容器化的应用程序。

当使用EKS nodegroup时,如果pod没有触发扩容,可能有以下几个原因:

  1. 资源限制:EKS nodegroup的实例类型和数量可能无法满足pod的资源需求。在创建EKS nodegroup时,需要根据应用程序的资源需求选择合适的实例类型和数量。如果pod的资源需求超过了nodegroup中实例的资源限制,就无法触发扩容。解决方法是调整nodegroup的实例类型和数量,以满足pod的资源需求。
  2. 自动扩容配置:EKS nodegroup的自动扩容配置可能未正确设置。在EKS中,可以通过配置自动扩容组件(如Cluster Autoscaler)来实现根据pod资源需求自动扩容。如果自动扩容配置未正确设置,就无法触发扩容。解决方法是检查和调整自动扩容配置,确保其与pod的资源需求匹配。
  3. 节点池大小:EKS nodegroup的节点池大小可能已达到上限。每个EKS nodegroup都有一个节点池,节点池中的实例数量是有限的。如果节点池已满,就无法再添加新的实例,从而无法触发扩容。解决方法是调整节点池的大小,增加可用实例的数量。
  4. Pod调度限制:Kubernetes调度器可能无法将pod调度到可用的节点上。在Kubernetes中,调度器负责将pod分配到可用的节点上运行。如果调度器无法找到满足pod资源需求的可用节点,就无法触发扩容。解决方法是检查调度器的配置和调度策略,确保其能够正确地将pod调度到可用的节点上。

总结起来,当使用EKS nodegroup时,如果pod没有触发扩容,需要检查资源限制、自动扩容配置、节点池大小和Pod调度限制等因素,以确保满足pod的资源需求并正确配置自动扩容组件。

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

相关·内容

EKS 的 VPC 详解

EKS 集群的默认 VPC 公网子网 eksctl 创建集群,会新创建一个专门的 VPC ,这个 VPC 会创建 6 个子网,其中有三个是公网子网,例如: eksctl-some-cluster-cluster...Ingress 和 LoadBalancer 当我们部署 Ingress (参考在 AWS 中国使用 eksctl 配置集群和 Ingress Controller) EKS 会自动创建一个 ALB...EKS 对于 VPC 使用的最佳实践 eksctl 默认创建的 EKS 集群基本就是一种比较合理的使用方式,唯一可能需要调整就是 NodeGroup 所在的子网。...而我们在实践中其实可以考虑将节点组创建到私网当中(具体操作办法参考在 EKS 上管理 NodeGroup),节点只能通过 NAT 网关访问互联网。...在 AWS 中国使用 eksctl 配置集群和 Ingress Controller 在 EKS 上管理 NodeGroup

10510

K8S-Node自动扩容项目CA源码分析(下)

数量,判断是否需要扩容if len(unschedulablePodsToHelp) == 0 { // 没有未调度的 pod,不需要扩容scaleUpStatus.Result = status.ScaleUpNotNeededklog.V...,依次遍历每个 pod,去匹配 Node新创建的 Node 保存到 newNodeNames 数组中如果没有找到,就去创建一个新的 Node。...满足以下所有条件会触发缩容:在改节点上运行的所有 pod 的 cpu、memory的总和 < 节点可分配总额的 50%。...判断资源使用是否达到阈值(可启动配置)reason, utilInfo := sd.checkNodeUtilization(timestamp, node, nodeInfo)// 保存可以被删除的节点...4.3 AutoScaling混合实例策略:支持多个实例类型,配置推荐使用相似的资源类型:比如:M4、M5、M5a,和M5n可以通过 configmap 设置不同 AutoScaling 的优先级AutoScaling

1.4K10

loki生产实践-1:eks使用kubesphere3.2.0部署loki

).导入相关应用仓库 (2).创建loki项目 (3).部署loki 1.第三方仓库应用的部署入口 2.部署loki 3.部署Promtail (4).loki的简单实用 1.配置grafana 2.使用...创建后可以进行配额设置: 但是我没有配置,因为eks中专门指定了一个nodegroup用作loki日志系统,通过nodeSelector和label来进行分布管理,所以这里就不进行配额管理了。...(3).部署loki 1.第三方仓库应用的部署入口 2.部署loki 选择loki: 版本选择: 修改nodeSelector:eks中分配了一个nodegroup专门给loki用。...这里非常之坑,否则loki-pod无法启动,一直restart,报错: failed parsing config: /etc/loki/loki.yaml: parsing time "2020-10...由于使用本地磁盘,开启local pv:磁盘是1T,所以设置为1000GB。

1.2K30

从Wiz Cluster Games 挑战赛漫谈K8s集群安全

因为拥有list/get pods权限,首先可以使用 kubectl 来查看正在运行的 pod 并获取pod的具体内容,看是否有发现: root@wiz-eks-challenge:~# kubectl...可以发现Pod 正在运行从ecr镜像仓库中拉取的镜像,但并没有拉取的权限: root@wiz-eks-challenge:~# crane pull 688655246681.dkr.ecr.us-west...你正在 EKS 集群上一个易受攻击的 pod 中。Pod 的服务帐户没有权限。你能通过利用 EKS 节点的权限访问服务帐户吗?...当使用 aws eks get-token命令,AWS CLI 会调用 STS 的 GetCallerIdentity操作并获取一个带有签名的文档,这个文档包含了你的 AWS 身份信息。...当你使用这个令牌与 EKS 集群通信EKS 集群会将这个令牌发送给 STS 进行验证,STS 会返回与这个令牌关联的用户信息,这样 EKS 集群就可以知道是谁在进行操作,并对其进行相应的授权。

32510

Kubernetes 微服务最佳实践

绝对度量指标:比如 CPU,就是指 CPU 的使用量 资源利用率(资源使用量/资源请求 * 100%):在 Pod 设置了资源请求,可以使用资源利用率进行 Pod 伸缩 HPA 的「当前指标」是一段时间内所有...Pod 扩容 - 预热陷阱 预热:Java/C# 这类运行在虚拟机上的语言,第一次使用到某些功能,往往需要初始化一些资源,例如「JIT 即时编译」。...(保证平滑缩容) 而对于扩容不够平滑这个问题,可以考虑提供类似 AWS ALB TargetGroup slow_start 的功能,在扩容缓慢将流量切到新 Pod 上,以实现预热服务(JVM 预热以及本地缓存预热...然后使用 kubectl drain 驱逐 Pod ,其中一个 Pod 被立即驱逐走了,而另一个 Pod 大概在 15 秒内一直驱逐失败。...节点亲和性 如果你使用的是 aws,那 aws 有一些自定义的节点标签: eks.amazonaws.com/nodegroup: aws eks 节点组的名称,同一个节点组使用同样的 aws ec2

1K30

干货 | 容器成本降低50%,携程在AWS Spot上的实践

Spot实例的优点 成本优势显著:通常价格仅是按需实例的30% 计费方式灵活友好:相比预留实例(RI)或SavingPlan等其他成本节省方式,仅按使用时长付费,无需容量预留或预付,没有因过量购买而造成浪费的负担...基于Cluster Autoscaler的原理,系统中作为Pod调度策略的Labels/Taints键值对集合都需要作为一个单独资源池,才能精确触发对应的Autoscaling Group的扩缩容。...具体的: 1)临时解除Pod可用区分散的调度策略:当可用区故障,该可用区的K8s Node很可能会遭遇实例故障,如Pod的网络不通、Kubelet自动重建Pod;或故障处理过程执行迁移Pod,当前的...K8s Node资源很可能是不充足的状态,此时Pending事件触发Cluster Autoscaler进行扩容。...3)临时关闭Cluster Autoscaler对Spot的NodeGroup扩容:在平时监控到自己账号内的Spot回收频率异常高,需要及时联动进行Spot比例的调整,避免新扩容Spot实例。

2.2K41

EKS 上管理 NodeGroup

EKS 上管理 NodeGroup 最初使用NodeGroup 的 InstantType 规格太低,不太好用,所以需要增加一个新的 NodeGroup 。...在之前的 cluster 配置文件 patos-cluster-with-mng.yaml 中,我们使用的是 nodeGroups ,这是非 Managed 的 NodeGroup ,在 EKS 的界面上是看不到的...,根据官方文档的说法, Managed NodeGroup 是完全由 EKS 管理的 NodeGroup,所以应该是更好一点。...eks 支持创建 private 的 NodeGroup ,这样 NodeGroup 的 Node 都不会有公网 IP ,会通过 NAT 网关实现对互联网的访问,这样在外部看到的 IP 会是 NAT 网关的...方法也很简单,前面创建 NodeGroup 增加 privateNetworking 参数,例如以下示例: managedNodeGroups: - name: private-mng-1 instanceType

9310

AWS 容器服务的安全实践

在AWS上运行容器,我们提供了更多的选择。首先,您可以选择编排工具,您可以选择AWS原生的Amazon ECS或者支持Kubernetes的Amazon EKS。...EKSNodeGroup的概念,它是一个独立的自动伸缩的工作节点组,可以对其进行标记,这样您就可以限制哪些Pod/服务可以在其上运行。 另外,服务网格也是可以对网络进行配置和管理的一种方法。...Fargate需要运行在VPC网络中,在Fargate中也没有容器的特权模式,各个 ECS 任务或 EKS Pod 各自在其自己的专用内核运行时环境中运行,并且不与其他任务和 Pod 共享 CPU、内存...EKS具有用于触发控制平面更新的API,在触发之后您需要更新工作节点,例如,Kubernetes以及Docker和OS。通常工作节点在一个自动扩展组中,因此我们需要重新构建或者更新AMI。...总结 在AWS中安全运行容器,客户应承担许多责任,运行EKS相比ECS更是如此。

2.7K20

腾讯云原生混合云-第三方集群弹EKS应对突发流量的利器

本文介绍其中针对突发流量场景的产品特性——第三方集群弹 EKS。 低成本扩容 IDC 的资源是有限的,当有业务突发流量需要应对时,IDC 内的算力资源可能不足以应对。...仅需要在集群中安装相关插件包即可快速获得扩容EKS 的能力。 ?...与直接使用云上虚拟机节点相比,此种方式扩缩容更快,并且我们还提供了2种调度机制来满足客户的调度优先级需求: 全局开关: 在集群层面,当集群资源不足,任何需要新创建Pod的工作负载都可以将副本创建到腾讯云...EKS 上; 局部开关: 在工作负载层面,用户可指定单个工作负载在本集群保留N个副本后,其他副本在腾讯云 EKS 中创建; 为了确保所有工作负载在本地 IDC 均有足够的副本数,当突发流量过去,触发缩容...这种模式下,业务部署架构没有发生变化,在单集群中即可弹性使用云上资源,避免了引入业务架构改造、CD流水线改造、多集群管理、监控日志统等一系列衍生问题,并且云上资源的使用是按需使用,按需计费,大大降低了用户使用成本

2K20

【大数据云原生系列】大数据系统云原生渐进式演进最佳实践

Yarn-autoscaler组件通过监听Yarn集群中资源使用的情况,作出扩容或者缩容的判断,然后向EKS集群创建Yarn-operaor crd资源。...当Yarn中的这些指标达到预设阈值,Yarn-autoscaler将触发扩容过程,通过向EKS集群创建的Yarn-opterator的crd资源完成Yarn集群的扩容。 ?...借助腾讯云EKS的serverless能力,我们实现的快速自动扩缩容方案,正好可以满足该用户的诉求。 在控制台上,用户使用我们提供的自动扩缩容的配置策略,自由配置自动扩容、缩容的触发阈值。...,从而提供算力;当触发了用户配置的缩容策略,如剩余CPU或者内存大于指定的值,Yarn弹性伸缩组件同样会调用EKS Kubernetes API缩容Yarn NodeManager Pod,整个过程中无需用户创建虚拟机...简单来说,该方案提供了三种使用方式: 根据在线业务的波谷时段,配置定时扩容任务,在定时任务指定的时间到达,调用TKE Kubernetes API,提交扩容请求,Yarn NodeManager则会以

3.8K131122

CA(cluster autoscaler)删除 Node逻辑排查

CA(cluster autoscaler)删除 Node逻辑排查背景CA 并不是只有开启缩容功能才会下线机器,使用过程中发现没有开启缩容开关也出现了 Node被删除导致服务不可用的情况,本文针对 CA...其中,Status字段是可选值,AWS没有用到 Status(Status==nil),其他云厂商用到了这个值(比如 azure、华为cloud),因此我们的 CA 在使用中这种情况永远不会发生。...,即使关闭了缩容功能,CA启动,也有有两种场景会触发Node被强制删除:场景一:没有 ProviderID,这种场景上线过程中已经出现。...,确认哪些 Node 可以安全删除 ... // 这种场景:有打污点、驱逐daemonset pod、删除 Node,但是没有 drain node // 没有 pod 在 Node 上运行,直接删除...N < asg.Min 的才认为是错误的 ASG(这种情况理论上应该不会发生)从错误的 ASG 中取出 delta, delta = CurrentSize - ExpectedSize < 0 触发

66730

CA(cluster autoscaler)删除 Node逻辑排查

背景 CA 并不是只有开启缩容功能才会下线机器,使用过程中发现没有开启缩容开关也出现了 Node被删除导致服务不可用的情况,本文针对 CA中所有涉及到高危的删除操作做排查,避免掉坑 CA 自动扩缩容需要实现...其中,Status字段是可选值,AWS没有用到 Status(Status==nil),其他云厂商用到了这个值(比如 azure、华为cloud),因此我们的 CA 在使用中这种情况永远不会发生。...复现 以上分析可知,即使关闭了缩容功能,CA启动,也有有两种场景会触发Node被强制删除: 场景一:没有 ProviderID,这种场景上线过程中已经出现。...、删除 Node,但是没有 drain node  // 没有 pod 在 Node 上运行,直接删除,不需要驱逐  if len(emptyNodes) > 0 {    scheduleDeleteEmptyNodes...N < asg.Min 的才认为是错误的 ASG(这种情况理论上应该不会发生) 从错误的 ASG 中取出 delta, delta = CurrentSize - ExpectedSize < 0 触发

44420

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

其中大量的模块是有状态服务,在使用Kubernetes为其进行容器化部署Pod升级需保持共享内存、长连接服务。...高效稳定的发布能力 业务没有大规模使用StatefulSet的滚动更新能力,对于有状态服务来说,原生的滚动更新机制的发布可控性太差,对于multi-zone容灾部署的业务更是很难做精细化的发布策略。...如果升级过程中触发了Workload的扩容,那么扩容的时候会使用上一个好的版本进行扩容,而不是像原生的StatefulSet和Deployment一样,使用最新的镜像进行扩容。...在腾讯内部,产品的管理是分多个层级的,因此在配额管理方面,我们没有使用Kubernetes原生的ResourceQuota机制,而是研发了DynamicQuota CRD来实现多层级的、动态的面向业务的...触发横向扩容

3.1K138111

如何将离线计算业务的成本降低 65%—弹性容器服务 EKS「竞价实例」上线

EKS 具备以下优势特性: 无服务器,运维简单,只需专注于应用本身 秒级扩容,1 分钟可扩容数千容器 显著提升容器资源利用率,在线容器 > 50%,离线容器 > 90% 基于容器真实运行的时间和运行时期申请的算力...竞价实例来自公有云资源中某段时间内的空闲资源,其「使用」和按量计费的 Pod 基本毫无区别,包括控制台操作、远程登录、服务部署、关联 VPC 等等。...为什么竞价实例成本如此之低? 需要注意的是,竞价实例可能会因为资源库存减少、其他用户出价竞争而「发生系统主动回收实例的情况」。...当然,腾讯云 EKS 在实例回收 2 分钟之前会进行信息告警,以便为您预留时间保存重要数据,或者转为按量计费的 Pod 实例。...:离线计算业务的资源成本降低 65% 在 EKS 集群中,合理部署竞价实例,相比全部使用按量计费实例,可节约大量的资源成本。

1.7K20

问题排查的最佳帮手 ——TKE 容器服务事件日志

同时腾讯云也提供 弹性容器服务(Elastic Kubernetes Service,EKS)和 边缘容器服务(Tencent Kubernetes Engine for Edge,TKE Edge),...TKE 容器服务:https://cloud.tencent.com/product/tke TKE 容器服务事件日志大洞察 集群内的状况层出不穷,变化莫测,如节点状态异常,Pod 重启等,如果无法第一间感知状况...,会错过最佳的问题处理时间,待问题扩大,影响到业务才发现往往已经为时已晚。...以回收节点磁盘空间; 场景2:节点触发扩容了,用户需要对扩容过程进行回溯,以确定具体原因 开启了 节点池「弹性伸缩」的集群,CA(cluster-autoscler)组件会根据负载状况自动对集群中节点数量进行增减...-v9jv5) 触发,最终扩增了3个节点,后续的扩容由于达到节点池的最大节点数没有再次触发

1.1K30

K8S-Node自动扩容项目CA源码分析(上)

一、概述上一篇文章介绍了 k8s 自动扩缩容的三种方式:HPA、VPA、CA,以及各自的使用场景和架构。本文针对 CA 做源码分析。...按扩容类型分类的处理逻辑│   ├── filter_out_schedulable.go│   ├── scale_down.go # 缩容│   ├── scale_up.go# 扩容│  ...该方法会阻塞知道 node group 数量更新DeleteNodes([]*apiv1.Node) error // 从 Node group 中减少目标数量 // 该方法不允许删除任何节点,仅仅用于减少没有完全填充的新节点...// 参数 delta 必须是负数,假定 cloud provider 在调整目标数量,将不会删除存在的节点DecreaseTargetSize(delta int) error// 返回 node...,以预测一个新的扩容节点是什么样的 // 返回的 NodeInfo 信息包含完整的 Node 对象信N,包括:标签、容量、能分配的 pod 信息(类似kube-proxy)TemplateNodeInfo

1.1K10

【日志服务CLS】应用TKE事件日志排查异常场景体验

同时腾讯云也提供 弹性容器服务(Elastic Kubernetes Service,EKS)和 边缘容器服务(Tencent Kubernetes Engine for Edge,TKE Edge),...集群内的状况层出不穷,变化莫测,如节点状态异常,Pod重启等,如果无法第一间感知状况,会错过最佳的问题处理时间,待问题扩大,影响到业务才发现往往已经为时已晚。...而事件日志(Event)记录了全面的集群状态变更信息,不仅可以帮助用户帮助第一间发现问题,也是排查问题的最佳帮手。...场景2:节点触发扩容了,用户需要对扩容过程进行回溯,以确定具体原因 开启了节点池「弹性伸缩」的集群,CA(cluster-autoscler)组件会根据负载状况自动对集群中节点数量进行增减。...)触发,最终扩增了3个节点,后续的扩容由于达到节点池的最大节点数没有再次触发

48320
领券