Kubernetes Master Node in NotReady State With Message "cni plugin not initialized"
Problem
A Kubernetes master node is showing as
NotReadyand the describe output for the node is showing "cni not initialized".
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
master1 NotReady master 34d v1.21.3
master2 Ready master 34d v1.21.3
master3 Ready master 34d v1.21.3A description of the node similarly reports
KubeletNotReadydue to the CNI plugin being uninitialized.
$ kubectl describe node master1
.....
Conditions:
Ready False Mon, 13 Jun 2022 21:42:05 +0000 Mon, 13 Jun 2022 21:32:01 +0000 KubeletNotReady container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:Network plugin returns error: cni plugin not initializedEnvironment
Platform9 Managed Kubernetes - v5.4 and Higher
Kubernetes - All v1.21
Runtime - Containerd
Container Network Interface - Calico
Cause
Due to an bug in the Platform9 Managed Kubernetes Stack the CNI config is not reloaded when a partial restart of the stack takes place.
Resolution
This issue is now fixed on the pf9-kube- 1.23.8-pmk.218 and above releases.
Workaround
Verify that the CNI configuration directory referenced by containerd is not empty on the affected node.
For Calico based clusters the directory should contain the following files:
If the files mentioned above are missing, restart calico-node pod on the affected node.
Success
The Kubernetes nodes should now all show as Ready .
Verify the status of the node after restarting calico-node pod.
Last updated
