kube-dns를 통한 이름 확인을 사용할 수 없습니다.

kube-dns를 통한 이름 확인을 사용할 수 없습니다.

내가 속한 kubernetes 클러스터에는 3개의 노드가 있습니다. 이 노드는 가상 머신이며 유일한 호스트 인터페이스인 브리지와 통신하는 데 사용됩니다. 192.168.99.101 마스터 192.168.99.102 및 .103 클러스터를 생성하는 데 사용한 다른 노드 kubeadm I 이 중독 매개변수가 전달되었습니다_--api-advertise-address=192.168.99.101

이제 내 애플리케이션에서 이를 사용하면 배포에 연결하는 서비스의 IP가 제대로 작동하지만 동일한 서비스의 이름을 사용하려고 하면 찾을 수 없습니다(그러나 다음이 표시됩니다.

kubectl get svc -n kube-system
NAME       TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)         AGE
kube-dns   ClusterIP   10.96.0.10   <none>        53/UDP,53/TCP   57m

나는 이 가이드를 사용하여해결하다오류를 찾았지만 해결 방법을 모르겠습니다.

vmmaster@vmmaster-VirtualBox:~/Documenti/Tesi/NFS$  kubectl exec -ti busybox -- nslookup kubernetes.default
Server:    10.96.0.10
Address 1: 10.96.0.10

nslookup: can't resolve 'kubernetes.default'
command terminated with exit code 1

다음 단계를 따랐습니다. 오류 로그이기 때문에 WF 및 E 로그가 있는 콘텐츠만 복사했습니다.

    kubectl logs --namespace=kube-system $(kubectl get pods --namespace=kube-system -l k8s-app=kube-dns -o name) -c kubedns
    E0516 15:55:28.781740       1 reflector.go:201] k8s.io/dns/pkg/dns/dns.go:150: Failed to list *v1.Service: Get https://10.96.0.1:443/api/v1/services?resourceVersion=0: dial tcp 10.96.0.1:443: i/o timeout
    E0516 15:55:28.782057       1 reflector.go:201] k8s.io/dns/pkg/dns/dns.go:147: Failed to list *v1.Endpoints: Get https://10.96.0.1:443/api/v1/endpoints?resourceVersion=0: dial tcp 10.96.0.1:443: i/o timeout

    kubectl logs --namespace=kube-system $(kubectl get pods --namespace=kube-system -l k8s-app=kube-dns -o name) -c dnsmasq
    W0516 15:54:59.341790       1 nanny.go:120] Got EOF from stdout

그리고:

        kubectl logs --namespace=kube-system $(kubectl get pods --namespace=kube-system -l k8s-app=kube-dns -o name) -c sidecar
    W0516 15:54:59.233531       1 server.go:64] Error getting metrics from dnsmasq: read udp 127.0.0.1:54118->127.0.0.1:53: read: connection refused

누구든지 나를 도와줄 수 있나요?

관련 정보