kubeedge / sedna

AI tookit over KubeEdge
https://sedna.readthedocs.io
Apache License 2.0
506 stars 164 forks source link

Add GlobalManager high availability support #66

Open llhuii opened 3 years ago

llhuii commented 3 years ago

What would you like to be added/modified: Add GlobalManager multi-instance support for high availability and high throughput.

Why is this needed: Currently GlobalManager is deployed as a k8s deployment with replicas=1, and only one instance is supported.

For GlobalManager's high availability and high throughput, we need to deploy GlobalManager with replicas >=2.

llhuii commented 3 years ago

Proposal

Leverage the client-go leader-election feature, see the example.

Also see these --leader- options in kube-controller-manager.

--leader-elect:   Start a leader election client and gain leadership before executing the main loop. Enable this when running replicated components for high availability.
llhuii commented 3 years ago

see my personal https://github.com/llhuii/sedna/issues/6 I will take an english version