在docker撰写中,我们有“depends_on”标记,用于定义一个容器在另一个容器上的开始停用。 例如:如何定义一个窗格的排序或依赖关系
peer0.org1.example.com:
container_name: peer0.org1.example.com
.
.
.
depends_on:
- orderer.example.com
- couchdb
是否有openshift类似的方式来定义的依赖?
在docker撰写中,我们有“depends_on”标记,用于定义一个容器在另一个容器上的开始停用。 例如:如何定义一个窗格的排序或依赖关系
peer0.org1.example.com:
container_name: peer0.org1.example.com
.
.
.
depends_on:
- orderer.example.com
- couchdb
是否有openshift类似的方式来定义的依赖?
一种选择是使用Readiness Probes来检查任何依赖关系,例如通过进行HTTP调用来检查所需的pod是否启动。当这些探测器失败时,吊舱不会显示在相应服务的端点,因此不会以这种方式接收任何流量 - 例如通过Ingress。一旦相关的豆荚出现了,那么您的豆荚也将被视为可用。
首先,你应该建立你的服务,以便它们可以以任何顺序提出。
在Kubernetes中,在进入启动之前可以确保其他服务还活着的方法之一是在initContainer中等待可用性。
世界并不理想,虽然,有时候你真的需要依赖关系,据我所知Mirantis不得不对K8S OpenStack的控制平面,导致https://github.com/Mirantis/k8s-AppController部署这个问题
看看StatefulSets是否能够帮助你的用例。这些都是Kubernetes 1.7中的测试版,并且是早期版本的PetSets的替代品。 https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/ –