Liveness Probe 是 Kubernetes 中用于检测容器健康状态的一种机制,属于 Kubernetes 的核心功能组件。以下是关于它的详细说明:
一、核心功能
存活检测 Liveness Probe 用于判断容器是否处于健康状态。如果探针连续失败,Kubernetes 会自动重启该容器。
自动重启机制
当 Liveness Probe 失败时,Kubernetes 会根据配置的 `restartPolicy`(如 `Always`、`OnFailure`、`OnFailureAfter` 等)决定是重启容器还是终止 Pod。
二、应用场景
处理异常状态
适用于检测容器内应用程序崩溃、死锁或资源耗尽等异常情况,确保服务可用性。
与 Readiness Probe 配合使用
- Readiness Probe判断容器是否准备好接收流量(如数据库连接可用、服务端口开放等)。
- 两者结合使用可避免“僵尸容器”(已停止但未重启的容器)占用资源。
三、配置示例
httpGet: 指定检测接口和端口(如 `/healthz` 端口)。 initialDelaySeconds
periodSeconds:检测周期(如 10 秒)。
四、对比其他方案
与 Knative 等其他容器编排工具相比,Kubernetes 的探针机制更注重资源利用率和系统稳定性,通过合理配置可平衡重启频率与冷启动时间。
综上,Liveness Probe 是 Kubernetes 提供的用于保障容器健康状态的核心功能组件,适用于多种场景以确保应用的高可用性。