云原生时代下,越来越多的企业开始使用 Kubernetes(K8s)承载数据库、消息中间件等“生产级”有状态工作负载。由于这些应用对数据持久保存、性能、容量扩展和快速交付具有较高的要求,企业往往需要采用专为 Kubernetes 环境设计的持久化存储方案,来满足有状态应用的存储需求。这也是不少用户感到困惑的地方:如何从市面上众多的 K8s 存储方案中,找到适合自己的产品?
这篇文章中,我们详细对比了 Longhorn、OpenEBS、Portworx、IOMesh 等主流 K8s 持久化存储方案,通过特性对比与性能测试,为用户产品选型提供直观参考。
在存储方案特性方面,Gartner 在《如何在容器与 Kubernetes 环境进行存储选型和实践(How Do I Approach Storage Selection and Implementation for Containers and Kubernetes Deployments)?》报告中,列举了 5 项云原生数据服务对传统存储方案的改进要求:
我们参考以上要求,同时结合国内对 IT 基础架构技术自研等方面的关注,对 Longhorn、Rook、OpenEBS、Portworx 和 IOMesh 5 款产品,从技术开闭源、本土化支持、存储架构、高级数据服务、与 K8s 的集成程度等方面进行了全面对比:
基于以上对比,用户在功能特性层面的选型上需要注意以下几点:
性能是评判存储系统是否能够支撑核心业务的关键指标。我们对 IOMesh、Longhorn、Portworx 和 OpenEBS 四个方案*,在 MySQL 和 PostgreSQL 数据库场景下进行了性能压测(使用 sysbench-tpcc 模拟业务负载)。
四个云原生存储系统在两项测试中的 TPS、QPS 以及 P95 延迟表现如下图所示。
从以上数据与对比可以看出,四个存储方案在性能与稳定性上的表现,从优到次依次为 IOMesh、Longhorn、Portworx 与 OpenEBS。
作为国内首款 K8s 原生的企业级分布式存储,IOMesh 可为运行在 Kubernetes 集群上的各类有状态应用提供稳定、高性能的持久化存储资源,降低方案构建成本与运维难度,加速企业云原生转型进程。欲了解方案详情,您可阅读博客、观看产品解读视频,或点击获取《IOMesh 用户指南》。
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞0
添加新评论0 条评论