BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Docker开源容器运行时组件Containerd

| 作者 薛命灯 关注 23 他的粉丝 发布于 2017年1月3日. 估计阅读时间: 3 分钟 | Google、Facebook、Pinterest、阿里、腾讯 等顶尖技术团队的上百个可供参考的架构实例!

不久前,Docker宣布开源他们的容器运行时组件Containerd(发音是container-D)。目前的Containerd版本是0.2.4,Docker计划在2017年第二季度基于Open Container Initiative(OCI)发布1.0版本。

Containerd是一个容器运行时组件,它原本是Docker平台的一部分,虽然小巧,但在整个系统里起到很关键的作用。Containerd被设计成一种低耦合并且很容易与其它工具集成的组件。它在Docker 1.12里所处的位置如下图所示:

从图中可以看出,Containerd提供了一组运行容器的API。Docker引擎通过调用GRPC API来启动执行进程,随后会启动管理器和执行器来负责监控和运行容器。容器最后通过runC来运行,runC也是Docker的另一个开源项目,它实现了OCI运行时标准

计划中的Containerd 1.0版本将会有所变化,它在Docker中的位置将会是如下图所示的样子:

新版的Containerd将包含如下特性:

  • 一个分布式的组件,它负责处理到注册中心的推送,无需与特定厂商关联。
  • 一组网络原语,用来创建系统接口和API,以便管理容器的网络命名空间。
  • 主机级别的镜像和容器文件系统存储。
  • 一组GRPC API。
  • Prometheus格式的度量指标API,用在内部和容器级别的度量指标上。
  • 完全支持OCI镜像和runC的参考实现。

关于Containerd的更多架构细节可以参看GitHub主页的内容。

Containerd是Docker开源的众多项目中的新成员,这些项目包括libcontainer、libnetwork、notary、runC、HyperKit、VPNkit、Datakit、swarmkit和Infrakit等。

此次开源Containerd,Docker是希望能够与广大社区和其它各大厂商巨头共同构建一个双赢的结果。正如Docker CTO Solomon Hykes所说的那样,“我们迫不及待地要把这个东西贡献出来,因为我们也会因此获得很好的回报,这是一种良性的回馈闭环,这个闭环里的各方都会从中受益”。基于Containerd,企业可以构建自己的容器管理软件。目前,阿里巴巴、Amazon、Google、Microsoft和IBM等公司的员工已经加入到该项目的贡献者行列。而随着该项目的不断完善,Docker也将因此得到好处。

为了避免Containerd与Docker或其它商业实体存在关联,Docke计划明年把Containerd独立出来,并交由中立基金进行管理。


感谢木环对本文的审校。

给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注 我们。

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT