k8s 使用Docker和Containerd对比分析

目录

[k8s 使用Docker和Containerd对比分析](#k8s 使用Docker和Containerd对比分析)

[互动1:docker build构建的镜像和containerd镜像通用吗?](#互动1:docker build构建的镜像和containerd镜像通用吗?)

互动2:k8s1.24之前版本和1.24及1.24之后版本区别?


k8s 使用Docker和Containerd对比分析

如果你使用Docker作为K8S容器运行时的话,kubelet需要先要通过dockershim去调用Docker,再通过Docker去调用containerd。

如果你使用containerd作为K8S容器运行时的话, kubelet可以直接调用containerd。 使用containerd不仅性能提高了(调用链变短了),而且资源占用也会变小(Docker不是一个纯粹的容器运行时,具有大量其他功能)。

调用链如下:

Docker 作为 k8s 容器运行时,调用关系如下: kubelet --> docker shim (在 kubelet 进程中) --> dockerd --> containerd

Containerd 作为 k8s 容器运行时,调用关系如下: kubelet --> cri plugin(在 containerd 进程中) --> containerd

互动1:docker build构建的镜像和containerd镜像通用吗?

答:通用的,docker save -o 生成的镜像文件,可以基于ctr --n=k8s.io images import 导出来 [root@xianchaomaster1 ~]# docker save -o centos centos:latest

root@xianchaomaster1 \~\]# ctr -n=k8s.io images import centos #### **互动2:k8s1.24之前版本和1.24及1.24之后版本区别?** 答:K8s1.24之前版本大多数在用docker作为容器,K8s1.24之后版本大多数在用containerd作为容器 如果k8s用docker做容器运行时,需要用docker pull 拉取镜像,如果k8s用containerd做容器运行时,需要用ctr --n=k8s.io images pull 拉取镜像

相关推荐
伊成13 小时前
细说Docker命令
docker·容器·eureka
java_logo14 小时前
vllm-openai Docker 部署手册
运维·人工智能·docker·ai·容器
阿里云大数据AI技术14 小时前
云栖实录|MaxCompute全新升级:AI时代的原生数据仓库
大数据·数据库·云原生
某zhuan14 小时前
云计算实验3——CentOS中storm的安装
centos·云计算·storm
jiyuzzz15 小时前
Docker部署WordPress及相关配置
运维·docker·容器
Micro麦可乐15 小时前
Centos Stream 9 中Docker安装出现 download.docker.com:443 的问题解决
linux·docker·centos·podman
LeeZhao@15 小时前
【具身智能】具身机器人VLA算法入门及实战(一):具身智能系统及VLA
人工智能·docker·语言模型·机器人
weixin_3077791315 小时前
在 Microsoft Azure 上部署 ClickHouse 数据仓库:托管服务与自行部署的全面指南
开发语言·数据库·数据仓库·云计算·azure
m0_7197592216 小时前
Docker 常用命令
docker
风清再凯17 小时前
05-k8s网络
网络·容器·kubernetes