使用Kubernetes来实现领导者选举算法

使用Kubernetes来实现领导者选举算法。

“领导者选举算法是什么?” (What is the leader election algorithm?)

领导者选举算法是一种分散算法,从分散的任务和计算机中选择出领导者,并选择出一个能够统筹全局的领导者。

Kubernetes的实施。

在Kubernetes中,已经为GCR提供了领导器选举算法的容器镜像,因此可以轻松实现。

kubectl run leader-elector --image=k8s.gcr.io/leader-elector:0.5 --replicas=3 -- --election=example

当指定日志后,可获知哪个Pod被选为领导者。

kubectl logs [pod name]

结束

这次我们将Kubernetes构建成简易的领导者选择算法。虽然只是选择领导者的实现,但通过使用sidecar,我们可以对应用程序的副本进行领导者选择。

请参考以下网址。

    https://kubernetes.io/blog/2016/01/simple-leader-election-with-kubernetes/