K8S疑难概念理解——容器运行时。CRI实现从Docker切为containerd历史

  • 早期版本的k8s直接使用了docker部分功能,比如容器的创建、运行、监控、停止、销毁等,这一些与容器生命周期相关的逻辑实现就可称之为容器运行时
  • k8s意识到docker过于笨重,如docker-cli,docker swarm等组件k8s都用不上,那么能不能只要docker容器运行时这部分逻辑呢?于是K8S就把docker容器运行时(容器的创建、运行、监控、停止、销毁等实现)抽取为容器运行时接口CRI(Container Runtime Interface),也就是说容器运行时是CRI的具体实现。k8s为了让抽取的CRI更具有通用性,但这样就与docker有些对接不上了,于是k8s做了一个适配器dockershim。 Docker的容器运行时为初中期K8S版本默认的容器运行时,1.20版本dockershim被标记废弃,1.24移除,1.24后续版本切换轻量级的containerd为默认容器运行时实现了瘦身,并移除dockershim(意味着再想使用docker容器运行时安装会更复杂)。
  • CRI接口的抽取与开源迎来了百花齐放,目前开源的容器运行时还有CRI-O,rkt,Kata Containers等。
相关推荐
青春不流名9 分钟前
安装nerdctl和buildkitd脚本命令
容器
项目題供诗42 分钟前
黑马k8s(九)
云原生·容器·kubernetes
IP管家3 小时前
企业级IP代理解决方案:负载均衡与API接口集成实践
服务器·网络·数据库·网络协议·tcp/ip·容器·负载均衡
宋康3 小时前
Docker 常用命令
docker·容器·eureka
孤的心了不冷4 小时前
【Linux】Linux安装并配置MongoDB
linux·运维·mongodb·容器
wjy6_6 小时前
Rocky Linux 9.5 基于kubeadm部署k8s
linux·运维·kubernetes
意倾城7 小时前
Docker常见命令解读
docker·容器
我没有开挂12 小时前
旧 docker 版本通过 nvkind 搭建虚拟多节点 gpu 集群的坑
运维·docker·容器
小鸡,啄米13 小时前
centos9安装docker 配置docker代理
运维·docker·容器
oceanweave13 小时前
【K8S学习之生命周期钩子】详细了解 postStart 和 preStop 生命周期钩子
学习·kubernetes