我正在使用REST API创建部署/服务。我发送带有包含JSON对象的主体的POST请求,该JSON对象在Openshift上创建应用程序。在调用所有API之后,这些对象将被实例化。
我有2个依赖于mongodb部署的部署,但是此mongodb需要花一点时间才能开始运行,而依赖mongodb的两个部署则更早开始运行。由于mongodb连接失败(因为它尚未启动),因此这会破坏2个部署中的代码。
可能有2种方法可以解决此问题。
Openshift有什么方法可以实现?
最佳答案
无需为依赖项处理实现复杂的逻辑,而应使用Kubernetes的运行状况检查机制。如果您的应用程序启动但看不到Mongo DB,请使其崩溃。在Mongo DB联机之前,Kubernetes将继续重新启动它,并且您的应用程序将正常运行并可以正常运行。 Kubernetes不会将流量发送到尚未正常运行的实例。
文件:https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
关于mongodb - 等待其他部署开始运行,然后再创建其他部署?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50324677/