Welcome! Log In Create A New Profile

Advanced

upstream hash consistent seems to depend on order of DNS entries

Ian Morris Nieves
February 01, 2020 02:50PM
Hello all,

Here is the setup:
- I am running nginx in a single docker container and it has an upstream to a docker service which is composed of 3 docker containers (which happens to be php-fpm)
- the service is configured to _not_ expose a single virtual ip address (vip), instead the service exposes the ip addresses of all 3 containers through docker’s built-in DNS. When this DNS is asked for the IP address of the service it will respond with a list of 3 IP address but the list will rotate in round-robin fashion each time a lookup is performed. Thus the first IP in the list will not be the same for any 2 consecutive lookups.

My first question is:
Is it the correct behavior that consistent hashing depends on the order of IP addresses in the DNS query response? I can imagine arguments either way, and it is possible that this critical detail is outside the scope of consistent hashing. I will also forward this question to the author of Ketama.

My last question is:
Does is make sense to give nginx the capability to do consistent hashing that is not dependent on the order of IP addresses in the DNS query response? Perhaps it can order/sort the IP addresses in the response into some canonical ordering. I am finding that Docker (unlike Kubernetes) forces me to receive my DNS query responses with IP addresses shuffled in round robin. Docker will not allow me to receive “consistently” ordered IP addresses in a DNS query response. Perhaps in addition to the “consistent” flag in nginx, there could also be a flag like “sorted-ip” which will sort the IP addresses before applying the the hash algorithm.

Best,
Ian
_______________________________________________
nginx mailing list
nginx@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx
Subject Author Posted

upstream hash consistent seems to depend on order of DNS entries

Ian Morris Nieves February 01, 2020 02:50PM

Re: upstream hash consistent seems to depend on order of DNS entries

Maxim Dounin February 03, 2020 08:06AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 298
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready