Search code examples
kubernetesnetworkingcalico

route missed in kubernetes with calico


I am installing k8s with calico on centos8, everything looks well but I couldn't ping each other between pods.

I am using k8s as DATASTORE of calico, the deployment file is in calico.yaml

I don't know why there are some route missed, any suggestions are appreciated.

Here are some informations about the cluster:

# kubectl get nodes
NAME                  STATUS   ROLES    AGE     VERSION
instance-4njec0xa-1   Ready    <none>   3h55m   v1.19.4
instance-4njec0xa-2   Ready    <none>   3h55m   v1.19.4
instance-4njec0xa-3   Ready    master   3h56m   v1.19.4

on master node

# ./calicoctl node status
Calico process is running.

IPv4 BGP status
+---------------+-------------------+-------+----------+-------------+
| PEER ADDRESS  |     PEER TYPE     | STATE |  SINCE   |    INFO     |
+---------------+-------------------+-------+----------+-------------+
| 192.168.0.194 | node-to-node mesh | up    | 04:10:41 | Established |
| 192.168.0.195 | node-to-node mesh | up    | 04:10:41 | Established |
+---------------+-------------------+-------+----------+-------------+

IPv6 BGP status
No IPv6 peers found.

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 eth0
169.254.169.254 192.168.0.2     255.255.255.255 UGH   100    0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.17.139.128  0.0.0.0         255.255.255.255 UH    0      0        0 cali96f39d92828
172.17.139.128  0.0.0.0         255.255.255.192 U     0      0        0 *
172.17.139.129  0.0.0.0         255.255.255.255 UH    0      0        0 caliccf893b1917
172.17.139.130  0.0.0.0         255.255.255.255 UH    0      0        0 cali09dc1beebda
172.17.153.64   192.168.0.194   255.255.255.192 UG    0      0        0 eth0
172.17.181.64   192.168.0.195   255.255.255.192 UG    0      0        0 eth0
192.168.0.0     0.0.0.0         255.255.240.0   U     100    0        0 eth0

on node1

# ./calicoctl node status
Calico process is running.

IPv4 BGP status
+---------------+-------------------+-------+----------+-------------+
| PEER ADDRESS  |     PEER TYPE     | STATE |  SINCE   |    INFO     |
+---------------+-------------------+-------+----------+-------------+
| 192.168.0.195 | node-to-node mesh | up    | 04:10:42 | Established |
| 192.168.0.196 | node-to-node mesh | up    | 04:10:40 | Established |
+---------------+-------------------+-------+----------+-------------+

IPv6 BGP status
No IPv6 peers found.

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 eth0
169.254.169.254 192.168.0.2     255.255.255.255 UGH   100    0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.17.139.128  192.168.0.196   255.255.255.192 UG    0      0        0 eth0
172.17.153.64   0.0.0.0         255.255.255.192 U     0      0        0 *
172.17.153.69   0.0.0.0         255.255.255.255 UH    0      0        0 cali2587d39bec8
172.17.181.64   192.168.0.195   255.255.255.192 UG    0      0        0 eth0
192.168.0.0     0.0.0.0         255.255.240.0   U     100    0        0 eth0

on node2

./calicoctl node status
Calico process is running.

IPv4 BGP status
+---------------+-------------------+-------+----------+-------------+
| PEER ADDRESS  |     PEER TYPE     | STATE |  SINCE   |    INFO     |
+---------------+-------------------+-------+----------+-------------+
| 192.168.0.194 | node-to-node mesh | up    | 04:10:42 | Established |
| 192.168.0.196 | node-to-node mesh | up    | 04:10:40 | Established |
+---------------+-------------------+-------+----------+-------------+

IPv6 BGP status
No IPv6 peers found.

# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    100    0        0 eth0
169.254.169.254 192.168.0.2     255.255.255.255 UGH   100    0        0 eth0
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.17.139.128  192.168.0.196   255.255.255.192 UG    0      0        0 eth0
172.17.153.64   192.168.0.194   255.255.255.192 UG    0      0        0 eth0
172.17.181.64   0.0.0.0         255.255.255.192 U     0      0        0 *
172.17.181.66   0.0.0.0         255.255.255.255 UH    0      0        0 cali12d4a061371
192.168.0.0     0.0.0.0         255.255.240.0   U     100    0        0 eth0


Solution

  • The calico file default disable ipip and vxlan, which causes the network failure. When I enable ipip and set the correct veth_mtu everything works well.