Container Runtime Interface (CRI)

    You need a working container runtime on each Node in your cluster, so that the can launch Pods and their containers.

    The Kubernetes Container Runtime Interface (CRI) defines the main protocol for the communication between the cluster components and container runtime.

    The kubelet acts as a client when connecting to the container runtime via gRPC. The runtime and image service endpoints have to be available in the container runtime, which can be configured separately within the kubelet by using the --image-service-endpoint and

    When upgrading Kubernetes, then the kubelet tries to automatically select the latest CRI version on restart of the component. If that fails, then the fallback will take place as mentioned above. If a gRPC re-dial was required because the container runtime has been upgraded, then the container runtime must also support the initially selected version or the redial is expected to fail. This requires a restart of the kubelet.