You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Grafana将EKS集群每日基础设施使用报告发送至Slack?

EKS集群每日基础设施监控报告实现方案

1. 用PromQL提取核心集群指标

直接通过Prometheus内置查询获取所需关键数据:

  • 当日节点最大数量:max_over_time(kube_node_info{job="kube-state-metrics"}[1d])
    (统计24小时内集群运行过的节点峰值数量,反映弹性扩缩容情况)
  • 当日运行中Pod数量(峰值):max_over_time(sum(kube_pod_status_phase{phase="Running"})[1d])
  • 当日运行中Pod数量(平均值):avg_over_time(sum(kube_pod_status_phase{phase="Running"})[1d])

2. Grafana配置每日定时报告

操作步骤:

  • 搭建报告仪表板:新建Grafana仪表板,添加上述指标的可视化面板(单值面板展示峰值,折线图展示全天趋势),调整布局让报告结构清晰。
  • 配置通知渠道:进入Alerting > Contact Points,添加邮件、Slack或企业微信等接收渠道,确保支持接收带附件的通知。
  • 创建定时告警规则:
    1. 进入Alerting > Alert rules,新建规则
    2. 设置触发条件为恒成立(比如vector(1)),评估频率设为每日固定时间(如0 1 * * *,即凌晨1点执行)
    3. 在通知设置中,勾选「Include image」或「Attach PDF」,指定要包含的仪表板面板或整个仪表板
    4. 通知标题设为「EKS集群每日基础设施报告」,正文可补充简单的指标说明

3. 报告内容优化建议

除核心指标外,可额外补充以下内容让报告更全面:

  • 节点CPU使用率当日峰值:max_over_time(avg(irate(node_cpu_seconds_total{mode!="idle"}[5m])) by (node)[1d])
  • 节点内存使用率当日峰值:max_over_time((node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes)/node_memory_MemTotal_bytes * 100[1d])
  • 异常状态Pod数量:sum(kube_pod_status_phase{phase=~"Failed|CrashLoopBackOff"})

4. 验证与调整

  • 手动触发告警规则,检查报告附件是否正常生成、指标数据是否准确
  • 确认PromQL查询的时间范围是否覆盖完整24小时,避免数据遗漏
  • 根据接收端反馈调整报告格式(比如PDF分页、图片分辨率)

内容的提问来源于stack exchange,提问作者Akshay Gopani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 07:50:26