如何在不使用 Helm 的情况下使用 Prometheus 和 Grafana 监控 Amazon EKS
发布: (2026年1月8日 GMT+8 17:58)
3 分钟阅读
原文: Dev.to
Source: Dev.to
为什么监控很重要
- 检查集群健康状态
- 监控节点和 Pod 的资源使用情况
- 提前发现问题
- 提升系统的稳定性和安全性
使用的工具
- Amazon EKS
- Prometheus
- Grafana
- kube-state-metrics
- node-exporter
此方案未使用 Helm。
简单架构
- Prometheus 从 EKS 集群收集指标
- Node Exporter 收集节点指标
- kube-state-metrics 提供 Kubernetes 对象数据
- Grafana 在仪表盘中展示指标
步骤 1:创建监控命名空间
(使用你喜欢的 kubectl 命令创建命名空间。)
步骤 2:部署 kube-state-metrics
部署的组件
- Pods
- Namespaces
- Nodes
- Deployments
验证部署
kubectl get pods -n monitoring
步骤 3:部署 Node Exporter
收集的指标
- CPU
- 内存
- 磁盘指标
使用常用的 kubectl 命令检查状态。
步骤 4:配置 Prometheus
更新 Prometheus 抓取配置,以收集以下来源的指标:
- Kubernetes 节点
- Pods
- kube-state-metrics
- kubelet 指标
Grafana 过滤的相关标签
clusternodenamespacepod
步骤 5:将 Grafana 连接到 Prometheus
- 打开 Grafana
- 添加 Prometheus 为数据源
- 保存并测试连接
步骤 6:导入仪表盘
导入 Kubernetes 仪表盘以查看:
- 集群指标
- 节点使用情况
- Pod 使用情况
你可以按以下维度过滤:
- 集群
- 节点
- 命名空间
- Pod
可以监控的内容
- 集群健康状态
- 节点 CPU 与内存
- Pod 资源使用情况
- Pod 重启次数
我的收获
- 监控是 Kubernetes 必不可少的环节
- 在不使用 Helm 的情况下,Prometheus 与 Grafana 也能很好地配合
- 标签在过滤指标时非常有用
- 良好的监控支持 DevSecOps 实践
结论
这是一种简单且有效的方式,在不使用 Helm 的前提下监控 Amazon EKS。对于想学习 Kubernetes 监控的朋友来说,是一个很好的起点。
感谢阅读!