首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >设置desired size: 0是否会阻止cluster-autoscaler扩容托管节点组?

设置desired size: 0是否会阻止cluster-autoscaler扩容托管节点组?
EN

Stack Overflow用户
提问于 2021-07-14 10:06:44
回答 1查看 508关注 0票数 0

当我将所需大小和最小大小都设置为0时,我有一个aws托管节点组意外运行。我希望托管节点组一开始没有任何节点,但是一旦我尝试使用标签为eks.amazonaws.com/nodegroup: my-node-group-name的nodeSelector调度pod,集群自动缩放器就会将托管节点组的所需大小设置为1,并引导一个节点。

然而,集群自动伸缩器日志表明,挂起的pod不会触发扩展,因为它不是可调度的:pod didn't trigger scale-up (it wouldn't fit if a new node is added)。但是,当我在托管节点组中手动将所需大小设置为1时,pod被成功调度,因此我知道nodeSelector工作正常。

我认为这可能是一个标签问题,如here:所述,但我将托管节点组上的标签设置为可自动发现。

代码语言:javascript
运行
复制
    spec:
      containers:
      - command:
        - ./cluster-autoscaler
        - --cloud-provider=aws
        - --namespace=kube-system
        - --node-group-auto-discovery=asg:tag=k8s.io/cluster-autoscaler/enabled,k8s.io/cluster-autoscaler/my-cluster-name
        - --balance-similar-node-groups=true
        - --expander=least-waste
        - --logtostderr=true
        - --skip-nodes-with-local-storage=false
        - --skip-nodes-with-system-pods=false
        - --stderrthreshold=info
        - --v=4

我在自动伸缩组上设置了相同的标签:

代码语言:javascript
运行
复制
Key                                             Value                             Tag new instances
eks:cluster-name                                 my-cluster-name                   Yes
eks:nodegroup-name                               my-node-group-name                Yes
k8s.io/cluster-autoscaler/enabled                true                              Yes
k8s.io/cluster-autoscaler/my-cluster-name        owned                             Yes
kubernetes.io/cluster/my-cluster-name             owned                            Yes

我是不是遗漏了什么?或者这是将所需大小设置为0的预期行为?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-15 04:51:42

呃,事实证明这只是aws与集群自动伸缩器的不兼容,他们没有告诉你。您可以将托管节点组缩减为零,但如果没有解决方法,则无法将其重新缩放。

为了让cluster-autoscaler从0开始扩展节点组,它会根据节点组规范构建一个伪节点,在本例中为aws autoscaling组。为了让cluster-autoscaler知道在伪节点上放置什么标签以检查它是否允许调度pod,您需要执行add a specific tag to the nodegroup命令。

遗憾的是,aws不会将此标签添加到自动伸缩组,也不会将标签从托管节点组传播到自动伸缩组。要做到这一点,唯一的方法是在托管节点组创建自动伸缩组之后,自己将标记添加到自动伸缩组中。问题是tracked here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68371171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档