Description
Description
After running kubeadm init
(with any necessary flags like --pod-network-cidr=10.244.0.0/16
), when I deploy a CNI (such as kube-router, though I believe I've seen this issue happen with Weave Net as well) to my cluster and do a kubectl get nodes
, all of them come back with a NotReady
status, even after waiting ten minutes, with conditions like this coming back after running kubectl describe nodes
:
Conditions:
Type Status LastHeartbeatTime LastTransitionTime Reason Message
---- ------ ----------------- ------------------ ------ -------
MemoryPressure False Fri, 16 Oct 2020 14:36:35 -0700 Fri, 16 Oct 2020 14:26:47 -0700 KubeletHasSufficientMemory kubelet has sufficient memory available
DiskPressure False Fri, 16 Oct 2020 14:36:35 -0700 Fri, 16 Oct 2020 14:26:47 -0700 KubeletHasNoDiskPressure kubelet has no disk pressure
PIDPressure False Fri, 16 Oct 2020 14:36:35 -0700 Fri, 16 Oct 2020 14:26:47 -0700 KubeletHasSufficientPID kubelet has sufficient PID available
Ready False Fri, 16 Oct 2020 14:36:35 -0700 Fri, 16 Oct 2020 14:26:47 -0700 KubeletNotReady runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:Network plugin returns error: No CNI configuration file in /etc/cni/net.d/. Has your network provider started?
All the CNI pods (ie kube-router-*
) are running, and checking /etc/cni/net.d
confirms there is a configuration file (ie. /etc/cni/net.d/10-kuberouter.conflist
). The condition is resolved after running systemctl restart crio
, but I shouldn't have to restart CRI-O just to fix this.
Output of crio --version
:
crio version 1.19.0
Version: 1.19.0
GitCommit: unknown
GitTreeState: unknown
BuildDate: 2020-09-15T00:00:00Z
GoVersion: go1.13.15
Compiler: gc
Platform: linux/amd64
Linkmode: dynamic
Additional environment details (AWS, VirtualBox, physical, etc.): This is on OpenSUSE Kubic, in a cluster with both amd64 and arm64 nodes. The master node is on a Raspberry Pi 4B with 4GiB RAM.