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

如何在Kubernetes Dashboard中获取超过30分钟的集群统计数据?

解决Kubernetes Dashboard无法查看全周期统计数据的方案

核心原因

Kubernetes Dashboard默认依赖的metrics-server仅负责存储短期(默认15分钟)指标,它的定位是给HPA、调度器等组件提供实时数据支撑,本身不支持长期数据持久化,所以哪怕Pod运行多天,也只能看到最近15分钟的统计内容。

配置步骤

1. 部署Prometheus实现长期指标存储

要保留Pod/集群全周期的统计数据,需要先部署Prometheus作为长期指标存储系统:

  • 用Helm快速部署最便捷:
    helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
    helm repo update
    helm install prometheus prometheus-community/prometheus
    
  • 部署完成后,Prometheus会通过kube-state-metrics和node-exporter自动采集集群各类指标,并通过PVC持久化存储数据,不会轻易丢失。

2. 配置Dashboard对接Prometheus

让Dashboard从Prometheus获取长期指标数据:

  • 编辑Dashboard的配置ConfigMap:
    kubectl edit configmap kubernetes-dashboard-settings -n kubernetes-dashboard
    
  • 在data模块添加Prometheus的访问配置(默认Prometheus的Service地址为http://prometheus-server.default.svc.cluster.local,端口80):
    data:
      prometheus-host: "http://prometheus-server.default.svc.cluster.local"
      prometheus-port: "80"
    
  • 重启Dashboard Pod使配置生效:
    kubectl rollout restart deployment kubernetes-dashboard -n kubernetes-dashboard
    

3. 调整Prometheus数据保留时长(可选)

Prometheus默认保留15天的数据,若需要更长存储周期,可修改启动参数:

  • 编辑Prometheus的Deployment:
    kubectl edit deployment prometheus-server -n default
    
  • 在容器启动参数args中添加或修改保留时长,比如设置为30天:
    args:
      - --storage.tsdb.retention.time=30d
    
  • 重启Prometheus Pod:
    kubectl rollout restart deployment prometheus-server -n default
    

验证配置

重新登录Kubernetes Dashboard,查看Pod或集群统计数据时,即可选择更长时间范围,获取从Pod启动以来的全周期指标(前提是Prometheus已采集到对应时段的数据)。

内容的提问来源于stack exchange,提问作者The Kingmaker

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 13:57:23