datastax / pulsar-helm-chart

Apache Pulsar Helm chart
Apache License 2.0
47 stars 38 forks source link

Configure core Pulsar components to use ndots 4 #188

Closed michaeljmarshall closed 2 years ago

michaeljmarshall commented 2 years ago

With our recent transition to using fully qualified service names, we need to make the ndots default to 4. Otherwise, we'll see small degradation on the DNS lookup performance. Since the Pulsar protocol relies on multiple DNS lookups when initiating connections to the proxy and the broker, I view this as an important optimization. This should not break any existing deployments.

I verified the contents of this change using minikube and tailing the coredns pod logs. I could clearly see before and after the changes that the configuration properly affects DNS lookups.

See this kubernetes documentation for more info: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service. Also, you can see this blog post for details on the performance impact: https://pracucci.com/kubernetes-dns-resolution-ndots-options-and-why-it-may-affect-application-performances.html