Kubernetes Container Runtime Concepts

From NovaOrdis Knowledge Base
Revision as of 21:31, 21 August 2019 by Ovidiu (talk | contribs)
Jump to navigation Jump to search

External

Internal

Container Runtime Interface (CRI)

The Container Runtime Interface (CRI) is an abstraction layer that standardizes the way third-party container runtimes interface with Kubernetes. Irrespective of the container runtime in use, the regular Kubernetes commands and patterns apply. CRI exposes a clean documented interface for third-party container runtimes to plug in to.

Container Runtime

Each Kubernetes node runs a container runtime, usually Docker. However, support for other container runtimes is available, via Container Runtime Interface (CRI). A container runtime performs container-related tasks such as pulling images and starting and stopping containers.

Available Container Runtimes=

Docker

Kubernetes and Docker are complementary technologies. Docker is the technology that starts and stops containers under Kubernetes' supervision. Kubernetes is the higher-level technology that decides which nodes to run containers on, when to scale an application up or down or when to apply updates.

containerd

A container runtime that consists in a stripped-down version of Docker. containerd is a CNCF project.

cri-containerd

A community-based Open Source port of containerd.


Runtime Classes

Runtime classes is a feature that was introduced in Kubernetes 1.2. It allows for different classes of runtimes (gVisor, Kata Containers, etc).