是否有任何工具可以根据 kubernetes 中请求的总 pod 自动扩展 GKE 节点?

Posted

技术标签:

【中文标题】是否有任何工具可以根据 kubernetes 中请求的总 pod 自动扩展 GKE 节点?【英文标题】:Is there any tool for GKE nodes autoscaling base on total pods requested in kubernetes? 【发布时间】:2016-06-05 00:05:22 【问题描述】:

当我使用 kubectl 调整复制控制器的大小时,如果集群没有足够的资源,就会有一个或多个 Pod 始终处于待处理状态。

是否有任何工具可以在资源耗尽时自动调整 GKE 集群的大小?

【问题讨论】:

【参考方案1】:

我有一个类似的要求(对于 Go 构建系统):​​想知道何时调度与可用 CPU 或内存 > 1,并在此情况下横向扩展节点(或者更准确地说,当它是 ~. 8)。没有内置指标,但正如您建议的那样,您可以使用自定义指标。

这都是在 Go 中完成的,但它会给你基本的想法:

    Create the metrics (memory and CPU, in my case Put values to the metrics

IMO 的关键要点是,您必须遍历集群中的每个 pod 以确定消耗了多少容量,然后遍历集群中的每个 node 以确定可用容量。然后只需将您的自动缩放器指向自定义指标即可。

值得一提的大事:我最终确定,内置 CPU 利用率指标的扩展与自定义指标一样好(如果不是更好,但稍微多一点)。我们安排的每个 pod 都与 CPU 挂钩,因此当 pod 被最大化时,CPU 也会被占用。内置的 CPU 利用率指标可能更好,因为您没有定期放置自定义指标所带来的延迟。

【讨论】:

【参考方案2】:

您可以为您的 GKE 节点所属的Instance Group 开启autoscaling

【讨论】:

在我的情况下找不到合适的指标,但我会尝试自定义指标

以上是关于是否有任何工具可以根据 kubernetes 中请求的总 pod 自动扩展 GKE 节点?的主要内容,如果未能解决你的问题,请参考以下文章

是否有任何工具可以估计 MongoDB 中的索引大小?

Kubernetes根据命名空间设置部署副本数

Kubernetes 学习12 kubernetes 存储卷

Kubernetes rbac 用户审计日志

任何生成html表单的工具[关闭]

是否可以自动缩放除 Kind 之外的其他种类:在 Kubernetes 中部署?