spacewander opened a new issue #3517:
URL: https://github.com/apache/apisix/issues/3517
When resolving domain, currently we take one of the DNS record randomly.
When we want to do service discovery via DNS, sometimes we hope the domain
resolving will return all the records. For example, with:
```
"nodes": {
"test.consul.service": 1
}
```
We may want to get all IPs instead of a random one.
So my purpose is to provide a per-node dns selector to control the behavior.
For example,
```
"nodes": {
{"host": "test.consul.service", "weight": 1, "selector": "random"}
}
```
is equal to previous configuration.
While
```
"nodes": {
{"host": "test.consul.service", "weight": 1, "selector": "all"},
{"host": "1.1.1.1", "weight": 1}
}
```
with `test.consul.service` be resolved as `1.1.1.2` and `1.1.1.3` will get
this result:
```
"nodes": {
{"host": "1.1.1.1", "weight": 2},
{"host": "1.1.1.2", "weight": 1},
{"host": "1.1.1.3", "weight": 1},
}
```
Note that all the IPs from `test.consul.service` share the same weight.
And the selector doesn't affect SRV record, which is a difference story.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]