coredns不断重启,CrashLoopBackOff, [FATAL] plugin loop
【环境信息】Ubuntu:16.04.6,桌面版本,x86Atals800-3010内核:kernel 4.15.0-45docker版本:18.06.1k8s: 1.12.2-00【现象】安装完后,查看到coredns没有起来,不断重启,CrashLoopBackOff,如下所示:kubectl get pod --all-namespaceroot@ubuntu-154:/home/# kub
【环境信息】
Ubuntu:16.04.6,桌面版本,x86 Atals800-3010
内核:kernel 4.15.0-45
docker版本:18.06.1
k8s: 1.12.2-00
【现象】
安装完后,查看到coredns没有起来,不断重启,CrashLoopBackOff,如下所示:
kubectl get pod --all-namespace
root@ubuntu-154:/home/# kubectl get pod --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system calico-kube-controllers-bc8f7d57-rmtlw 1/1 Running 0 5m18s
kube-system calico-node-zgdnw 1/1 Running 0 5m18s
kube-system coredns-576cbf47c7-22r69 0/1 CrashLoopBackOff 3 78s
kube-system coredns-576cbf47c7-9546j 0/1 CrashLoopBackOff 3 57s
kube-system etcd-ubuntu-154 1/1 Running 0 6m46s
kube-system kube-apiserver-ubuntu-154 1/1 Running 0 6m34s
kube-system kube-controller-manager-ubuntu-154 1/1 Running 0 7m3s
kube-system kube-proxy-2t4ld 1/1 Running 0 7m38s
kube-system kube-scheduler-ubuntu-154 1/1 Running 0 6m40s
查看pod的日志:
kubectl logs -n kube-system coredns-576cbf47c7-9546j
root@ubuntu-154:/home/# kubectl logs -n kube-system coredns-576cbf47c7-9546j
.:53
2021/04/17 10:18:36 [INFO] CoreDNS-1.2.2
2021/04/17 10:18:36 [INFO] linux/amd64, go1.11, eb51e8b
CoreDNS-1.2.2
linux/amd64, go1.11, eb51e8b
2021/04/17 10:18:36 [INFO] plugin/reload: Running configuration MD5 = f65c4821c8a9b7b5eb30fa4fbc167769
2021/04/17 10:18:36 [FATAL] plugin/loop: Seen "HINFO IN 3162287063793932269.6822300986019194427." more than twice, loop detected
显示:[FATAL] plugin/loop
【原因】
根据报错,查看到对应cm的配置:
root@ubuntu-154:~# kubectl edit cm coredns -n kube-system
# Please edit the object below. Lines beginning with a '#' will be ignored,
# and an empty file will abort the edit. If an error occurs while saving this file will be
# reopened with the relevant failures.
#
apiVersion: v1
data:
Corefile: |
.:53 {
errors
health {
lameduck 5s
}
ready
kubernetes cluster.local in-addr.arpa ip6.arpa {
pods insecure
fallthrough in-addr.arpa ip6.arpa
ttl 30
}
prometheus :9153
forward . /etc/resolv.conf
cache 30
loop
reload
loadbalance
}
kind: ConfigMap
metadata:
creationTimestamp: "2021-04-08T06:33:43Z"
name: coredns
namespace: kube-system
resourceVersion: "182"
selfLink: /api/v1/namespaces/kube-system/configmaps/coredns
uid: d037bd15-44e4-42c4-ac15-cec75f948e3a
官网的意思是:
CoreDNS启动后会通过宿主机的resolv.conf文件去获取上游DNS的信息,如果这个时候获取的DNS的服务器是本地地址的话,就会出现环路,从而被环路识别器识别出来。
【规避】
我在k8s的1.17.3这样配置没有问题,在1.12上出现了。删除loop后(:wq保存退出),问题解决。
root@ubuntu-154:/home# kubectl get pod --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
kube-system calico-kube-controllers-bc8f7d57-vsrzx 1/1 Running 0 41h
kube-system calico-node-grxnm 1/1 Running 0 41h
kube-system coredns-576cbf47c7-9xv4q 1/1 Running 0 41h
kube-system coredns-576cbf47c7-bfxg9 1/1 Running 0 41h
kube-system etcd-ubuntu-154 1/1 Running 0 41h
kube-system kube-apiserver-ubuntu-154 1/1 Running 0 41h
kube-system kube-controller-manager-ubuntu-154 1/1 Running 0 41h
kube-system kube-proxy-2t4ld 1/1 Running 0 41h
kube-system kube-scheduler-ubuntu-154 1/1 Running 0 41h
【参考】
https://blog.csdn.net/weixin_43908373/article/details/84833783
https://blog.csdn.net/crystonesc/article/details/83387659
更多推荐
所有评论(0)