Open1

マスターノードのcontrollerの冗長化について

ta8i2chi8ta8i2chi8

controllerやschedulerが冗長化されていると、意図せず複数回の処理が行われてしまう可能性がある。
そのため、そのような競合を防ぐために、leader electionという仕組みが用意されている。

競合を防ぐために Kubernetes では clinet-go に Leader election の仕組みが用意されています。 Leader election を使用するとリーダーとなる Controller が reconciliation loop を実行している間, 他の Controller は待機します。 リーダーが辞任した場合待機していた Controller がリーダーに昇格し, すぐに処理を再開することができます。

https://d-kuro.github.io/post/kubernetes-leader-election/