Kubernetes 1.24 is expected in May 2022 and will no longer include dockershim. The kubelet will talk to a CRI runtime such as containerd or CRI-O directly.
Check what each node uses:
kubectl get nodes -o wide # CONTAINER-RUNTIME column
Images are unaffected: anything built with docker build still runs. What can break:
- Pods that mount
/var/run/docker.sockto build or inspect images. - Monitoring or log agents that read the Docker socket or Docker log paths.
- Scripts that run
docker pson nodes for debugging.
Replacements: use crictl ps on nodes; build images with Kaniko, BuildKit or Buildah in CI, or build outside the cluster.
On kubeadm clusters the runtime is switched per node with a drain, a runtime change and an uncordon. On EKS and other managed services the provider changes the node image, so watch their announcements. Practise on a test cluster now, not during the upgrade window.