一、健康检查方式
在OpenShift的Deployment Config中,用户可以定义两种健康检查方式:
- Readiness Probe:检查应用是否已经就绪(原因是当应用刚刚开始启动的时候,应用需要进行其所依赖资源的准备工作,列如 加载class、获得数据库连接 等等),OpenShift通过检查Readiness Probe接口,只有在确认服务就绪后,才会将外界的流量转发至服务。如果检测失败之后,RC不会进行容器的恢复,并且不会转发流量到此容器上,这是和Liveness Probe最大的区别点。
当为正在运行的容器添加Readiness Probe时,如果新容器在启动时,健康检查失败的次数超过了配置的次数(通过 failureThreshold 设置,默认为3次)时,则将新容器标记为启动失败。当容器启动失败10分钟(通过 timeoutSeconds 设置,默认为10分钟)之后,OpenShift将会把这个新容器删除了,并且将配置回退到添加Readines Probe之后的旧配置,并使用旧配置再重新启动一个容器。回退的触发还可以通过
oc rollback app-cli 来完成。