containerd containerd简介

containerd containerd简介

containerd是什么

官方定义为k8s默认的官方容器运行时image

image

containerd和k8s的关系:
  • kubelet通过grpc协议和containerd交互。k8s规定了这个交互的规范,这就是大名鼎鼎的CRI。这里我们理解CRI为一个k8s定义的接口。它定义在 k8s.io/cri-api 中。只要实现了这套规范,就可以成为k8s的容器运行时。
  • Containerd 创建一个容器时会创建一个containerd-shim进程,然后container-shim进程创建业务进程。
  • 对于k8s中的pod,可以通过containerd创建一个pause 容器,然后创建业务容器,这两个容器共享特定的namespace即可
docker-containerd的作用
  • 创建容器记录的metadata
  • 请求 containerd 的 task 模块,task 模块会在 runtime 中创建 task 实例,分别会加入 task list, 监控 cgroup 等操作
  • 每个 task 实例则调用 shim 去创建container
Containerd的运行优势
  • container和docker不同,containerd重点是继承在大规模的系统中,例如kubernetes,而不是面向开发者,让开发者使用,更多的是容器运行时的概念,承载容器运行。
  • 官方提供sdk,可以在工程中实现镜像、容器得全部操作。
  • 从k8s的角度看,可以选择 containerd 或 docker 作为运行时组件:其中 containerd 调用链更短,组件更少,更稳定,占用节点资源更少。
  • containerd 相比于docker , 多了 namespace 概念,每个 image 和 container 都会在各自的namespace下可见。

Containerd 启动流程

如图image

参考文档

初识containerd(一)现存的容器运行时概览

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值