Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →“Calico node is not ready” is a health-check symptom, not a diagnosis. Start with the failing probe and the calico-node logs: BIRD or BGP errors point toward peer connectivity or stale Calico node records; a missing /var/lib/calico/nodename points toward Calico initialization or its hostPath mount; Felix and BIRD socket errors require their own log-based checks. In the LFS258 Labs 3.3–3.4 incident, the missing nodename file also left a pod stuck in ContainerCreating.
What “Calico node is not ready” means
Calico’s readiness and liveness checks report whether its networking components are healthy enough for the node to provide networking. During startup, Calico waits for Felix and, when enabled, BIRD. A failed check can therefore keep the node unready while also preventing pod networking from being set up.
As an Amazon Associate I earn from qualifying purchases.
The probe text is the most useful first clue. It identifies whether to investigate BIRD or BGP, Felix, a BIRD control socket, missing host state, or an eBPF dataplane issue. These are different failure paths; restarting the pod without first capturing its Events and logs can obscure the original error.
Collect evidence before changing the cluster
-
Find the Calico node pods and see which node each one is on:
kubectl -n kube-system get pods -o wide -l k8s-app=calico-node. -
Describe the affected pod and read its Events:
kubectl -n kube-system describe pod <calico-node-pod>. Record the exact readiness or liveness probe message. -
Read the current
calico-nodecontainer log:kubectl -n kube-system logs <pod> -c calico-node. If the container has restarted, also check its preceding instance withkubectl -n kube-system logs <pod> -c calico-node --previous. -
Inspect the Calico DaemonSet specification and the affected node’s placement, host paths, and mounts before changing shared settings. Preserve the exact BIRD, Felix, confd, mount, or API error for the relevant branch below.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Match the error to the right troubleshooting branch
| Probe or error | What it points to | What to check next | Likely scope |
|---|---|---|---|
| BIRD not ready or BGP not established | A BGP peer may be unreachable, or an inactive Calico node resource may still be included in node-to-node mesh. | Check node-to-node routing, firewall or security-group rules that permit the configured BGP connectivity, the configured BGP address, peer health, and stale Calico node resources. | Peer connectivity or node records; verify before making cluster-wide changes. |
/var/lib/calico/nodename missing |
The CNI plugin cannot find the node identity file it expects; Calico initialization or its hostPath state may have failed. | Confirm calico-node started, that /var/lib/calico/ is mounted from the host and writable, and that initialization did not fail before writing the file. |
Often the affected node’s startup or mount. |
| BIRD control socket refused or missing | BIRD is not serving its control socket. A confd problem generating BIRD configuration can be the underlying cause. | Read the calico-node logs for the earlier confd or BIRD configuration error rather than treating the socket message alone as the root cause. |
Component startup or configuration on the affected node. |
| Felix not live or readiness returns 503 | Felix has not reached a healthy state. | Inspect logs for Felix initialization errors, host-interface discovery problems, permissions, and API connectivity. | Usually begin with the affected node; avoid cluster-wide changes until the cause is clear. |
| Readiness failure in eBPF dataplane mode | An eBPF-specific interface-program update or kernel verifier incompatibility may be preventing the program from loading. | Use the calico-node logs to identify the interface or verifier error. Investigate this branch only if the cluster is configured for eBPF. |
eBPF dataplane configuration, interface, or kernel compatibility. |
How to resolve the common branches
BIRD not ready or BGP not established
First verify that the peer named by the error is reachable over the network and that the required BGP connectivity is allowed between the peers. Check the BGP address Calico is using and confirm that the peer node is present and healthy. Calico also identifies inactive Node resources left behind in a node-to-node mesh as a cause; remove or decommission stale node records through the cluster’s normal process.
Do not assume that restarting Kubernetes components will repair an unreachable peer or an obsolete node resource. Confirm the network path and peer state before considering changes that affect BGP across the cluster.
Missing /var/lib/calico/nodename
In the LFS258 Labs 3.3–3.4 report, the CNI setup failed because it could not stat /var/lib/calico/nodename, and the pod remained in ContainerCreating. Check that the calico-node container is running and that the host’s /var/lib/calico/ directory is mounted into it. Then verify the mount is writable and look earlier in the container log for an initialization failure that prevented the file from being created.
Rank #3
Because the missing file is expected node identity state, changing a pod’s CNI configuration will not address a failed Calico startup or absent hostPath mount. Resolve the underlying startup or mount issue first, then check whether pod sandbox creation succeeds.
Free tools Windows power users keep installed
One-click scans. No signup required.
BIRD socket or confd startup errors
A refused /var/run/calico/bird.ctl socket means BIRD is not accepting control requests there. The socket error alone does not explain why: confd may have failed while generating BIRD configuration. Look earlier in the calico-node logs for the first confd or configuration error and address that cause before retrying the readiness check.
Felix health failures
For Felix is not live or a readiness response of 503, follow the Felix initialization messages in the logs. Check the host interfaces Felix is discovering, permissions, and its connection to the Kubernetes API. Repeatedly deleting the Calico pod can restart the same failing initialization without revealing or fixing the original problem.
eBPF dataplane failures
This branch applies only when Calico is configured to use its eBPF dataplane; it is not a general explanation for BIRD/BGP failures. Inspect the Calico node logs for an error updating a program attached to an interface or for a kernel eBPF verifier rejection. Use that specific error to investigate interface-program or kernel compatibility rather than changing BGP settings.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.When to make a change
-
If the probe names BIRD or BGP, verify peer reachability, BGP allowance, and Calico node records before changing cluster-wide networking.
Recommended Free Tools
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy. -
If the error names the nodename file or a mount, verify Calico startup and the hostPath on the affected node before modifying CNI settings.
-
If the error names a socket, find the preceding BIRD or confd error in the logs; the socket refusal is a symptom, not necessarily the cause.
-
If Felix or eBPF is named, investigate its own initialization or kernel/interface error instead of treating every not-ready status as a BGP problem.
Quick Recap
SaleBestseller No. 1Bestseller No. 2Bestseller No. 3Bestseller No. 4
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




