我想从A容器(节点0)ping B容器(节点1),但无法访问。但是,也无法访问同一节点中的ping pod。 我正在建立新集群,以尝试从Kelsey开始使用Kubernetes。
我尝试使用此链接作为参考Kubernetes: Can't ping pods across nodes
Node - IP Private - IP Pod
worker-0 - 10.240.0.20 - 10.200.0.0/24
worker-1 - 10.240.0.21 - 10.200.1.0/24
worker-2 - 10.240.0.22 - 10.200.2.0/24
路线-n
worker-0
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.240.0.1 0.0.0.0 UG 100 0 0 ens4
10.200.0.0 0.0.0.0 255.255.255.0 U 0 0 0 cnio0
10.240.0.1 0.0.0.0 255.255.255.255 UH 100 0 0 ens4
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
worker-1
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.240.0.1 0.0.0.0 UG 100 0 0 ens4
10.200.1.0 0.0.0.0 255.255.255.0 U 0 0 0 cnio0
10.240.0.1 0.0.0.0 255.255.255.255 UH 100 0 0 ens4
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
worker-2
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.240.0.1 0.0.0.0 UG 100 0 0 ens4
10.200.2.0 0.0.0.0 255.255.255.0 U 0 0 0 cnio0
10.240.0.1 0.0.0.0 255.255.255.255 UH 100 0 0 ens4
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
我已经完成了link这样的VPC Netowrk路由的设置。
此后,我遵循了此参考文献Kubernetes: Can't ping pods across nodes
route add -net 10.200.1.0 netmask 255.255.255.0 gw 10.240.0.21
在worker-0中
结果是
SIOCADDRT: Network is unreachable
我在worker-0,worker-1,worker-2中进行了尝试,并得到了相同的结果。 即使worker-0可以ping通到worker-1(10.240.0.21),还是可以访问的。
我的期望是,当我处于IP Pod 10.200.0.3的Pod A(工作人员0)时,我可以ping通IP Pod 10.200.1.3的Pod B(工作人员1)。而且,我可以与Pod A一起ping Pod C(worker-0)。
此步骤应该使用Calico还是Flannel?还是可以在没有Calico或Flannel(仅CNI设置)的情况下从其他节点ping其他Pod?
其他信息
我正在使用Docker而不是runc和containderd。 因此,我从link手动安装了Docker。
在kubelet.service中,--container-runtime=remote
成为--container-runtime=docker
答案 0 :(得分:0)
尝试添加这样的路线:
Run 1
Foo
Run 2