按流程定位问题
| 现象 | 优先检查 |
|---|---|
| 没有历史数据 | 数据源连接、模板变量、标签、查询时间范围和单位。 |
| 部分算法没有结果 | 算法运行情况中的最小样本、参数、输入和耗时。 |
| 评估暂时为空 | 预测目标时间是否到达,实际指标是否已采集。 |
| 推荐使用兜底 | 快照中的来源、数据新鲜度、算法资格与恢复状态。 |
| 副本没有变化 | 模式授权、旁路、控制冲突、建议有效期、步长和冷却。 |
| 目标已写入但容量不足 | 实际副本、Ready、Pod 启动与资源准备时间。 |
查看指标与曲线
使用指标目录与查询查看历史用量、预测、实际表现、推荐新鲜度和运行状态。缺失位置应与真实采样区分,不能把跨缺口的连接线解释为实测值。
接入外部监控
配置 metrics.listen 后,平台提供 /metrics、/healthz 和 /readyz。平台指标使用 kube_res_foresight_*,Operator 指标使用 kube_res_foresight_operator_*。
指标用于观察链路,不替代推荐快照、执行报告或实际就绪状态。同步准入不等待 Prometheus 长查询或模型推理。
结合记录复盘
从模块定位算法运行、预测、资源评估、推荐、准入和执行。需要离线核对时使用审计导出,并确认导出时间范围和权限。
观察决策来源与扩容延迟
平台正常响应、缓存接管、恢复中和缓存过期是不同状态。通过 kube_res_foresight_operator_decision_source_total 与 kube_res_foresight_operator_decision_cache_age_seconds 观察决策来源与缓存年龄,再结合扩容及时性和 Ready 曲线排查预测落后或容量就绪偏慢。
预测关闭时没有算法结果属于预期状态。排查前先检查模块预测方式,再查看数据、模型和执行链路。