标准答案

  1. 基于 CPU 利用率时通常相对于 Pod 的 CPU request 计算,request 不合理会改变扩缩容判断。
  2. 自定义指标可以使用请求速率、队列积压或延迟,但必须定义采集、聚合、窗口和异常数据处理。
  3. HPA 计算出更多副本后还要能调度、拉取镜像并通过 readiness;资源不足时副本数可能增加但 Pod 仍 Pending。
  4. 扩缩容要设置稳定窗口、上下限和缩容保护,避免指标抖动造成频繁变更。

题目解析

HPA 根据目标指标计算期望副本数,CPU 利用率通常相对于 request 计算,因此 request 的大小会直接影响结果。自定义指标可以表达请求速率、队列长度或并发,但必须明确采集窗口、聚合、缺失值和异常值处理。

HPA 只负责提出副本期望,新的 Pod 还要通过调度、拉镜像、启动和 readiness 才能提供容量。CPU 低但队列高,可能是单请求锁、I/O、连接池或下游瓶颈;扩容器资源不足时副本数会增加而 Pod 仍 Pending。

常见误区

  • 误区:只用 CPU 指标解决队列积压。改正:选择能反映业务瓶颈的队列、请求速率、并发或延迟指标。
  • 误区:忽略 request 和指标采集延迟。改正:校准 request、观察窗口、稳定窗口和扩容后就绪时间。

作者信息