用途:在季节性流量高峰、新功能上线、季度容量评审、资源利用率持续上升或预算规划前,基于历史指标预测资源需求,避免资源饱和。
主要能力:收集 CPU、内存、磁盘、网络、请求速率、数据库连接池等历史指标;用 Prometheus 的 predict_linear() 预测达到阈值的时间;计算各资源当前余量与饱和剩余时间;结合业务增长预测建模多种场景;生成带成本、时间线和触发条件的扩容建议;配置低余量容量告警。
使用方式:需提供至少 4 周(建议 8 周)历史指标与趋势分析时间范围,可选业务增长预测和预算约束。步骤为:查询并导出 Prometheus 指标;用 predict_linear 计算增长率并预测饱和;计算当前余量;用脚本建模增长场景;生成扩容建议;配置容量告警。示例查询如 predict_linear(avg(rate(node_cpu_seconds_total{mode!="idle"}[5m]))[8w:], 4724*3600) > 0.80,导出命令使用 curl 调用 Prometheus 的 /api/v1/query_range。
适用场景:基础设施容量评审、扩容决策、预算规划前的资源预测。
限制:线性预测需至少 4 周数据,数据不足则预测不可靠;部署、迁移等阶跃变化会扭曲趋势;线性假设不适用于指数增长;需考虑采购与迁移的提前期;需与预算对齐。相关技能包括 setup-prometheus-monitoring、build-grafana-dashboards、optimize-cloud-costs。