11. k8s二进制集群之容器运行时
- 对于容器运行时有哪些关键特证
- 常见的容器运行时可分为低级和高级两类
- 下面来看一下k8s是如何与容器运行时进行交互
- 下面以cri-dockerd为例配置容器运行时
- 最后启动cri-docker服务并设置开机自启动
- 总结
在 Kubernetes(k8s)中,容器运行时(Container Runtime) 是负责管理和运行容器(如 Docker 容器)的核心组件。它直接与操作系统内核交互,执行容器的生命周期的操作(创建、启动、停止、删除等)。Kubernetes 本身并不直接操作容器,而是通过容器运行时接口(CRI, Container Runtime Interface)与不同的容器运行时进行交互的过程。
对于容器运行时有哪些关键特证
- 容器生命同周期:负责拉取容器镜像、创建容器进程、管理容器运行状态(启动/停止/删除)。
- 资源隔离:基于 Linux 内核的 Namespace(隔离资源视图)和 Cgroups(限制资源使用)实现容器的资源隔离。
- 镜像管理:支持从镜像仓库(如 Docker Hub、私有仓库)拉取和存储容器镜像。
- 兼容性:遵循 Kubernetes 的 CRI(Container Runtime Interface)标准,确保与 Kubernetes 协同工作。
常见的容器运行时可分为低级和高级两类
- Low-Level Runtime
这类称为低级容器运行时,直接操作容器进程的工具,通常只负责启动和停止容器。一般有runc和youki两种运行时;其中runc为Docker 和 containerd 默认使用的运行时,实现了 OCI(Open Container Initiative)标准,是实现容器优化的轻量级运行时&#