Kubernetes 性能瓶颈排查指南
随着业务量增长,Kubernetes 集群经常出现以下问题:
- Pod 启动慢
- API 响应慢
- 节点 CPU 飙高
- 服务无故中断
这些现象通常意味着性能瓶颈正在影响系统稳定性。
性能瓶颈全局视角
排查时需从以下五个维度进行系统性分析:
- 控制面组件
- API Server 响应慢
- Etcd 压力大
- 控制面组件异常
- 节点层面
- CPU / Memory / Disk I/O 饱和
- Kubelet 资源不足
- 宿主机负载高
- Pod 层面
- OOM (Out Of Memory)
- CPU Throttling
- Pending / CrashLoopBackOff
- 容器冷启动慢
- 网络层面
- DNS 延迟
- Service 负载不均
- 网络丢包 / 延迟
- 存储层面
- PV 响应慢
- PVC 挂载失败
- IO 延迟高
核心性能瓶颈定位指标
1. API Server 响应慢
可使用 Prometheus + Grafana 面板查看关键指标:
apiserver_request_duration_seconds:请求耗时分布apiserver_request_count:请求总量与错误率etcd_disk_wal_fsync_duration_seconds:Etcd 磁盘同步耗时
若发现 API Server 延迟过高,需检查 Etcd 集群健康状态及控制面资源配额。
2. 节点层面监控
关注宿主机及 Kubelet 的资源使用情况:
node_cpu_usage_seconds_total:CPU 使用率node_memory_working_set_bytes:内存工作集node_filesystem_avail_bytes:磁盘可用空间kubelet_runtime_operations_errors_total:运行时操作错误
当节点 CPU 或内存接近 100% 时,需考虑扩容或优化调度策略(如设置 LimitRange 和 ResourceQuota)。
3. Pod 层面诊断
针对具体应用容器的异常表现:
- OOM Kill:检查
container_memory_usage_bytes是否超过 limit。 - CPU Throttling:观察
container_cpu_cfs_throttled_seconds_total。 - 重启频繁:通过
kubectl describe pod查看 Last State 及事件日志。
4. 网络与存储排查
- 网络:使用 或 测试 CoreDNS 解析;检查 CNI 插件日志确认丢包情况。

