Kube代理它的网络服务。
负责DNS解析的DNS提供商。如我所见,您已经安装了coredns。
检查kubelet配置。它应该指向正确的服务,并且该服务应该可以在您的播客中访问。
还请检查您的
firewalld
或
iptables
在所有节点上禁用服务。
这样地:
apiVersion: kubelet.config.k8s.io/v1beta1
authentication:
anonymous:
enabled: false
webhook:
enabled: true
x509:
clientCAFile: "/var/lib/kubernetes/ca.pem"
authorization:
mode: Webhook
clusterDomain: "cluster.local"
clusterDNS:
- "10.33.0.10"
kubectl get svc -n kube-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kube-dns ClusterIP 10.33.0.10 <none> 53/UDP,53/TCP,9153/TCP 35h
然后:
kubectl exec -ti net-diag-86589fd8f5-r28qq -- nslookup kubernetes.default
Server: 10.33.0.10
Address: 10.33.0.10#53
Name: kubernetes.default.svc.cluster.local
Address: 10.33.0.1
UPD。
我刚刚注意到,Docker是一个容器运行时,flannel是一个网络提供者。根据我的理解,问题可能是Docker在摆弄你的iptables规则,尝试将所有Docker规则设置为prmisseve,看看是否可行。
我不是iptables配置方面的专家,但类似的内容可能会有所帮助:
https://unrouted.io/2017/08/15/docker-firewall/
此外,如果您使用的是法兰绒,请确保您使用的是正确的
iface
选项如果您正在运行非云安装,这可能非常重要。
https://github.com/flannel-io/flannel/blob/master/Documentation/configuration.md#key-command-line-options