eks-node-viewer:可视化EKS节点资源利用率的利器
项目地址:https://gitcode.com/gh_mirrors/ek/eks-node-viewer
项目介绍
eks-node-viewer
是一个用于可视化EKS集群中节点动态使用情况的开源工具。它最初由AWS内部开发,用于展示与 Karpenter 结合的节点整合效果。该工具通过显示节点的调度Pod资源请求与可分配容量之间的对比,帮助用户直观地了解集群中节点的资源利用情况。特别值得一提的是,eks-node-viewer
并不关注实际的Pod资源使用情况,而是专注于资源请求的分配与节点容量的对比。
项目技术分析
eks-node-viewer
基于Go语言开发,充分利用了Kubernetes的API来获取节点和Pod的资源请求信息。通过命令行参数,用户可以灵活配置显示的资源类型、节点标签、排序方式等,从而满足不同的监控需求。此外,工具还支持通过AWS凭证获取定价数据,帮助用户在成本管理方面做出更明智的决策。
项目及技术应用场景
eks-node-viewer
适用于以下场景:
- 集群资源优化:通过可视化节点资源请求与容量的对比,帮助用户识别资源利用率低下的节点,从而进行资源优化和成本节约。
- 节点整合与调度:结合Karpenter等自动伸缩工具,
eks-node-viewer
可以帮助用户更好地理解节点的动态调度情况,优化节点整合策略。 - 故障排查与监控:在集群出现资源瓶颈或调度问题时,
eks-node-viewer
可以快速定位问题节点,辅助故障排查。
项目特点
- 可视化展示:通过直观的界面展示节点资源请求与容量的对比,帮助用户快速理解集群资源使用情况。
- 高度可配置:支持多种命令行参数,用户可以根据需求自定义显示的资源类型、节点标签、排序方式等。
- 集成AWS定价数据:通过AWS凭证获取定价数据,帮助用户在成本管理方面做出更明智的决策。
- 开源与社区支持:项目开源,欢迎社区贡献,用户可以通过GitHub提交问题和建议,共同推动项目发展。
安装与使用
安装方式
-
Homebrew:
brew tap aws/tap brew install eks-node-viewer
-
手动安装:
go install github.com/awslabs/eks-node-viewer/cmd/eks-node-viewer@latest
使用示例
# 标准使用
eks-node-viewer
# 仅显示Karpenter管理的节点
eks-node-viewer --node-selector karpenter.sh/nodepool
# 显示CPU和内存使用情况
eks-node-viewer --resources cpu,memory
# 显示额外的标签,例如AZ
eks-node-viewer --extra-labels topology.kubernetes.io/zone
# 按CPU使用率降序排序
eks-node-viewer --node-sort=eks-node-viewer/node-cpu-usage=dsc
结语
eks-node-viewer
作为一款强大的EKS节点资源可视化工具,不仅能够帮助用户更好地理解集群资源使用情况,还能在资源优化、成本管理和故障排查等方面发挥重要作用。无论你是Kubernetes集群的管理员,还是对资源优化感兴趣的开发者,eks-node-viewer
都将是你的得力助手。赶快尝试一下吧!
eks-node-viewer EKS Node Viewer 项目地址: https://gitcode.com/gh_mirrors/ek/eks-node-viewer