dial tcp 10.96.0.1:443: getsockopt: no route to host --- kubernetes(k8s)DNS 服务反复重启

kubernetes(k8s)DNS 服务反复重启解决:

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: getsockopt: no route to host

在使用 Minikube 部署 kubernetes 服务时,出现 Kube DNS 服务反复重启现象(错误如上),

这很可能是 iptables 规则乱了,我通过执行以下命令解决了,在此记录:

# systemctl stop kubelet
# systemctl stop docker
# iptables --flush
# iptables -tnat --flush
# systemctl start kubelet
# systemctl start docker

注意,这种方式清空了filter/nat 表的所有 iptables 规则,如果你之前有自己定义的规则,也就完全丢了,所以使用前请三思!

当然,Docker 和 K8s 的 iptables 规则在重启后能够自动重建,这点不用太担心!

你可能感兴趣的:(疑难杂症)