From 568e2684a262616fa3c25c130a6724967c50eff4 Mon Sep 17 00:00:00 2001 From: Ahmad Sherif Date: Mon, 2 Sep 2019 13:30:05 +0000 Subject: Document DB load balancing SRV records handling --- doc/administration/database_load_balancing.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/doc/administration/database_load_balancing.md b/doc/administration/database_load_balancing.md index 64eca0b00f6..3b1151ae570 100644 --- a/doc/administration/database_load_balancing.md +++ b/doc/administration/database_load_balancing.md @@ -146,7 +146,11 @@ The following options can be set: | `use_tcp` | Lookup DNS resources using TCP instead of UDP | false | If `record_type` is set to `SRV`, GitLab will continue to use a round-robin algorithm -and will ignore the `weight` and `priority` in the record. +and will ignore the `weight` and `priority` in the record. Since SRV records usually +return hostnames instead of IPs, GitLab will look for the IPs of returned hostnames +in the additional section of the SRV response. If no IP is found for a hostname, Gitlab +will query the configured `nameserver` for ANY record for each such hostname looking for A or AAAA records, eventually +dropping this hostname from rotation if it can't resolve its IP. The `interval` value specifies the _minimum_ time between checks. If the A record has a TTL greater than this value, then service discovery will honor said -- cgit v1.2.1