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

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

关注

评论

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

智联招聘 × Pulsar|Pulsar 客户端在高吞吐场景下的内存控制实践

AscentStream

消息队列

从易用性的角度来看,哪个ETL平台比较好用?

谷云科技RestCloud

Apache ETL 数据集成平台 ETLCloud informatica

欧洲数字化养殖平台 Herdwatch 借力 Iceberg + StarRocks 提升分析能力

StarRocks

数据库 iceberg StarRocks 湖仓一体 Herdwatch

当远控遇上AI会擦出什么火花?细数ToDesk与向日葵的AI赋能功能

小喵子

远程 向日葵 ToDesk

了解CDC(变更数据捕获)如何革新数据集成方式

谷云科技RestCloud

数据传输 ETL 实时同步 CDC 数据集成平台

Elasticsearch 8.17 智能检索升级全攻略

阿里云大数据AI技术

搜索引擎 elasticsearch 阿里云 多模态 rag

一键生成完整SpringBoot工程!飞算JavaAI 代码工具如何解决老项目重构痛点

飞算JavaAI开发助手

基于开发者空间云开发环境,使用MateChat+MaaS构建智能对话应用

华为云开发者联盟

MaaS 华为开发者空间 MateChat

行业分享丨AI赋能流体仿真:从虚拟风洞到智能设计的实践与案例

Altair RapidMiner

人工智能 AI 仿真 CAE hyperworks

产研协作必备!一键拆分用户故事,敏捷冲刺规划不要太轻松

职场工具箱

效率工具 产品经理 敏捷开发 在线白板 在线协作

云智慧CastrelAI:生成式AI重塑故障根因新范式

云智慧AIOps社区

智能运维 IT 运维 工单管理

AI Agent 发展趋势与架构演进

阿里巴巴云原生

阿里云 AI 云原生 agent

AI智能体标准化之路:从西部荒野到协议共识

qife122

AI智能体 人工智能治理

qData 数据中台开源版发布 1.0.3 版本,全面升级数据质量与稽查管理能力

千桐科技

数据治理 qData 开源数据中台 Java数据中台 千数平台

为什么编码智能体可以重塑开发范式?

Comate编码助手

AI辅助编程 AI 编程 文心快码 文心快码Zulu

AI测试平台实战:自动化评分与多模型对比评测深度解析

测试人

白嫖ClaudeCode秘籍大公开!超详细

王磊

性能监控与剖析工具全指南:测试开发工程师必备利器

测试人

588次长征征程再添新星!我国成功发射卫星互联网低轨卫星

DevOps和数字孪生

航空航天

拒绝代码纠错不准、原有逻辑被改!飞算 JavaAI 行间预测功能实战解析

飞算JavaAI开发助手

多点DMALL与OceanBase:实现租户间资源完全隔离与低成本系统升级

老纪的技术唠嗑局

oceanbase 国产数据库

Databend 亮相 DTCC 2025:存算分离架构引领湖仓一体化

Databend

AWS OpenSearch 可观测最佳实践

观测云

AWS

JeecgBoot代码生成器1.5.1重磅升级:一键生成,告别手工迁移

JEECG低代码

低代码 代码生成

手把手教你搭建MCP服务器

测吧(北京)科技有限公司

#人工智能 MCP

IT管理员遇到了公司数据泄露问题,老板要让IT管理员出一个泄露报告, IT管理员怎么办?

运维有小邓

Apache Flink错误处理实战手册:2年生产环境调试经验总结

Apache Flink

大数据 flink 实时计算

AI 生成内容崛起,内容创作者如何避免被取代?

Wolink

人工智能、 海外营销推广 沃链Wolink 达人营销

基于开发者空间知识推荐能力,搭建DeepSeek知识集

华为云开发者联盟

DeepSeek 华为开发者空间

深入解析Cairo静态分析工具Amarna:安全编程新利器

qife122

静态分析 区块链安全

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