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

StorageOS 致力于改进有状态的容器存储

  • 2017-02-06
  • 本文字数:1182 字

    阅读完需:约 4 分钟

通过提供底层存储的单一视图和暴露自动化 API,StorageOS 致力于提供灵活的容器存储

StorageOS 是一个虚拟层,提供统一的可用存储层视图。该视图可作为卷(volume)来访问。StorageOS 以容器的形式运行,并用一个 Docker 卷插件来访问卷。也可以在容器外部直接访问卷。底层存储可以跨越许多运行StorageOS 的底层容器。为了解该方案背后更多的技术信息,InfoQ 联系了StorageOS 的创始人兼CTO Alex Chircop。据Chircop 介绍,StorageOS"可以通过单一层来访问后端的不同存储类型。虚拟化引擎目前支持物理和虚拟磁盘。我们正计划支持对象存储(如S3)。"

分布式存储系统必须处理容错和延迟。为了实现容错,Chircop 说,“存储池使用纠删码(erasure coding)和副本来做保护。节点内使用纠删码以应对磁盘故障,跨节点使用副本以应对节点故障。”

StorageOS 卷可以跨多主机,因此它们被创建在有实例化容器的节点上,以减少延迟。Chircop 说,通过使用固态硬盘感知的布局(layout)并减少算法中的写入放大(write amplification),该软件针对固态硬盘进行了优化。写入放大是写入固态硬盘时遇到的问题。写入放大发生的原因包括重读已经写入的数据,更新已经写入的数据和作为重写过程的一部分写入新的位置。固态硬盘在这里还包括 NVMe 设备,NVMe 是一种基于 PCI Express 总线的规范,用于访问诸如固态硬盘的非易失性存储介质。

无状态应用比有状态应用更适合容器,因为后者需要持久性存储。现有的存储架构不适合自动化。StorageOS 的既定目标之一是在操作方面与容器环境实现相同的灵活性。例如,StorageOS Docker 插件即时提供存储,并直接与 API 和控制面板集成。"docker run"命令可以在启动指定容器的过程中调配和加载存储。StorageOS 还计划与 Kubernetes 集成。

标签功能可以更好地与编排流水线集成。标签可以指示位置、特定应用以及像 QA 环境或模拟(staging)环境。使用标签标记一个卷就将激活该功能。

Docker 最近收购了 Infinit ,这是一家拥有可移植的分布式文件系统和存储层的初创公司。StorageOS 与他们的产品有什么不同? 听听 Chircop 怎么说:

企业中的一个问题是缺乏持久性的容器存储。对用户来说,Docker 所倡导的有状态分布式存储是一个容易的起点,很快客户就会面对企业级的持久性容器存储需求。Infinit 具有分布式文件系统,而数据库和消息队列需要快速的和确定的性能以及一致性保证,这些都是 StorageOS 体系结构的关键特性。

StorageOS 还可以与公有云(如 AWS)集成。由于被部署为容器,它可以安装在任何能够运行容器的平台上。还可以启用加密以满足数据隐私的要求。

查看英文原文 StorageOS Aims to Improve Stateful Container Storage


感谢王纯超对本文的审校。

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

2017-02-06 18:007209

评论

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

过滤数组中重复元素,你知道最优方案吗?

麦洛

数据结构 数组 数组去重

揭秘|为何程序员们能一直保持高收入?

丁长老

学习 程序员 写作 高薪

最近的一些人生感悟

小智

人生 哲学

用python爬虫保存美国农业部网站上的水果图片

遇见

Python GitHub 爬虫

Disruptor为何这么快

Rayjun

Java Disruptor

Facebook在用户增长到5亿时的扩容策略

Rayjun

团队管理 扩容

像经营咖啡店一样扩容 Web 系统

Rayjun

Web 扩容

有关Kotlin Companion 我们需要了解到的几个知识点

王泰

Java 编程 kotlin 编程语言

Zoom的加密算法,到底有什么问题?

X.F

算法 编码习惯 产品设计 安全 编程语言

回"疫"录(1):口罩危机也许是一种进步

小天同学

疫情 回忆录 现实纪录

死磕Java并发编程(3):volatile关键字不了解的赶紧看看

Seven七哥

Java Java并发 volatile

太慢是不行的

池建强

创业 产品

如何画一个闹钟

池建强

视觉笔记

关于HSTS - 强制浏览器使用HTTPS与服务器创建连接

遇见

https 安全 浏览器 TLS 证书

【SpringBoot】为什么我的定时任务不执行?

遇见

Java Spring Boot 定时任务 debug

理性主义和实证主义

王泰

理性主义 实证主义 哲学 软件工程

软件世界中的个人英雄与团队协作

王泰

团队管理 软件工程 团队协作

写作平台使用感受

小天同学

产品 体验 反馈

常用手机软件清单

彭宏豪95

效率工具 App 手机 移动应用

【SpringBoot】给你的 CommandLineRunner 排个序

遇见

Java Spring Boot

Nginx代理Oracle数据库连接

遇见

MySQL nginx oracle 反向代理

我敢说 80% 的程序员都掉进了「老鼠赛跑」的陷阱

非著名程序员

读书笔记 程序员 程序人生 提升认知

敏捷(组织)转型的6个准备条件

Bob Jiang

团队管理 敏捷 组织转型

dubbo-go 中如何实现路由策略功能

joe

Apache 开源 微服务 dubbo Go 语言

回"疫"录(2):不知者无畏

小天同学

疫情 回忆录 现实纪录

软件工程的史前时代 -- Therac-25 事件

王泰

质量管理 软件工程 软件危机 软件测试

程序员陪娃看绘本之启示

孙苏勇

程序员 生活 读书 成长 陪伴

个人知识管理精进指南

非著名程序员

学习 读书笔记 知识管理 认知提升

【SpringBoot】为什么我的 CommandLineRunner 不 run ?

遇见

Java Spring Boot

终极 Shell

池建强

Linux Shell

死磕Java并发编程(6):从源码分析清楚AQS

Seven七哥

Java Java并发 并发编程 AQS

StorageOS致力于改进有状态的容器存储_DevOps & 平台工程_Hrishikesh Barua_InfoQ精选文章