minikube: cri-dockerd v0.2.4 does not work out of the box with minikube
What Happened?
https://github.com/Mirantis/cri-dockerd/releases/tag/v0.2.4 now defaults to using the kubenet network plugin (https://github.com/Mirantis/cri-dockerd/pull/99). This does not work, at least with the none driver.
The cri-dockerd README suggests the cni driver as perhaps an alternative, but this doesn’t work either.
Only by checking the old code from cri-dockerd v0.2.3 can one find that it used to run with “no” network plugin (--network-plugin= on the cri-dockerd command line) as a valid arg, and that is what is needed to make it work.
Attach the log file
With the kubenet driver, kubelet reports:
Aug 03 16:04:29 MYHOSTNAME kubelet[3512192]: E0803 16:04:29.502654 3512192 kubelet.go:2349] "Container runtime network not ready" networkReady="NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: could not locate kubenet required CNI plugins [bridge host-local loopback] at [\"/opt/cni/bin\" \"/opt/cni/bin\"]"
and the node never becomes ready and so no pod is ever scheduled.
With the cni driver:
Aug 03 16:05:15 MYHOSTNAME kubelet[3517922]: E0803 16:05:15.295210 3517922 kubelet.go:2349] "Container runtime network not ready" networkReady="NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized"
Operating System
Ubuntu
Driver
None (Baremetal)
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Comments: 18
This PR is not working for me as-is, but for a reason I was able to identify. Posted details there, but tl;dr it’s just a typo and works after fixing that 👍
It is fixed by this PR, which always sets the network plugin: (avoids the previous shortcut, to not set it)
This was the minikube code that got broken:
Now that default changed to “kubenet” 😔
Note that both dockershim and kubenet were removed from upstream, while recommending to use CRI and CNI.