繁体   English   中英

Kubernetes:集群自动缩放器:如何验证自动缩放是否正常工作

[英]Kubernetes : Cluster-Autoscaler: How to verify autoscaling is working

我正在我们的 EKS 平台上工作,在那里我安装了 Cluster Autoscaler。 我可以看到它在 Kube Dashboard 中运行。 昨天为了负载测试,我触发了我们拥有的一个重型应用程序的 20 个副本。 每个节点的 cpu 使用率攀升至 100%,但集群自动缩放器没有触发任何额外的节点。 我在看日志,日志在主循环中不断旋转,但没有变化。

以下是我添加到 ASG 工作节点的标签:

 k8s.io/cluster-autoscaler/enabled : true
  kubernetes.io/cluster/CLUSTER_NAME : owned

我可以看到 pod 在 Dashboard 中运行:

./cluster-autoscaler
--v=4
--stderrthreshold=info
--cloud-provider=aws
--skip-nodes-with-local-storage=false
--expander=least-waste
--node-group-auto-discovery=asg:tag=k8s.io/cluster-autoscaler/enabled,k8s.io/cluster-autoscaler/cluster_name

此外,ASG 中没有添加扩展策略。 Cluster Autoscaler 是否需要它们? 如何验证集群自动扩缩器是否正常工作? 我错过了什么?

实际上,集群自动缩放器每 10 秒检查一次是否有任何不可调度的 pod,如果在不可调度的 state 中有任何可用的 pod,那么它将检查自动缩放组的最小值和最大值。 你可以查看这个精彩的FAQ how-does-scale-up-work of autoscaler。 如果未达到最大值,它将请求 aws 自动缩放组再添加一个。

现在您的问题的答案是,您可以通过注意集群中是否有任何未计划的 pod 来轻松检查或验证自动缩放。 如果有,那么自动扩缩器将尝试再添加一个节点,如果未达到最大限制,该节点将反映在自动扩缩器日志中。 有关更多详细信息,您可以查看此常见问题解答 您还可以检查垂直吊舱缩放器以从此处缩放垂直吊舱

您可以跟踪日志并查看事件。

kubectl logs -f deployment/cluster-autoscaler -n kube-system --tail=10

它将显示缩放事件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM