[Feature Request] High availibility / cluster mode
- Dominant language
- Go
- Stars
- 4k
- Forks
- 332
- Avg merge
- 19h 9m
- Merged PRs (30d)
- 137
Description
Make it possible to run the server/schedulers multiple times (High availibility) in Kubernets, Swarm,.. but so that jobs do not run twice (do not get executed from other servers)
I saw some other simpler projects using: [Raft](https://github.com/hashicorp/raft) or redis to atomicly lock jobs and distribute configuration.
Also finding other servers/schedulers dynamically with: [go-discover](https://github.com/hashicorp/go-discover )
Contributor guide
Research direction
The issue names no files, tests, or entry points. Begin by mapping how multiple server and scheduler instances currently coordinate jobs, then evaluate the proposed Raft, Redis, and go-discover approaches for Kubernetes or Swarm. Done means a defined high-availability design that prevents duplicate execution and covers configuration and discovery, but implementation details and acceptance tests are unspecified.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes, redis
- Domain
- backend, distributed-systems, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100