这个CoreDNS配置的问题是缺少 Corefile 配置文件。在 Kubernetes 中,CoreDNS 的配置是通过 ConfigMap 传递给它的 Corefile 文件来实现的。在上述配置中,只有一个名为 “k3s.differentpla.net.server” 的键值对,并没有包含完整的 Corefile 配置信息。
正确的做法应该是创建一个包含完整 Corefile 配置信息的文件,例如:
.:53 {
errors
health
kubernetes cluster.local in-addr.arpa ip6.arpa {
pods insecure
upstream /etc/resolv.conf
fallthrough in-addr.arpa ip6.arpa
}
prometheus :9153
forward . 192.168.28.181:32053
}
然后将其写入 ConfigMap 中:
apiVersion: v1
kind: ConfigMap
metadata:
name: coredns-custom
namespace: kube-system
data:
Corefile: |
.
├── errors
├── health
├── kubernetes cluster.local in-addr.arpa ip6.arpa {
│ ├── pods insecure
│ ├── upstream /etc/resolv.conf
│ └── fallthrough in-addr.arpa ip6.arpa
}
├── prometheus :9153
└── forward . 192.168.28.181:32053




