Kubernetes CRI

The Container Runtime Interface (CRI) is a standardized plugin interface and gRPC protocol that enables the kubelet (Kubernetes node agent) to communicate with multiple container runtimes like Docker, containerd, and CRI-O without requiring recompilation of cluster components.[1][2] CRI…

Key facts

First appeared
2016
Category
technology
Problem solved
Before CRI, Kubernetes had Docker and rkt directly integrated into the kubelet source code, creating tight coupling that made it difficult to integrate new container runtimes, risked breaking Kubernetes as both evolved, and created an effective monopoly on container runtimes within the ecosystem.[1] CRI solved this by providing a standardized interface allowing any container runtime to work with Kubernetes without deep knowledge of Kubernetes internals.[1]
Platforms
Linux, Kubernetes clusters, Any platform supporting gRPC

Related technologies

Notable users

  • All Kubernetes distributions and deployments
  • Cloud providers (AWS, Google Cloud, Azure)
  • Enterprise organizations running Kubernetes