2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

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:002246
用户头像

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

关注

评论

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

云管平台如何纳管多云资源?

嘉为蓝鲸

云计算 运维自动化 cmp 混合云 多云管理平台

手把手教你从数据预处理开始体验图数据库

NebulaGraph

数据库 数据预处理

阿里巴巴的“双11”高并发秒杀终极版教程!(Java语言设计)

Java架构追梦

Java 阿里巴巴 架构 面试 秒杀架构设计

2021年IT行业八大趋势预测

禅道项目管理

自动化 数字化 技术债 行业趋势

实践案例丨Pt-osc工具连接rds for mysql 数据库失败

华为云开发者联盟

MySQL 数据库 pt-osc工具 rds for mysql

什么是Selenium?使用Selenium进行自动化测试

码界行者

DevOps selenium

微服务的演化

箭上有毒

4月日更

Kubernetes入门——Kubernetes应用部署

百度开发者中心

Kubernetes #技术课程#

分布式锁之Redis实现

Sakura

4月日更

GitHub开源:17M超轻量级中文OCR模型、支持NCNN推理

不脱发的程序猿

人工智能 GitHub 开源 OCR 4月日更

4行指令解决pip下载Python第三方库太慢问题(pip更换国内下载源)

不脱发的程序猿

Python pip 4月日更 Python库安装

【转载】提高系统开发效率的“银弹”——X-series可视化大规模应用开发工具集

赫杰辉

轻松带你学习java-agent

华为云开发者联盟

Java Trace Java虚拟机 java-agent 挂载

anyHouse - Android 仿写 ClubHouse

anyRTC开发者

android 音视频 WebRTC RTC 语音社交

三步法助你快速定位网站性能问题

华为云开发者联盟

html 网站 网站优化 Performance面板 瀑布图

Android实现文档在线预览功能

寻找生命中的美好

android pdf预览 文档预览

事件分发源码,Android事件分发机制收藏这一篇就够了,威力加强版

欢喜学安卓

android 程序员 面试 移动开发

https如何使用python+flask来实现

华为云开发者联盟

Python flask https ssl HTTP协议

20 图 |6 千字|缓存实战(上篇)

悟空聊架构

redis 缓存 缓存穿透 缓存击穿 缓存雪崩

没想到【成功的计算机视觉应用】居然是这样部署的!

澳鹏Appen

人工智能 自动驾驶 机器学习 大数据 计算机视觉

飞桨分布式训练又推新品,4D混合并行可训千亿级AI模型

百度大脑

百度 AI 飞桨

网易有道 ASR 团队斩获 Interspeech 2021 算法竞赛两项冠军

有道技术团队

AI 算法竞赛

yarn 集群的架构和工作原理

五分钟学大数据

hadoop YARN 4月日更

「 社区建设功勋奖名单公布」—— InfoQ 写作平台【 1 周年盛典 】

InfoQ写作社区官方

1 周年盛典 热门活动

nginx 搭建简单图片服务器实现负载均衡

Java小咖秀

nginx 服务器 图片

百度大脑开放日福州站-智能制造与安全生产专场报名啦

百度大脑

百度大脑 开放日

亮相 LiveVideoStackCon,透析阿里云窄带高清的现在与未来

阿里云CloudImagine

视频编解码 视频处理

谈谈中台架构之交易中台

艾小仙

Flink + Hudi 在 Linkflow 构建实时数据湖的生产实践

Apache Flink

flink

事件分发机制Android,熬夜整理Android面试笔试题,精心整理

欢喜学安卓

android 程序员 面试 移动开发

5个超好用的Instagram图片下载工具推荐

科技猫

分享 下载 教程 图片 Instagram

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