kubernetes - 为什么 nodegroup 不扩展以在 EKS 中分配新 pod?
问题描述
我将 EKS 与 K8S 的节点组一起使用。
所需节点为 1,最大值为 3。
目前,只有一个 ec2 (t3.xlarge) 正在运行。
当我在一个命名空间中部署两个 pod,每个请求 8G 内存和 2 个 CPU 时,第一个部署成功,但第二个失败并出现错误1 Insufficient cpu, 1 Insufficient memory
。
我希望 EKS 应该再扩展一个节点来分配这个新的 pod,但事实并非如此。
有谁知道为什么自动缩放不会发生?我理解错了什么?
解决方案
使用 Amazon EKS,您需要在使用 AutoScaler 之前遵循这些规则
https://docs.aws.amazon.com/eks/latest/userguide/cluster-autoscaler.html
从上面的官方文档:
我已经强调了可能是您的问题
先决条件
在部署 Cluster Autoscaler 之前,您必须满足以下先决条件:
拥有现有的 Amazon EKS 集群 – 如果您没有集群,请参阅创建 Amazon EKS 集群。
您的集群的现有 IAM OIDC 提供程序。要确定您是否拥有或需要创建一个,请参阅为您的集群创建 IAM OIDC 提供程序。
具有 Auto Scaling 组标签的节点组 – Cluster Autoscaler 需要 Auto Scaling 组上的以下标签,以便可以自动发现它们。
如果您使用 eksctl 创建节点组,则会自动应用这些标签。
如果您未使用 eksctl,则必须使用以下标签手动标记您的 Auto Scaling 组。
钥匙 价值 k8s.io/cluster-autoscaler/<集群名称> 拥有 k8s.io/cluster-autoscaler/启用 真的
推荐阅读
- python - 显示类型错误:+= 不支持的操作数类型:'int' 和 'NoneType'
- postman - 邮递员从数组中获取值并在环境变量上动态设置它
- spring-boot - Spring Boot 2.0.2 + Flowable 6.3.1 流程部署
- haskell - 如何在 Haskell 中使用列表推导?
- python - NLTK NaiveBayesClassifier 分类器问题
- tsql - SQL 查找上周第一次出现的值为 5 的记录
- angular - 使用“引导”主题
- arrays - 如何从 Decodable (Swift) 中的数组访问容器
- android - 不说话时如何更改文本转语音的音量?
- html - 一个 JSP 文件找到 CSS 外部文件,但另一个 JSP 文件找不到 CSS 文件