9. 领导选举

Spring Cloud Kubernetes leader 选举机制使用 Kubernetes ConfigMap 实现了 Spring Integration 的 leader 选举 API。spring-doc.cn

多个应用程序实例争夺领导权,但领导权只会授予一个。 当被授予 leadership 时,leader 应用程序将收到带有 leadership 的应用程序事件。 应用程序会定期尝试获得领导权,并将领导权授予第一个调用方。 领导者将保持领导者状态,直到它从集群中删除,或者它获得其领导地位。 当领导被免职时,前一个领导会收到 application 事件。 删除后,集群中的任何实例都可能成为新的 leader,包括旧的 leader。OnGrantedEventContextOnRevokedEventspring-doc.cn

要将其包含在您的项目中,请添加以下依赖项。spring-doc.cn

Fabric8 Leader 实施spring-doc.cn

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-kubernetes-fabric8-leader</artifactId>
</dependency>

要指定用于领导选举的 configmap 的名称,请使用以下属性。spring-doc.cn

spring.cloud.kubernetes.leader.config-map-name=leader