diff --git a/content/en/docs/tasks/administer-cluster/nodelocaldns.md b/content/en/docs/tasks/administer-cluster/nodelocaldns.md index c953196fa19..ba019080690 100644 --- a/content/en/docs/tasks/administer-cluster/nodelocaldns.md +++ b/content/en/docs/tasks/administer-cluster/nodelocaldns.md @@ -3,7 +3,7 @@ reviewers: - bowei - zihongz - sftim -title: Using NodeLocal DNSCache in Kubernetes clusters +title: Using NodeLocal DNSCache in Kubernetes Clusters content_type: task --- @@ -40,7 +40,7 @@ hostnames ("`cluster.local`" suffix by default). [conntrack races](https://github.com/kubernetes/kubernetes/issues/56903) and avoid UDP DNS entries filling up conntrack table. -* Connections from local caching agent to kube-dns service can be upgraded to TCP. +* Connections from the local caching agent to kube-dns service can be upgraded to TCP. TCP conntrack entries will be removed on connection close in contrast with UDP entries that have to timeout ([default](https://www.kernel.org/doc/Documentation/networking/nf_conntrack-sysctl.txt) @@ -52,7 +52,7 @@ hostnames ("`cluster.local`" suffix by default). * Metrics & visibility into DNS requests at a node level. -* Negative caching can be re-enabled, thereby reducing number of queries to kube-dns service. +* Negative caching can be re-enabled, thereby reducing the number of queries for the kube-dns service. ## Architecture Diagram @@ -66,7 +66,7 @@ This is the path followed by DNS Queries after NodeLocal DNSCache is enabled: {{< note >}} The local listen IP address for NodeLocal DNSCache can be any address that can be guaranteed to not collide with any existing IP in your cluster. -It's recommended to use an address with a local scope, per example, +It's recommended to use an address with a local scope, for example, from the 'link-local' range '169.254.0.0/16' for IPv4 or from the 'Unique Local Address' range in IPv6 'fd00::/8'. {{< /note >}} @@ -77,9 +77,9 @@ This feature can be enabled using the following steps: [`nodelocaldns.yaml`](https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/dns/nodelocaldns/nodelocaldns.yaml) and save it as `nodelocaldns.yaml.` -* If using IPv6, the CoreDNS configuration file need to enclose all the IPv6 addresses +* If using IPv6, the CoreDNS configuration file needs to enclose all the IPv6 addresses into square brackets if used in 'IP:Port' format. - If you are using the sample manifest from the previous point, this will require to modify + If you are using the sample manifest from the previous point, this will require you to modify [the configuration line L70](https://github.com/kubernetes/kubernetes/blob/b2ecd1b3a3192fbbe2b9e348e095326f51dc43dd/cluster/addons/dns/nodelocaldns/nodelocaldns.yaml#L70) like this: "`health [__PILLAR__LOCAL__DNS__]:8080`" @@ -103,7 +103,7 @@ This feature can be enabled using the following steps: `__PILLAR__CLUSTER__DNS__` and `__PILLAR__UPSTREAM__SERVERS__` will be populated by the `node-local-dns` pods. In this mode, the `node-local-dns` pods listen on both the kube-dns service IP - as well as ``, so pods can lookup DNS records using either IP address. + as well as ``, so pods can look up DNS records using either IP address. * If kube-proxy is running in IPVS mode: