DNS round-robin based on SRV weight/priority
- Dominant language
- Go
- Stars
- 30.1k
- Forks
- 4.6k
- Avg merge
- 1d 18h
- Merged PRs (30d)
- 39
Description
Since consul already have SRV records support, is it possible to implement following RR scheme:
1. Check script change SRV priority/weight for node with consul client
2. Consul agent use SRV weight for RR response for .service. requests. For example when one of nodes have LA> 10, we set it priority as 1, other node has default priority 0, now RR will return A record for node with priority 0 75%, for priority 1 25%. After LA becomes lower then 1, we set priority=0 for node and RR return 50% for each of two nodes.
Contributor guide
Research direction
Start with Consul's existing SRV-record support and the Consul agent path that serves .service DNS requests. Trace how service health or node state reaches DNS responses, then determine how SRV priority and weight should produce the requested proportions. Done means the scheme is implemented and its priority/weight behavior is covered by tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- distributed-systems, networking
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100