性能和容量
容量规划重点是数据库写入量和历史数据保留窗口。
最小配置
| 规模 | 核心时序存储 | 合理内存 | 建议磁盘 |
|---|---|---|---|
| 小规模自用 | 按实际节点数 | 2~4 GiB | 至少 40 GiB SSD |
| 100 节点 | 约 24–26 GiB | 6–8 GiB | 80–100 GiB SSD |
| 500 节点 | 约 120 GiB | 16 GiB | 250 GiB SSD/NVMe |
以上容量按默认 3 秒采样周期和默认数据保留策略估算。实际占用还取决于磁盘与网卡数量、采样完整度,以及 billing 模式下的流量数据量。内存不足 4 GiB 时应启用交换空间。
写入来源
节点每轮上报会产生:
- 当前指标更新。
- 历史指标写入。
- 磁盘明细写入。
- 可用时写入物理磁盘温度历史。
- 网卡明细写入。
- 前台缓存刷新。
- 告警 dirty 标记。
默认节点间隔是 3 秒。节点数量增加时,数据库写入量线性增加。
降低写入量
按以下顺序降低写入量:
- 增大节点上报间隔,例如
push 10。 - 缩短常规指标原始采样、网卡原始指标或五分钟流量明细的保留期。
- 只在需要计费时启用
billing流量模式。 - 降低 P95 节点数量,只给需要计费的节点开启。
- 使用独立 PostgreSQL。
数据保留
常规指标原始采样:
database:
metrics_raw_retention_days: 8
常规指标使用 1 小时时间分块,并在 1 天后无损压缩。原始采样、15 分钟聚合和 1 小时聚合分别按配置值、16 天和 32 天独立保留。CPU 温度、压力停顿信息(PSI)和物理盘温度采用相同的保留策略。
网卡原始指标和服务检查:
database:
retention_days: 45
五分钟流量明细:
database:
traffic_retention_days: 90
nic_metrics 继续使用 1 天时间分块,在 7 天后压缩,并执行独立的保留策略。traffic_5m 继续使用行式存储。延长网卡原始指标或五分钟流量明细的保留期会增加存储占用,同时扩大流量重建的可用时间范围。
Redis
Redis 用于运行时状态和热点缓存。生产环境应启用 Redis;使用 --no-redis 时,热点状态会在进程重启后丢失。
反向代理
反向代理应启用 keep-alive,并保留 Host、X-Forwarded-For、X-Forwarded-Proto。API 和前端应保持同源部署。