4. 容量规划基础:定义、目标与核心指标
容量规划(Capacity Planning)是确保 IT 资源在满足当前业务负载的同时,能够以可预测的成本和性能水平支撑未来增长的系统性方法。在云原生环境中,容量规划不仅是成本优化的手段,更是镜像安全水位巡检与签名验证策略能否稳定落地的底层保障。
4.1 容量规划的定义与核心目标
容量规划的本质是供需平衡——将业务需求(负载)映射到基础设施资源(供给),并预留合理的缓冲区间。其核心目标包括:
- 性能保障:确保 CPU、内存、存储、网络 IO 等资源在峰值负载下仍能满足 SLO(服务等级目标)。
- 成本控制:避免过度配置导致的资源浪费,同时防止因资源不足引发的业务中断。
- 风险规避:通过提前规划应对突发流量、节点故障或安全巡检任务(如镜像扫描、签名验证)带来的资源冲击。
- 自动化决策:为 HPA(水平 Pod 自动扩缩)、VPA(垂直 Pod 自动扩缩)和集群自动缩放提供数据驱动依据。
关键认知: 容量规划不是一次性活动,而是持续迭代的闭环过程。在 DevSecOps 实践中,每次镜像签名验证或安全水位巡检都会产生额外的资源开销,必须纳入容量模型。
4.2 核心指标:CPU、内存、存储、网络 IO
以下表格总结了四大核心资源指标的定义、度量单位及在安全巡检场景下的典型影响:
| 资源类型 | 核心指标 | 常用单位 | 安全巡检关联点 |
|---|---|---|---|
| CPU | 利用率、饱和度、等待队列长度 | 核数(Cores)、毫核(m) | 镜像漏洞扫描(Trivy/Clair)会大量消耗 CPU;Cosign 签名验证涉及非对称解密,单次操作约消耗 0.1-0.3 核秒 |
| 内存 | 使用量、页错误率、OOM 事件 | 字节(GiB/MiB) | 镜像层缓存、SBOM 解析、策略引擎加载均占用内存;内存不足会导致安全巡检任务被 OOMKill |
| 存储 | IOPS、吞吐量、延迟、容量使用率 | IOPS、MB/s、ms、GiB | 镜像仓库存储签名元数据;大规模镜像扫描产生临时文件;日志审计需要持久化存储 |
| 网络 IO | 带宽、吞吐量、连接数、丢包率 | Mbps/Gbps、并发连接数 | 镜像拉取/推送、签名验证请求(到 OCI 仓库)、安全策略下发均依赖网络 IO;带宽不足会延长巡检窗口 |
4.3 容量规划与安全巡检的关联
安全巡检(镜像扫描、签名验证、策略审计)不是免费的。每一次巡检都会消耗集群资源,如果容量规划不考虑这些额外开销,可能导致:
- 巡检任务饿死:生产业务 Pod 抢占全部资源,安全巡检 Pod 无法调度。
- 签名验证超时:网络 IO 或 CPU 不足导致 Cosign 验证失败,误报为“镜像不可信”。
- 存储爆炸:未规划临时存储上限,大量扫描结果和 SBOM 文件写满节点磁盘。
实践原则: 将安全巡检视为“有优先级的批处理作业”。在容量规划中,为安全巡检预留 5%-10% 的 CPU 和内存余量,并为镜像仓库和扫描器配置独立的 IOPS 保障。
下图展示了容量规划与安全水位巡检之间的数据流和资源依赖关系:
4.4 容量规划在镜像安全场景中的关键考量
在实施镜像安全水位巡检和 Cosign 签名验证时,以下容量规划要点需要特别关注:
- 并发扫描的 CPU 峰值:当大批量镜像同时入仓触发扫描时,CPU 利用率可能瞬间飙升至 80% 以上。建议为扫描器设置 CPU 限流(例如
--cpu 4),并预留 2-4 核的缓冲。 - 签名验证的冷启动开销:Cosign 首次验证需要从 OCI 仓库拉取签名对象和公钥,网络 IO 延迟可能达到 200-500ms。建议在容量模型中为签名验证设置独立的网络带宽保障。
- 临时存储水位:镜像扫描产生的 SBOM 和漏洞报告文件可能快速膨胀。例如,扫描一个 2GB 的镜像可能产生 500MB 的临时数据。必须为巡检 Pod 设置
emptyDir大小限制。 - 巡检窗口时间预算:安全巡检通常有严格的 SLA(例如:镜像推送后 5 分钟内完成扫描和签名验证)。容量规划需要确保在并发峰值下仍能满足时间窗口。
常见陷阱: 只关注业务 Pod 的资源需求,忽略安全巡检任务的资源开销。结果导致在镜像批量发布时,安全巡检 Pod 因资源不足被 Pending,签名验证超时,CI/CD 流水线阻塞。
4.5 容量规划与安全巡检的协同工作流
以下 SVG 展示了从容量规划到安全巡检执行的完整协同流程:
4.6 容量规划成熟度模型
根据团队对容量规划与安全巡检的整合程度,可以分为以下三个成熟度等级:
| 成熟度等级 | 特征 | 安全巡检表现 |
|---|---|---|
| L1:被动响应 | 无容量规划,资源不足时手动扩容 | 巡检任务频繁 OOMKill 或 Pending,签名验证超时 |
| L2:主动监控 | 基于历史指标设置资源阈值和告警 | 巡检任务有基本资源保障,但高峰期仍可能延迟 |
| L3:动态优化 | 容量规划与安全巡检联动,自动调整资源预算 | 巡检任务始终有保障资源,签名验证延迟可控,巡检窗口 SLA 达标 |
进阶建议: 在 L3 成熟度下,可以将安全巡检的资源消耗指标(如扫描耗时、验证延迟)作为容量规划模型的输入特征,使用线性回归或时间序列预测来动态调整预留资源量。