写点什么

CRI-O 进入 CNCF 孵化阶段,或将挑战 Docker 在容器界的地位

  • 2019-04-10
  • 本文字数:1227 字

    阅读完需:约 4 分钟

CRI-O进入CNCF孵化阶段,或将挑战Docker在容器界的地位

根据 ZDNet 的消息,近期 CNCF 正式接纳了 CRI-O 为孵化项目,这意味着 CRI-O 或许将直接挑战 Docker 作为顶级容器运行时的地位。


CRI-O(Container Runtime Interface Orchestrator) 是一个轻量级的,专门对 Kubernetes 进行优化的容器运行时环境。CRI 最初是作为 API 来定义对容器运行时的调用,这允许用户开发 Kubernetes 友好的轻量级容器运行时程序。CRI-O 是第一个与 Kubernetes CRI 兼容的容器运行时,由 Google、Red Hat、英特尔、SUSE 和 IBM 联合开发。


几年前,Docker 很受欢迎。要大规模运行容器,你需要一个编排程序。到 2017 年底,Kubernetes 已成为最受欢迎的容器编排器。


当然,你可以在 Kubernetes 之下用 Docker 运行容器。实际上,Docker 仍然是 Kubernetes 的默认容器运行时。但轻量级的 CRI-O 运行时可以更好地通过 API 与 Kubernetes 一起使用。


CRI-O 有如下功能:


  • 存储github.com/containers/storage 库用于管理层并为 pod 中的容器创建根文件系统:实现 OverlayFS,devicemapper,AUFS 和 btrfs,OverlayFS 作为默认驱动程序。

  • 容器镜像github.com/containers/image 库用于从注册表中提取图像。 目前,它支持 Docker schema 2 /版本 1 以及 schema 2 /版本 2。它还通过了所有的 Docker 和 Kubernetes 测试。

  • 网络:容器网络接口(CNI)用于为容器设置网络。各种 CNI 插件如 Flannel,Weave,Cilium 和 OpenShift-SDN 已经经过了 CRI-O 的测试,并且能按预期工作。

  • 监控github.com/containers/conmon 是 CRI-O 中的一个实用程序,用于监控容器,处理来自容器进程的日志记录,为附加客户端提供服务以及检测和报告内存不足的情况。

  • 安全:容器安全分离策略由一系列工具提供,包括 SELinux,Capabilities,seccomp 和 OCI 规范中指定的其他安全分离策略。


CRI-O 已经非常受欢迎了。Kubernetes 联合创始人 Brendan Burns 表示,部分原因是因为 CRI-O 的创始负责人不是在重复造轮子,而是使用共享组件,在生产中测试后改进的方法,以及现有的经过实战检验的代码。因为 CRI- O 是专为 Kubernetes 量身定制的,它针对性能,稳定性,兼容性和其他标准,特别是 Kubernetes 一致性测试,进行了调整。CRI-O 是 Kubernetes 集群的构建块,可以根据需要促进容器的生命周期。


这是否意味着 CRI-O 将取代 Docker? 是的,但也不是。


正如 Red Hat 高级工程师和 CRI-O 维护者 Antonio Murdaca 所解释的那样,“CRI-O 是否会取代 Docker?并不会,或者说,它是一个以 Kubernetes 为中心的运行时,因此它在 Kubernetes 的背景下取代了 Docker。但是 Docker 作为我们习惯的开发工具,CRI-O 是没有办法取代的,因为它没有实现 Docker Engine API 或 Docker CLI。这意味着你不能使用 Docker CLI 与 CRI-O 守护进程通信。你必须经过 Kubernetes 才能实现通信。“


CRI-O 仍然会给 Docker 带来竞争。正如 CNCF 首席技术官 Chris Aniszczyk 所写,“CNCF 拥有各种容器运行时,我们很高兴 CRI-O 加入它们进行孵化。选择和竞争将使最终用户受益。”


2019-04-10 17:164618
用户头像
张婵 InfoQ 技术编辑

发布了 87 篇内容, 共 54.8 次阅读, 收获喜欢 218 次。

关注

评论

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

这份面试笔记到底有什么魔力?可以使我斩获了8家大厂offer(Java岗)

Java架构师迁哥

免费分享Spring Boot开发的优秀图书

Java入门到架构

Java springboot

代理

卢卡多多

代理 代理原理 7月日更

观天安门升旗纪要

穿过生命散发芬芳

摄影 游记 升旗

想学好编程,别背代码!

程序员鱼皮

Java Python 学习 大前端 计算机基础

让AI抛弃“小作坊”,拥抱“工业化”:盘古大模型究竟是什么?

脑极体

从0到1:用脚做一个路由器漏洞实例

网络安全学海

运维 网络安全 信息安全 渗透测试· SQL注入

Reactive Spring实战 -- 响应式MySql交互

binecy

MySQL 响应式编程 Reactive Spring

两天搞定一个BUG

IT蜗壳-Tango

7月日更

Redisson 分布式锁源码 09:RedLock 红锁的故事

程序员小航

Java 源码 分布式锁 redisson 红锁

在数字经济领域实现更充分更高质量就业的思考

CECBC

推荐系统的人工调控策略(三十五)

Databri_AI

人工智能 商业价值 推荐系统

5分钟速读之Rust权威指南(四十)高级trait

wzx

rust

自建开发工具系列-Webkit内存动量监控UI(四)

Tim

UI JSX

ARTS 日常打卡 - 7

pjw

软件开发的22条黄金法则

Zhendong

程序员 开发

linux服务器开发人员必须要彻底理解的关于【Linux】IO的线程模型

Linux服务器开发

reactor 网络编程 epoll Linux服务器开发 IO模型

用太极拳讲分布式理论,真舒服!

悟空聊架构

分布式 事务 CAS Base 7月日更

🏆【SpringBoot技术专题】「Cache缓存组件」Redis缓存使用技巧及注解大全

码界西柚

redis cache Sprint Boot 7月日更

Flink生产环境TOP难题与优化,阿里巴巴藏经阁YYDS

王知无

在线ASCII流程图编辑器工具

入门小站

工具

一篇并不起眼的Kafka面试题

王知无

给AI时代装配“新大脑”:数据密集型超算带来了哪些变革?

脑极体

Ansible Role

耳东@Erdong

ansible 7月日更 ansible role

Linux之文件属性详解

入门小站

Linux

初探 Redis 客户端 Lettuce:真香

白亦杨

Java redis

如何加速应用网格化部署?看这款社交产品怎么做

阿里巴巴中间件

共1575道,内卷把我逼成“收集王”汇总十家大厂面试题后,产出Java“完美圣经”

Java架构师迁哥

什么是统一语言?

escray

学习 极客时间 6月日更 7月日更 如何落地业务建模

SPAC:海外造壳上市

石云升

上市 7月日更

百分点大数据技术团队:ClickHouse国家级项目性能优化实践

百分点大数据团队

CRI-O进入CNCF孵化阶段,或将挑战Docker在容器界的地位_云原生_张婵_InfoQ精选文章