couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Robert Samuel Newson <>
Subject Re: Checking for cluster peers using SRV records on startup
Date Fri, 07 Oct 2016 14:09:06 GMT
I'm a fan of the SRV approach to service discovery. Everything else requires new/fiddly/custom
infrastructure to support it.

> On 7 Oct 2016, at 02:57, Adam Kocoloski <> wrote:
> Hi all,
> Lately I’ve been thinking about how to ease the onramp for users to get a clustered
CouchDB setup running. I think the Kubernetes work shows a lot of promise. One of the aspects
of that work is the service discovery element; each node in a cluster should be able to automatically
find its peers and connect to them. Kubernetes accomplishes this using SRV records; a DNS
lookup for a given named service will return the FQDNs of all the live members of the “Pet
> The SRV approach is enough of a standard[1] that I wonder if we ought to code for it
directly in mem3. It’d eliminate the need for a “sidecar” container in Kubernetes deployments
and I can imagine that it will prove more generally useful. The idea would be for mem3 to
check if the CouchDB node is running in distributed node, and if it is, fire off a DNS lookup
on the domain name, then attempt to connect with any other targets that are included in the
record set in the DNS response.
> What do you think? If no one objects I’ll file a JIRA and see what we come up with.
> Adam
> [1]:

View raw message