bitwalker / libcluster

Automatic cluster formation/healing for Elixir applications
MIT License
1.98k stars 188 forks source link

DNSSRV strategy not compatible with kube-dns #123

Open mergefailure opened 4 years ago

mergefailure commented 4 years ago

since google kubernetes switched from core-dns to kube-dns - this no longer works, just causes confusion.

bitwalker commented 4 years ago

What is the recommended alternative? If you have a suggestion or link to the appropriate changelog, I'm happy to take it from there.

In any case, PRs to remove a strategy aren't merged. This library uses a deprecation cycle to remove APIs or implementations; so unless we can update this strategy to transparently work with the changes in k8s, we'd need to keep it around for backwards-comptability for at least one major release.

seivan commented 4 years ago

I haven't tested DNSSRV, and I wouldn't recommend it unless you really can't afford/use a headless services, I am not sure it's a good idea to remove it for people running older clusters. But I am questioning merging the implementations in https://github.com/bitwalker/libcluster/pull/115 but I'd love to get some answers first.

The thing is.... EKS is notorious for lagging and before 1.10 kube-dns was the default one, until 1.12 which replaced it with CoreDNS

since google kubernetes switched from core-dns to kube-dns

~1. Why would that make it break?~ ~2. Could you link to an official statement saying that?~

Sometimes when printing resources in a cluster, it might say kube-dns, but that doesn't mean it's not runningCoreDNS (see EKS).

Edit: This issue answers the questions: https://github.com/bitwalker/libcluster/issues/121