当前位置: 首页 > news >正文

k8s 使用Docker和Containerd对比分析

目录

k8s 使用Docker和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 拉取镜像

http://www.lryc.cn/news/348225.html

相关文章:

  • MySQL 通过 systemd 启动时 hang 住了……
  • pat乙1033-旧键盘打字
  • Ubuntu安装VScode
  • c# - - - winform程序四个角添加圆角效果
  • Springboot 集成 Consul 实现服务注册中心-05
  • 【软考高项】四十六、项目管理科学计算之运筹学
  • 使用 Python 和 OpenCV 进行实时目标检测的详解
  • Android build.prop生成过程源码分析
  • 计算机网络教材——谢希仁教材与配套PPT课件和《计算机网络——自顶向下方法》
  • mysql 离线安装
  • 【C++】 string类:应用与实践
  • 巩固学习7
  • Android 右键 new AIDL 无法选择
  • 使用Springboot整合Elasticsearch
  • Vue3+Element+TS动态菜单+按钮权限控制实现探索
  • 五款公司源代码加密软件推荐|代码防泄密解决方案
  • 【spring】Security 密码加密算法
  • IO系列(一) -一文带你读懂 java 中的IO流!
  • 代码随想录算法训练营第六天| 242. 有效的字母异位词、349. 两个数组的交集、202. 快乐数、1. 两数之和
  • 【python】中的可迭代对象、迭代器、生成器
  • 短视频矩阵系统源码/saas--总后台端、商户端、代理端、源头开发
  • K8s:二进制安装k8s(单台master)
  • C++类和对象下——实现日期类
  • 252 基于MATLAB的自适应差分阈值法检测心电信号的QRS波
  • SSIM(Structural Similarity),结构相似性及MATLAB实现
  • 第十六章-消费者-PUSH方式(一)
  • 【C++要哮着学】初识C++,什么是C++?什么是命名空间?什么又是缺省函数?
  • Lua 数字格式化
  • Java入门基础学习笔记13——数据类型
  • 使用Docker+Jar方式部署微服务工程(前后端分离)看着一篇就够了