Openshift 如何定义一个pod对另一个pod的顺序或依赖性

Openshift 如何定义一个pod对另一个pod的顺序或依赖性,openshift,Openshift,在docker compose中,我们有“dependence_on”标记,用于定义一个容器对另一个容器的依赖性。 例如: peer0.org1.example.com: container_name: peer0.org1.example.com . . . depends_on: - orderer.example.com - couchdb openshift中是否有类似的方法来定义依赖关系?首先,您应该构建您的服务,以便它们可以以任何顺序启动 在Kubernetes中,在启动之

在docker compose中,我们有“dependence_on”标记,用于定义一个容器对另一个容器的依赖性。 例如:

peer0.org1.example.com:
container_name: peer0.org1.example.com
.
.
.
depends_on:
  - orderer.example.com
  - couchdb

openshift中是否有类似的方法来定义依赖关系?

首先,您应该构建您的服务,以便它们可以以任何顺序启动

在Kubernetes中,在启动之前确保另一个服务处于活动状态的方法之一是等待initContainer中的可用性


然而,这个世界并不理想,有时你真的需要依赖关系,afaik Mirantis在K8S上部署OpenStack控制平面时遇到了这个问题,这导致了一个选项是检查任何依赖关系,例如通过HTTP调用检查所需的POD是否已启动。当这些探测失败时,pod将不会出现在相应服务的端点中,因此不会以这种方式接收任何流量,例如通过入口。一旦相关吊舱启动,您的吊舱也将被视为可用

看看statefulset是否能够在您的用例中提供帮助。这些是Kubernetes 1.7版的测试版,是早期版本Petset的替代品。