BIRD is not ready: Error executing command: read unix @->/var/run/calico/bird.ctl: i/o timeout

Problem

  • Pod networking is misbehaving.
  • A description of the calico-node pod(s) show that calico/node is not ready: BIRD is not ready .
Bash
Copy

Environment

  • Platform9 Managed Kubernetes - v5.3 and Higher
  • Calico- v3.18
  • IPVS
  • Felix

Cause

BIRD is consuming an excessive amount of CPU which can lead to timeouts (see: https://github.com/projectcalico/bird/issues/95).

Workaround

  1. List the calico-node pods within the kube-system namespace.
Bash
Copy
Bash
Copy
  1. Identify which pod(s) are affected.
  2. Retrieve the Calico BIRD configuration file from the calico-node pod (corresponding to the node which is exhibiting the problem symptom).
Bash
Copy
  1. Edit the configuration file locally and modify the scan time fields from scan time 2; to scan time 10;
Bash
Copy
  1. Copy the updated BIRD configuration back into the calico-node pod.
Bash
Copy
  1. Reload the BIRD configuration (from within the calico-node pod).
Bash
Copy
Bash
Copy

Note: The above steps are a temporary workaround and will not be persisted beyond the lifetime of the pod (i.e. the updated configuration will be lost if the pod is killed).

Resolution

A fix has been included in the LTS3 release, which has Calico v3.24 and K8s v1.25. This issue was tracked as part of the jira AIR-1104.

Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard