在 2025 收官前,看清 Data + AI 的真实走向,点击查看 BUILD 大会精华版 了解详情
写点什么

Kubernetes 提供了另一种容器运行时

  • 2017-05-09
  • 本文字数:1039 字

    阅读完需:约 3 分钟

传统上, Kubernetes 容器运行时是绑定到 Docker 和 rkt 的。但是在过去数月中,这一情况发生了变化。Kubernetes 发布了自己的容器运行时接口(CRI,Container Runtime Interface)API,同时正在完成一个称为 CRI-O 的实现,力图构建 Kubernetes 和 OCI 兼容运行时之间的桥梁。这为 Kubernetes 以标准方式使用任何 OCI 兼容容器运行时铺平了道路。

Kubernetes 依赖于底层的容器运行时实现生命周期控制,例如 Pull、创建、删除等操作。运行时实现为实际的容器,从操作系统层面管理命名空间隔离和资源分配。早期,Docker 和 rkt 是通过非公开的 API紧密集成到Kubernetes 源代码中的。要添加其它的运行时需要修补源代码,这是非常繁琐的,并且稳定性没有保证。为改进这一问题,在Kubernetes 1.5 中以公开发表测试特性的形式引入了CRI。CRI 提供了将容器运行时插入Kubernetes 系统的通用接口,使用户可以运行kubernetes 去编排并扩展他们的非Docker 和非rkt 架构。运行时也可以是 runv 这样的基于容器的 Hypervisor。

开放容器联盟(OCI,Open Container Initiative)是一个为标准化容器格式和运行时而组建的工业界联盟,它发布了容器运行时标准“ runtime-spec ”。当前该标准的实现包括 runc、 HyperHQ 的 runv 以及一种基于 Intel Clear Containers 的实现。CRI-O 项目是由 Project Atomic / RedHat 所启动的,还包括其它来自工业界的贡献者。它使用 OCI 兼容的运行时实现 Kubernetes CRI API,这意味着任何 OCI 兼容的运行时都可以通过 Kubernetes 的 CRI API 插入到 Kubernetes 中,而不必对每个运行时分别实现一个 CRI 适配器。

当前,Kubernetes 的 CRI 具有如下实现:

图片由 http://blog.kubernetes.io/2016/12/container-runtime-interface-cri-in-kubernetes.html 提供。

在 Kubernetes 部署中,Kubelet(在 Kubernetes 中称为 Minion)是在每台主机上的本地代理,与容器运行时进行通信。使用 CRI 后,Kubelet 可以通过 gRPC(一种开源的 RPC 框架)与 CRI 垫片(Shim)通信,其前端调用实际的运行时。Pod 是 Kubernetes 中的最小部署单元,其概念已经扩展为一个具有类似语义的概念,称为 PodSandbox。对于基于 Hypervisor 的运行时,PodSandbox 可理解成一个虚拟机。对于 Docker 等运行时,PodSandbox 可理解为 Linux 命名空间。

查看英文原文: Alternative Container Runtimes in Kubernetes

2017-05-09 19:002318
用户头像

发布了 227 篇内容, 共 86.8 次阅读, 收获喜欢 28 次。

关注

评论

发布
暂无评论
发现更多内容

怎样才能像月「睡后收入」 20 万的独立开发者一样挣钱?

非著名程序员

程序员 独立开发者 程序人生 提升认知

作业一:食堂就餐卡系统设计

LN

读笔 | 听说你也想辞职去摆摊?何不先收下这份秘籍

张鸱鸺

读书笔记 摆地摊 社会话题

分布式账本简介

程序那些事

区块链 分布式系统 区块链技术 hyperledger fabric

食堂就餐卡系统架构设计文档

竹森先生

极客大学 架构设计 极客大学架构师训练营

食堂就餐卡系统设计

戴维斯

架构师训练营第一周总结

Linuxer

极客大学架构师训练营

作业二:根据当周学习情况,完成一篇学习总结

LN

深圳各大知名办公园区引进 GoWork 智能楼宇管理系统,开启商业地产行业的春天

Geek_116789

Hyperledger Fabric基础知识

程序那些事

区块链 以太坊 超级账本 hyperledger fabric

【架构师训练营】第 1 周作业1—食堂就餐卡系统设计

花生无翼

极客大学架构师训练营

开启“观察者模式”,跳出灵魂看自己

小天同学

日常思考 个人感悟

【架构师训练营】第1周作业2—学习总结

花生无翼

食堂就餐卡系统设计

TiK

极客时间 - 架构师训练营 - week1 - 课堂笔记

毛聪

极客大学架构师训练营

第一周练习1 食堂就餐卡系统设计

王鑫龙

极客大学架构师训练营

IT自由职业者是怎么样的感受和体验

奈学教育

IT

数据结构与算法之数组链表

shirley

数组 链表

架构师训练营 - 第一周 - 学习总结

韩挺

PostgreSQL权限控制

唯爱

推荐几款基于 Markdown 语法在线制作简历的平台

JackTian

GitHub 网站 markdown 简历 工具软件

S型曲线 - 第二曲线

石云升

创新 增长 S型理论 第二曲线 破坏式创新

架构师训练营第一周学习总结

烟雨濛濛

Fabric的6大特性

程序那些事

区块链 blockchain 区块链技术 hyperledger fabric

IT自由职业者是怎么样的感受和体验

古月木易

IT职场

就餐卡系统设计

烟雨濛濛

极客大学架构师训练营

标题

lai

架构师训练营 - 第一周 - 食堂就餐卡系统设计

韩挺

架构师训练营第一周总结

极客大学架构师训练营

如何使用UML做需求分析与系统架构

JefferLiu

UML 架构文档

架构师训练营第一周命题作业

兔狲

Kubernetes提供了另一种容器运行时_DevOps & 平台工程_Hrishikesh Barua_InfoQ精选文章