Namerd Load Balancing problems

Hi guys! I’m using Linkerd 1.3.4. I have multiple replicas (3) of the namerd service, and they are referenced by each Linkerd instance using a filesystem namer:

namers:
- kind: io.l5d.fs
  prefix: /disco
  rootDir: /disco

[...]

routers
- protocol: http
  label: foo
  servers:
  - port: 8080
    ip: 0.0.0.0
  interpreter:
    kind: io.l5d.namerd
    dst: /#/disco/namerd
    namespace: foo

The problem is that if I shutdown any of the namerd instances, then Linkerd stops resolving requests, even when there are two other namerd machines still up and working. This is what I get:

exceeded 10.seconds to unspecified while dyn binding /svc/1.1/GET/blue.example.com:8080/v1. Remote Info: Not Available

Any idea? Is my namerd setup correct or there is a better way to provide HA for this service (namerd)?

Thanks!

answered by @eliza in Slack:

eliza [1 day ago]
a better option for configuring fallback behavior for Namerd might be creating a new Linkerd router that routes to a dtab like namerd1 | namerd2 | namerd3 and then having the destination path for your Namerd interpreter point at that router

Thanks for sharing that here as well, @marzipan! I believe @fernandollaca-bbva confirmed in slack that this worked for him. :slight_smile:

Can you forward me the solution?
I am trying to have the linker discover the namerds using zookeeper.

1 Like