This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.5.5. 使用 DNS 转发
您可以使用以下方法使用 DNS 转发来覆盖 /etc/resolv.conf
文件中的默认转发配置:
- 为每个区指定名称服务器。如果转发区是 OpenShift Container Platform 管理的 Ingress 域,那么上游名称服务器必须为域授权。
- 提供上游 DNS 服务器列表。
- 更改默认转发策略。
注意
默认域的 DNS 转发配置可以同时在 /etc/resolv.conf
文件和上游 DNS 服务器中指定默认服务器。
流程
修改名为
default
的 DNS Operator 对象:oc edit dns.operator/default
$ oc edit dns.operator/default
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 这允许 Operator 使用基于
Server
的额外服务器配置块来创建和更新名为dns-default
的 ConfigMap。如果任何服务器都没有与查询匹配的区域,则名称解析会返回上游 DNS 服务器。DNS 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 必须符合
rfc6335
服务名称语法。 - 2
- 必须符合
rfc1123
中子域
的定义。集群域cluster.local
不是zones
中的一个有效的subdomain
。 - 3
- 定义用于选择上游解析器的策略。默认值为
Random
。您还可以使用RoundRobin
、和Sequential
。 - 4
- 每个
forwardPlugin
最多允许 15 个upstreams
。 - 5
- 可选的。您可以使用它来覆盖默认策略,并将 DNS 解析转发到默认域的指定 DNS 解析器(上游解析器)。如果没有提供任何上游解析器,DNS 名称查询将进入
/etc/resolv.conf
中的服务器。 - 6
- 决定选择上游服务器进行查询的顺序。您可以指定这些值之一:
Random
、RoundRobin
或Sequential
。默认值为Sequential
。 - 7
- 可选的。您可以使用它提供上游解析器。
- 8
- 您可以指定
上游
的两种类型 -SystemResolvConf
和Network
。SystemResolvConf
将上游配置为使用'/etc/resolv.conf
和Network
定义Networkresolver
。您可以指定其中一个或两者都指定。 - 9
- 如果指定类型是
Network
,则必须提供 IP 地址。address
必须是有效的 IPv4 或 IPv6 地址。 - 10
- 如果指定类型是
Network
,您可以选择性地提供端口。port
必须在 1 到 65535 之间。
注意如果
servers
未定义或无效,则 ConfigMap 只包括默认服务器。查看 ConfigMap:
oc get configmap/dns-default -n openshift-dns -o yaml
$ oc get configmap/dns-default -n openshift-dns -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 基于以上 DNS 示例的 DNS ConfigMap 示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 对
forwardPlugin
的更改会触发 CoreDNS 守护进程集的滚动更新。