更新时间:2025-08-12 GMT+08:00
健康检查
健康检查是指容器运行过程中,根据需要,定时检查容器中应用健康状况。
云容器实例提供了以下几种健康检查的方式:
- 存活探针(liveness probe),探测应用是否已经启动:该检查方式用于检测容器是否存活,类似于执行ps命令检查进程是否存在。如果容器的存活检查的结果为失败,云容器实例会对该容器执行重启操作;若容器的存活检查成功则不执行任何操作。
- 就绪探针(readiness probe),探测应用业务是否已经就绪:该检查方式用于检测容器是否准备好开始处理用户请求。一些程序的启动时间可能很长,比如要加载磁盘数据或者要依赖外部的某个模块启动完成才能提供服务。这时候程序进程在,但是并不能对外提供服务。这种场景下该检查方式就非常有用。
- 启动探针(startup probe),探测应用是否已经启动:该检查方式用于检测容器是否已经启动成功。它会在容器启动时进行检查,以确保应用程序能够正常启动并运行。
健康检查方式
- 登录云容器实例 CCI2.0控制台。
- 在创建容器组配置健康检查过程,选择开启存活探针、就绪探针或启动探针。
- HTTP请求检查
探针往容器发送HTTP请求,如果探针收到2xx或3xx的返回状态码,说明容器是健康。
- TCP端口检查
探针往容器发送TCP端口检查请求,如果探针收到2xx或3xx的返回状态码,说明容器是健康。
- 执行命令检查
探针执行容器中的命令并检查命令退出的状态码,如果状态码为0则说明健康。
例如,您若希望使用“cat /tmp/healthy”命令检查/tmp/healthy目录是否存在,则可以如下图配置。
图1 检查
- HTTP请求检查
公共参数说明
参数 |
参数说明 |
---|---|
检测周期 |
执行探测的时间间隔,单位为秒。例如,设置为10,表示健康检查为每10秒探测一次。 |
延迟时间 |
容器启动后启动探针的延迟时间,单位为秒。例如,设置为10,表示从容器启动后10秒开始探测。 |
超时时间 |
探针超时后等待的超时时间,单位为秒。例如,设置为10,表明执行健康检查的超时等待时间为10秒,如果超过这个时间,本次健康检查就被视为失败。若设置为0或不设置,默认超时等待时间为1秒。
说明:
执行命令检查时,如果执行的命令在镜像中会生成子进程,可能会导致timeoutSeconds无法生效。 |
成功阈值 |
探针在失败后,被视为成功的最小连接次数。例如,设置为1,表明探针失败后连续成功探测1次,认为健康检查成功。 |
最大失败次数 |
被任务健康检查失败的探测连续失败次数。例如,设置为3,表明探针连续3次探测失败后,认为健康检查失败。此时,容器被视为不健康,触发重启操作。 |
父主题: 负载管理