问题
When I add the k8s work node to the master control-plane, the pod of calico-node report a error show that the server's ip connection is unhealthy.
Warning Unhealthy 36s kubelet, izbp1a13o0oyyyt66ldcdhsj
Readiness probe failed: calico/node is not ready: BIRD is not ready: BGP not established with XX.XX.XX.XX
2020-02-03 08:16:54.740 [INFO][119] health.go 156: Number of node(s) with BGP peering established = 0
I using kubeadm to create the cluster, the master node seems work ready. This error show when I join other work node, it looks like the calico net framework not work correctly between them.
The kubectl get nodes
show the two node are all ready.
The kubectl get pods --all-namespaces
show there are two calico-node pod in the namespace kube-system, and they are all report error show above.
回答1:
Refer this on official calico troubleshooting guide
Error: calico/node is not ready: BIRD is not ready: BGP not established with x.x.x.x
Top three cause are as below try eliminate them
1 : This “unready” status error in Kubernetes means that a particular peer is unreachable in the cluster. Check that BGP connectivity between the two peers is allowed in the environment.
2: This error can also occur if inactive Node resources are configured for node-to-node mesh. To fix this, decommission the stale nodes.
3: This error can also occur when BGP connections to non-mesh peers go down. If this is a common occurrence in your BGP topology, you can disable BIRD readiness checks. See node readiness for more information.
来源:https://stackoverflow.com/questions/60035507/calico-node-cannot-build-with-servers-ip-address