一、OpenEBS简介
OpenEBS 是一种开源云原生存储解决方案,托管于 CNCF 基金会,目前该项目处于沙箱阶段。
OpenEBS能够将Kubernetes工作节点上可用的住何存储转换为术卷或分布式复制卷。
OpenEBS 支持两大类卷——本地卷和复制卷。
本地卷
本地卷,即节点级卷,仅支持在卷所在的节点本地访问。因此,Pod也必须调度至卷所在的节点才能使用本地卷
OpenEBS可基于本地块设备或分区、子目录或者LVM、ZFS、甚至是由文件模拟的设备来创建PV,这些可统称为本地卷
复制卷
复制卷,是支持是将数据同步复制到多个节点的卷,因而能实现节点容错,以及跨可用区进行数据复制
OpenEBS可基于Mayastor、cStor、liva三种引擎之一,为每个分布式复制卷创建一个微服务Pod通过iSCSI (cStor和Jiva)或NVMeoF(Mayastor) 连接至卷上
二、OpenEBS存储引擎
OpenEBS提供了一系列的数据引擎,所有引擎都支持PV的动态置备和数据的强一致性.
OpenEBS基于不同的存储引擎实现不同的存储功能。
本地引擎
本地引警可以从本地磁盘设备 (依赖于NDM) 或主机路径创建PV,也可基于集群节点上的LVM或ZFS创建PV
适合内置可用性和可扩展性功能的应用程序,或者作业类的有状态工作负载
基于节点上支持的存储机制,可选的动态Local PV包括 Local PV hostpath、 Local PV device、ZFS Local PV、LVM Local PV和 Rawfile Local PV这五种
复制引擎
复制卷,顾名思义,就是那些可以将数据同步复制到多个节点的卷
复制引擎允许从复制节点范围内的任一节点上进行数据访问,并支持跨可用区进行复制
复制卷通常还支持快照、克隆、扩展等功能
基于节点上支持的存储机制,可选的复制引擎包括Mayastor、cStor和Jiva
OpenEBS 存储引擎建议
应用需求 | 存储类型 | OpenEBS 卷类型 |
---|---|---|
低时延、高可用性、同步复制、快照、克隆、精简配置 | SSD/ 云存储卷 | OpenEBS Mayastor |
高可用性、同步复制、快照、克隆、精简配置 | 机械 /SSD/ 云存储卷 | OpenEBS cStor |
高可用性、同步复制、精简配置 | 主机路径或外部挂载存储 | OpenEBS Jiva |
低时延、本地 PV | 主机路径或外部挂载存储 | Dynamic Local PV – Hostpath, Dynamic Local PV – Rawfile |
低时延、本地 PV | 本地机械 /SSD/ 云存储卷等块设备 | Dynamic Local PV – Device |
低延迟,本地 PV,快照,克隆 | 本地机械 /SSD/ 云存储卷等块设备 | OpenEBS Dynamic Local PV – ZFS , OpenEBS Dynamic Local PV – LVM |