neondatabase / neon

Neon: Serverless Postgres. We separated storage and compute to offer autoscaling, code-like database branching, and scale to zero.
https://neon.tech
Apache License 2.0
15.3k stars 446 forks source link

Epic: safekeepers dynamic membership change (Phase 1) #4782

Open arssher opened 1 year ago

arssher commented 1 year ago

We need to be able to move tenants between safekeepers:

  1. To migrate all tenants on one safekeeper if it dies.
  2. To migrate one tenant if we find that load balancing needs it.

Eventually a proper dynamic membership change two step algorithm should be implemented (), which works correctly regardless of old safekeeper(s) state. However this is complicated, so let's do it in following large steps:

### Tasks
- [ ] #4783
- [ ] https://github.com/neondatabase/neon/issues/6340
- [x] Migration script https://github.com/neondatabase/cloud/pull/15227
- [ ] https://github.com/neondatabase/cloud/issues/7931 required for migration without endpoint restart
- [ ] https://github.com/neondatabase/neon/issues/8700
stepashka commented 1 year ago

we aim to work on this this year

arssher commented 3 months ago

Migration script is at https://github.com/neondatabase/cloud/pull/15227