Skip to content

Commit 1ae9e2f

Browse files
authored
Merge pull request #36815 from windsonsea/nodlocal
[zh]Sync /tasks/administer-cluster/nodelocaldns.md
2 parents a96f8f7 + f69ac4f commit 1ae9e2f

File tree

1 file changed

+18
-22
lines changed

1 file changed

+18
-22
lines changed

content/zh-cn/docs/tasks/administer-cluster/nodelocaldns.md

Lines changed: 18 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ This page provides an overview of NodeLocal DNSCache feature in Kubernetes.
2828
<!--
2929
## Introduction
3030
-->
31-
## 引言
31+
## 引言 {#introduction}
3232

3333
<!--
3434
NodeLocal DNSCache improves Cluster DNS performance by running a DNS caching agent
@@ -49,7 +49,7 @@ NodeLocal DNSCache 通过在集群节点上作为 DaemonSet 运行 DNS 缓存代
4949
<!--
5050
## Motivation
5151
-->
52-
## 动机
52+
## 动机 {#motivation}
5353

5454
<!--
5555
* With the current DNS architecture, it is possible that Pods with the highest DNS QPS
@@ -66,8 +66,8 @@ NodeLocal DNSCache 通过在集群节点上作为 DaemonSet 运行 DNS 缓存代
6666
and avoid UDP DNS entries filling up conntrack table.
6767
-->
6868
* 跳过 iptables DNAT 和连接跟踪将有助于减少
69-
[conntrack 竞争](https://github.com/kubernetes/kubernetes/issues/56903)
70-
并避免 UDP DNS 条目填满 conntrack 表。
69+
[conntrack 竞争](https://github.com/kubernetes/kubernetes/issues/56903)并避免
70+
UDP DNS 条目填满 conntrack 表。
7171

7272
<!--
7373
* Connections from the local caching agent to kube-dns service can be upgraded to TCP.
@@ -76,7 +76,7 @@ NodeLocal DNSCache 通过在集群节点上作为 DaemonSet 运行 DNS 缓存代
7676
([default](https://www.kernel.org/doc/Documentation/networking/nf_conntrack-sysctl.txt)
7777
`nf_conntrack_udp_timeout` is 30 seconds)
7878
-->
79-
* 从本地缓存代理到 kube-dns 服务的连接可以升级为 TCP
79+
* 从本地缓存代理到 kube-dns 服务的连接可以升级为 TCP。
8080
TCP conntrack 条目将在连接关闭时被删除,相反 UDP 条目必须超时
8181
[默认](https://www.kernel.org/doc/Documentation/networking/nf_conntrack-sysctl.txt)
8282
`nf_conntrack_udp_timeout` 是 30 秒)。
@@ -103,7 +103,7 @@ NodeLocal DNSCache 通过在集群节点上作为 DaemonSet 运行 DNS 缓存代
103103
<!--
104104
## Architecture Diagram
105105
-->
106-
## 架构图
106+
## 架构图 {#architecture-diagram}
107107

108108
<!--
109109
This is the path followed by DNS Queries after NodeLocal DNSCache is enabled:
@@ -118,18 +118,16 @@ This is the path followed by DNS Queries after NodeLocal DNSCache is enabled:
118118
<!--
119119
## Configuration
120120
-->
121-
## 配置
121+
## 配置 {#configuration}
122122

123-
<!--
124123
{{< note >}}
124+
<!--
125125
The local listen IP address for NodeLocal DNSCache can be any address that
126126
can be guaranteed to not collide with any existing IP in your cluster.
127127
It's recommended to use an address with a local scope, for example,
128128
from the 'link-local' range '169.254.0.0/16' for IPv4 or from the
129129
'Unique Local Address' range in IPv6 'fd00::/8'.
130-
{{< /note >}}
131130
-->
132-
{{< note >}}
133131
NodeLocal DNSCache 的本地侦听 IP 地址可以是任何地址,只要该地址不和你的集群里现有的 IP 地址发生冲突。
134132
推荐使用本地范围内的地址,例如,IPv4 链路本地区段 '169.254.0.0/16' 内的地址,
135133
或者 IPv6 唯一本地地址区段 'fd00::/8' 内的地址。
@@ -145,7 +143,7 @@ This feature can be enabled using the following steps:
145143
[`nodelocaldns.yaml`](https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/dns/nodelocaldns/nodelocaldns.yaml)
146144
and save it as `nodelocaldns.yaml.`
147145
-->
148-
* 根据示例 [`nodelocaldns.yaml`](https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/dns/nodelocaldns/nodelocaldns.yaml)
146+
* 根据示例 [`nodelocaldns.yaml`](https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/dns/nodelocaldns/nodelocaldns.yaml)
149147
准备一个清单,把它保存为 `nodelocaldns.yaml`
150148

151149
<!--
@@ -156,8 +154,8 @@ This feature can be enabled using the following steps:
156154
like this: "`health [__PILLAR__LOCAL__DNS__]:8080`"
157155
-->
158156
* 如果使用 IPv6,在使用 'IP:Port' 格式的时候需要把 CoreDNS 配置文件里的所有 IPv6 地址用方括号包起来。
159-
如果你使用上述的示例清单,需要把
160-
[配置行 L70](https://github.com/kubernetes/kubernetes/blob/b2ecd1b3a3192fbbe2b9e348e095326f51dc43dd/cluster/addons/dns/nodelocaldns/nodelocaldns.yaml#L70)
157+
如果你使用上述的示例清单,
158+
需要把[配置行 L70](https://github.com/kubernetes/kubernetes/blob/b2ecd1b3a3192fbbe2b9e348e095326f51dc43dd/cluster/addons/dns/nodelocaldns/nodelocaldns.yaml#L70)
161159
修改为: "`health [__PILLAR__LOCAL__DNS__]:8080`"。
162160

163161
<!--
@@ -209,7 +207,7 @@ This feature can be enabled using the following steps:
209207
* If kube-proxy is running in IPVS mode:
210208

211209
``` bash
212-
sed -i "s/__PILLAR__LOCAL__DNS__/$localdns/g; s/__PILLAR__DNS__DOMAIN__/$domain/g; s/,__PILLAR__DNS__SERVER__//g; s/__PILLAR__CLUSTER__DNS__/$kubedns/g" nodelocaldns.yaml
210+
sed -i "s/__PILLAR__LOCAL__DNS__/$localdns/g; s/__PILLAR__DNS__DOMAIN__/$domain/g; s/__PILLAR__DNS__SERVER__//g; s/__PILLAR__CLUSTER__DNS__/$kubedns/g" nodelocaldns.yaml
213211
```
214212

215213
In this mode, the `node-local-dns` pods listen only on `<node-local-address>`.
@@ -224,9 +222,8 @@ This feature can be enabled using the following steps:
224222
```
225223

226224
在此模式下,node-local-dns Pods 只会侦听 `<node-local-address>` 的地址。
227-
node-local-dns 接口不能绑定 kube-dns 的集群 IP 地址,因为 IPVS 负载均衡
228-
使用的接口已经占用了该地址。
229-
node-local-dns Pods 会设置 `__PILLAR__UPSTREAM__SERVERS__`
225+
node-local-dns 接口不能绑定 kube-dns 的集群 IP 地址,因为 IPVS 负载均衡使用的接口已经占用了该地址。
226+
node-local-dns Pod 会设置 `__PILLAR__UPSTREAM__SERVERS__`
230227

231228
<!--
232229
* Run `kubectl create -f nodelocaldns.yaml`
@@ -263,7 +260,7 @@ You should also revert any changes you made to the kubelet configuration.
263260
<!--
264261
## StubDomains and Upstream server Configuration
265262
-->
266-
## StubDomains 和上游服务器配置
263+
## StubDomains 和上游服务器配置 {#stubdomains-and-upstream-server-configuration}
267264

268265
<!--
269266
StubDomains and upstream servers specified in the `kube-dns` ConfigMap in the `kube-system` namespace
@@ -274,17 +271,16 @@ in the Corefile format. Some cloud providers might not allow modifying `node-loc
274271
In those cases, the `kube-dns` ConfigMap can be updated.
275272
-->
276273
`node-local-dns` Pod 能够自动读取 `kube-system` 名字空间中 `kube-dns` ConfigMap
277-
中保存的 StubDomains 和上游服务器信息。ConfigMap 中的内容需要遵从
278-
[此示例](/zh-cn/docs/tasks/administer-cluster/dns-custom-nameservers/#example-1)
279-
中所给的格式。
274+
中保存的 StubDomains 和上游服务器信息。ConfigMap
275+
中的内容需要遵从[此示例](/zh-cn/docs/tasks/administer-cluster/dns-custom-nameservers/#example-1)中所给的格式。
280276
`node-local-dns` ConfigMap 也可被直接修改,使用 Corefile 格式设置 stubDomain 配置。
281277
某些云厂商可能不允许直接修改 `node-local-dns` ConfigMap 的内容。
282278
在这种情况下,可以更新 `kube-dns` ConfigMap。
283279

284280
<!--
285281
## Setting memory limits
286282
-->
287-
## 设置内存限制
283+
## 设置内存限制 {#setting-memory-limits}
288284

289285
<!--
290286
The `node-local-dns` Pods use memory for storing cache entries and processing queries.

0 commit comments

Comments
 (0)