Amazon EKS 上的 Horizo​​ntalPodAutoscaling

Amazon EKS 上的 Horizo​​ntalPodAutoscaling

尝试在 Amazon EKS 上设置 Horizo​​ntalPodAutoscaler 时,始终显示 TARGETS 列<unknown>/50%,并且在描述 HPA 时,我看到

警告 FailedGetResourceMetric 17s(1 小时内 x50)horizo​​ntal-pod-autoscaler 无法获取资源 cpu 的指标:无法从资源指标 API 中获取指标:服务器找不到请求的资源(获取 pods.metrics.k8s.io)

我在其他网站上发现了多篇关于--horizontal-pod-autoscaler-use-rest-clients在 kube-controller-manager 上使用的类似问题的帖子,但我找不到方法来更改 EKS 集群的 kube-controller-manager 上的设置,因为你似乎无法通过 SSH 进入主节点进行管理,并且 kube-controller-manager 没有在系统中的任何地方列为资源。

我曾尝试按照以下说明手动设置指标服务器https://github.com/kubernetes-incubator/metrics-server但在这种情况下,我发现 EKS 没有提供验证 API 扩展所需的配置映射Could not create the API server: configmaps "extension-apiserver-authentication" not found

答案1

已编辑

AWS 已发布对具有自定义指标的水平 Pod 自动扩展的支持: https://aws.amazon.com/pt/about-aws/whats-new/2018/08/amazon-eks-supports-horizo​​ntal-pod-autoscaling-with-custom-metric/

上一个答案

这是 EKS 目前已知的问题。以下是我对支持人员的回复(部分省略):

遗憾的是,EKS 控制平面目前与指标服务器聚合器存在问题。EKS 服务团队正在努力解决这些问题,为控制平面提供指标服务器支持。

该功能发布后,应通过以下任一链接公开宣布:

我已经表明了您对这个问题的关注,我将代表您寻求解决方案。

希望他们能尽快解决这个问题。

答案2

我知道这是一个老话题,但我想添加一些内容,因为我们最近在设置它时遇到了问题。

虽然从 eks 版本 eks.2 开始 Kubernetes 1.10 支持 HPA,但从 eks.1 版本开始 Kubernetes 1.11 已经支持 HPA。

但它不能“开箱即用”,并且问题与问题中描述的相同(当前 CPU 未设置)。

您需要知道,默认情况下,EKS 上未安装 metrics-server。您可以在此处找到 metrics-server:https://github.com/kubernetes-incubator/metrics-server

当 metrics-server 运行后,HPA 便可以按预期在 EKS 上运行。

希望对大家有帮助!

答案3

它现在受支持,但有点晚了,需要一个新的集群,您还不能手动触发更新。

https://aws.amazon.com/blogs/opensource/horizo​​ntal-pod-autoscaling-eks/

相关内容