搜索结果: "hpa"
共找到 16 个页面
K8s 容量规划、Pod QoS 与成本优化实战指南
| HPA | 副本扩缩容 | CPU 利用率 / QPS / 自定义指标 |
> ⚠️ **HPA 与 VPA 不要同时基于 CPU/Memory 控制同一对象** — VPA 调大 request 会使 HPA 利用率下降触发缩容,反之触发扩容,两者相互干扰。
**HPA 没动作/震荡的排障:** `kubectl get hpa` 出现 `unknown/100m` 时,问题通常不在业务而在指标链路或资源声明——① metrics-server 是否正常工作;② Deployment 是否设了 CPU request(利用率计算基准)。HPA 两个前提:指标采集连续可信 + 目标资源有明确 request。最危险的不是完全不扩容,而是**扩得慢、缩得快**(流量波动下持续震荡),修复用 `stabilizationWindowSeconds: 300` 降低缩容抖动。
弹性伸缩层 → HPA / VPA / Cluster Autoscaler / Karpenter
| **四:弹性&成本** | 利用率 + SLA 兼顾 | HPA / VPA 推荐 / Cluster Autoscaler / Batch 迁移 Spot / 节点池碎片治理 |
K8s 故障排查实战 — 20 个生存法则
### 法则 12:HPA 没动作时,本质上要看「它有没有可信数据」
kubectl get hpa 出现 unknown/100m 这类状态,问题通常不在业务,而在指标链路或资源声明。高频原因:metrics-server 没正常工作;Pod 没设 CPU request,利用率无法计算。HPA 两个前提缺一不可:**指标采集连续可信;目标资源有明确 request 作为计算基准**。
排障同时检查:HPA 事件、metrics-server 状态、Deployment 的 resources 配置。伸缩故障里最危险的不是完全不扩容,而是**扩得慢、缩得快**——流量波动场景下制造持续震荡,修复用 stabilizationWindowSeconds: 300 降缩容抖动(详见下方事故复盘)。
| 02:17:30 | 新 Pod 尚未稳定承接流量,HPA 同时触发缩容 | 剩余健康 Pod 压力陡增 |
**为什么误判成数据库瓶颈:** 报警最明显的是订单错误率和数据库连接池打满;业务监控看到请求大量堆积在数据库调用阶段;网关 502 只是入口表象,无法直接暴露发布链路问题。而连接池打满实为连锁反应——旧 Pod 退出不优雅,部分请求被截断触发上游重试;新 Pod 预热不足就开始接流量,线程/连接池/CPU 同时受压;HPA 缩容过于激进,本就不多的健康副本继续减少。
K8s 面试通关指南 — 100 道核心题全解析
| 19 | 什么是 HPA? | 根据 CPU/指标自动水平扩展 Pod 数量 | — |
| 32 | 集群性能优化? | 节点级(合理配置资源)+ Pod 级(requests/limits + 探针)+ 集群级(HPA + 调度策略) |
| 43 | 自动伸缩机制? | HPA(Pod 级)+ VPA(资源级)+ Cluster Autoscaler(节点级) |
| 98 | 资源利用率优化? | 合理 requests/limits + VPA + HPA + Cluster Autoscaler + 资源清理 |
K8s 生产环境 10 大故障复盘 — 集群级灾难到应用级问题
| 9 | HPA 抖动风暴 | 应用级 | P2 中等 | 冷却窗口 + 指标选择 |
### 案例 9:HPA 抖动风暴
| HPA | 避免纯 CPU、设冷却窗口、选稳定指标 |
| [[resource-rbac-scheduling-troubleshooting]] | 案例 2/6/9:OOMKilled / 资源配额 / HPA |
DevOps 技术面试指南 — 容器/云原生/内核 59 题
| 35 | K8s 集群性能优化? | 调整规模 + 调度策略 + HPA/VPA + etcd 优化 + 本地存储 + 网络插件 + 定期清理 | [[k8s-resource-limits-configuration]] |
| 41 | 弹性伸缩系统? | HPA + VPA + Cluster Autoscaler + 冷却期 + 预测性伸缩 + 应用级弹性 |
K8s 多集群 + Istio 灰度发布 — 全球多活流量治理生产指南
| 弹性 | HPA + Cluster Autoscaler / Karpenter | 水平扩缩容 |
| HPA | CPU(65%) + RPS 双指标,Canary 副本数不宜过小 |
K8s 滚动更新无损发布误区 — RollingUpdate 真相与真正无感发布体系
真实事故(电商订单链路,成功率 99.97% → 72%):一次 ConfigMap 更新触发滚动发布,多个配置叠加成系统性脆弱——preStop 没给足摘流时间 + terminationGracePeriodSeconds 过短(旧 Pod 被提前 SIGKILL)+ readinessProbe 过早通过(新 Pod 缓存/连接池未预热就接流量)+ HPA 依据 CPU 迅速缩容(副本震荡)。修复组合:preStop +10s 缓冲、readinessProbe 延迟到 15s 且成功阈值 2 次、HPA 加 `stabilizationWindowSeconds: 300`。教训:发布窗口的脆弱性来自配置组合而非单点,验证流程必须演练「新 Pod 预热慢于流量切换」场景。
| [[k8s-production-incident-case-studies]] | K8s 生产 10 大故障复盘(PDB/滚动更新/ConfigMap/HPA 等实战案例)
Wiki Log
- 说明:10 大 K8s 生产故障案例(etcd/API Server/证书/节点/PDB/配额/HPA/ConfigMap/滚动更新/镜像),每个案例含故障链、根因、排查命令、止血、预防
| 2026-08-31 | ingest | K8s 故障排查实战:20 个生存法则(微信公众号「云上架构」) | 新建 raw/articles/2026-08-31-k8s-troubleshooting-20-survival-rules.md + concepts/kubernetes/k8s-troubleshooting-survival-rules.md(20 法则六维框架 + 5 分钟分诊法 + ConfigMap 滚动雪崩事故复盘 + 治理四阶段 + 排障检查清单);增量合并 13 页:principles 分诊四连 / quick-ref CrashLoop 启动依赖 + Ingress 命名端口 / rolling-update 6.5 组合陷阱 / capacity HPA 排障 + stabilizationWindowSeconds / pending 资源碎片化 / storage FailedAttachVolume + WaitForFirstConsumer / jvm MaxRAMPercentage / pod-evicted emptyDir sizeLimit / container-networking NetworkPolicy 数据路径 / istio-canary istio-proxy 503 + 重试放大 / scheduling 刚性约束锁死 / configmap 热更新三问 / statefulset 删 Pod ≠ 换数据;index +1 页(Total 172→173) |
Wiki Schema
- hpa: 自动伸缩
K8s Pod Evicted 驱逐 — 根因排查与运维应对三板斧
- [[k8s-production-incident-case-studies]] — K8s 生产 10 大故障复盘(PDB / 滚动更新 / HPA 等实战案例)
Kubernetes 调度器为什么做不到全局最优?—— 原理与局限
- HPA 自动扩容新增大量 Pod
K8s 存储生产配置与排障实战:PV/PVC/StorageClass 避坑指南
pathPattern: "{.PVC.name}"
K8s 高频问题一站式排查清单 — 10 大故障场景快速参考
- [[k8s-production-incident-case-studies]] — K8s 生产 10 大故障复盘(etcd/证书/节点/PDB/配额/HPA/ConfigMap)
资源配额 / OOMKilled / RBAC / 调度排障
tags: [kubernetes, troubleshooting, security, hpa, deployment]
Nginx 实时推送生产实践全解:SSE 与 WebSocket 的原理、架构、工程化与生产级落地
- **HPA** — 基于连接数指标(custom metrics)或 CPU 伸缩
Wiki Index
- [[k8s-production-incident-case-studies]] — K8s 生产 10 大故障复盘:etcd/API Server/证书/节点/PDB/配额/HPA/ConfigMap