Skip to content
This repository has been archived by the owner on Nov 9, 2022. It is now read-only.

Switch leader election to lease #77

Closed
timebertt opened this issue Sep 7, 2020 · 4 comments · Fixed by #119
Closed

Switch leader election to lease #77

timebertt opened this issue Sep 7, 2020 · 4 comments · Fixed by #119
Labels
area/scalability Scalability related kind/enhancement Enhancement, improvement, extension

Comments

@timebertt
Copy link
Contributor

How to categorize this issue?

/area scalability
/kind enhancement
/priority normal

What would you like to be added:

Once kubernetes-sigs/controller-runtime#1147 has been released and vendored, we should come back to the default leader election settings again and rather switch to the lease object for leader election.

Why is this needed:

We have seen significant scalability problems, when running more than 100 Shoot grm instances in one Seed each doing leader election on configmaps every 2s.
We were able to workaround this issue with #72 and gardener/gardener#2668 but we should switch to leases for having a long-term solution.

@timebertt timebertt added the kind/enhancement Enhancement, improvement, extension label Sep 7, 2020
@timebertt
Copy link
Contributor Author

Good news, kubernetes-sigs/controller-runtime#1147 was merged in the meantime and [email protected] just got released (including the configurable leader election lock), so we will probably be able to vendor the new release soon :)

@rfranzke
Copy link
Contributor

ℹ️ Depends on revendoring sigs.k8s.io/[email protected] in gardener/gardener.

@rfranzke
Copy link
Contributor

I guess this can be done now after #105, right @timebertt? I think the default is now configmapsleases already, so is this issue only about setting the default to leases then?

@timebertt
Copy link
Contributor Author

I think the default is now configmapsleases already, so is this issue only about setting the default to leases then?

Yes, exactly.
We probably have to do some migration logic in g/g in order to fully migrate to leases.
I guess, we can't simply change the default here, as users might skip releases of g/g or clusters might be hibernated for a long time, so that they skip a grm deployment using the configmapsleases lock.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area/scalability Scalability related kind/enhancement Enhancement, improvement, extension
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants