Kubernetes Readiness:就绪探针要回答“现在能接流量吗”

背景 服务进程活着,不等于已经完成缓存预热或可以稳定接流量。把这些状态混在同一个探针里,可能导致依赖故障时不断重启。 核心判断 readiness 只决定是否接收流量,liveness 判断是否需要重启。 启动较慢的服务使用 startupProbe,给初始化单独的时间预算。 检查保持轻量,依赖失效是否摘流量要结合降级能力决定。 最小示例 下面保留核心逻辑;业务类型、调用入口和环境配置按项目补齐。 readinessProbe: httpGet: { path: /readyz, port: 8080 } periodSeconds: 5 failureThreshold: 3 边界与误区 配置片段应放在容器字段下。把数据库波动直接绑定 liveness,容易放大故障;把所有外部依赖绑定 readiness,也可能让整个服务同时摘除。 验证方式 分别模拟冷启动、依赖不可用和退出过程,观察探针结果、Service 端点和请求成功率,确认摘流量不会引发重启风暴。 小结 readiness 判断服务是否能接流量,liveness 只判断进程是否需要重启。

2026年9月6日 · 1 分钟 · BvBeJ