<p>I'am testing Amazon EKS and I'd like to know if I need to remove kube-dns if I'd like to use external-dns instead ?</p>

<p>Today I'am using KOPS to create K8S clusters in AWS. And I'am using the cluster-internal DNS server (kube-dns) with the flag <code>--watch-ingress=true</code> to automatically create route53 "hosts" regarding my Ingress annotations.</p>

<p>I'd like to reproduce this behavior with EKS and I see this project : <a href="https://github.com/kubernetes-incubator/external-dns" rel="nofollow noreferrer">https://github.com/kubernetes-incubator/external-dns</a></p>

<p>But I don't know if if replaces kube-dns or if it works in addition of it.</p>

<p>Thank you for your help. </p>

Fred Mériot
<p><code>kube-dns</code> is for DNS resolution inside the cluster. It doesn't interfere with external, public DNS resolution. So, don't delete <code>kube-dns</code>.</p>

<p>Kops' <a href="https://github.com/kubernetes/kops/blob/master/dns-controller/docs/flags.md" rel="nofollow noreferrer"><code>dns-controller</code> offers the <code>--watch-ingress</code> flag</a>, not <code>kube-dns</code>. Both the <code>dns-controller</code> &amp; <code>external-dns</code> (Kubernetes incubator) can register public DNS names in AWS Route53.
<a href="https://github.com/kubernetes-incubator/external-dns/issues/221" rel="nofollow noreferrer"><code>external-dns</code> is aimed to replace <code>dns-controller</code> in the future</a>.</p>
