1.问题现象
测试部署了一个service,包括2个pod,分别在node1和node2上。
[root@k8s ~]# kubectl get svc
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
nginx-svc 10.254.216.26 <none> 80/TCP 43m
[root@k8s ~]# kubectl get pod
NAME READY STATUS RESTARTS AGE
busybox 1/1 Running 3 65d
nginx-deployment-4087004473-d3tkv 1/1 Running 0 9m
nginx-deployment-4087004473-gdm3q 1/1 Running 0 54m
在node1(或者node2)上curl 10.254.216.26(cluster ip),只有当负载到本地pod时正常,curl <本地pod ip和另一个主机pod ip>是正常的。
2.解决方案
参考 https://stackoverflow.com/que... 添加路由后,
ip route add 10.254.0.0/16 dev flannel.1
主机间可以通信,但是本地pod不正常了。
删除上述路由信息,添加路由如下路由解决。
ip route add 10.254.0.0/16 dev docker0
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。