curl无法访问kubernetes服务-错误:没有到主机的路由
由于某些原因,我无法卷曲我的服务或公开服务。下面的设置用于工作-不再curl无法访问kubernetes服务-错误:没有到主机的路由,kubernetes,Kubernetes,由于某些原因,我无法卷曲我的服务或公开服务。下面的设置用于工作-不再 $ kubectl create deployment nginx --image=nginx $ kubectl expose deployment nginx --port=80 $ kubectl get svc,pods -o wide NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR s
$ kubectl create deployment nginx --image=nginx
$ kubectl expose deployment nginx --port=80
$ kubectl get svc,pods -o wide
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
service/nginx ClusterIP 10.109.212.238 <none> 80/TCP 12m app=nginx
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
pod/nginx-866795cfb8-ff5zv 1/1 Running 0 13m 10.47.0.2 nebula-web01 <none> <none>
有趣的是,我发现这个错误只出现在nebula-web01节点上。如果我在不同的节点上部署了相同的应用程序,例如nebula-web02和curl Service IP或Pod IP,那么应用程序将返回其内容。这让我觉得nebula-web01的设置肯定有问题 解决我问题的方法是在nebula-web01节点上重新启动docker和kubelet守护程序 $systemctl重新启动docker $systemctl重新启动kubelet 笔记 此外,您可以根据禁用防火墙和刷新iptables
$ curl 10.109.212.238
curl: (7) Failed connect to 10.109.212.238:80; No route to host
$ curl 10.47.0.2
curl: (7) Failed connect to 10.47.0.2:80; No route to host