雷锋网按:存储是容器即服务的的核心组件之一。容器原生存储将基础存储服务公开给容器和微服务。像软件定义存储一样,它从不同的介质中聚合和合并存储资源。
容器原生存储通过提供持久卷,使有状态工作负载能够在容器内运行。在容器运行时,容器原生的存储和网络构成了云原生堆栈中容器优化的操作系统上的层。
即便Kubernetes可以使用传统的分布式文件系统,例如网络文件系统(NFS)和GlusterFS,我们还是建议使用容器感知的存储结构,该结构旨在满足生产中运行的有状态工作负载的需求。客户可以从各种开源项目和商业实施中进行选择。
目前,云原生生态系统的定义主要通过容器存储接口(CSI)进行存储的规范,该规范鼓励采用标准的便携式方法,来完成和使用容器化工作负载时的存储服务。
为此,调查机构侧重于为IT技术人员评估技术路线图,其中简化支持Kubernetes工作负载的基础架构是最重要的标准之一。
在CNCF(云原生计算基金会)公布的2019 Cloud Native Computing Foundation市场调研中,分析了当前和未来K8s采用情况及用户面临的挑战。调查结果表明,早期技术采用与否与当前供应商有关,此外,用户早期采用云原生技术的满意度参差不齐。
其中许多用户将他们当前的存储和云的供应商列为云原生候选名单中,而且这个名单的可选择性并不少。
在云原生存储的选择上,用户最常使用Amazon EBS、Google Persistent Disk和Azure Disk Storage。
第二梯队的是Ceph、CSI和Gluster,其中37%的Gluster用户也使用Ceph。Ceph和Gluster是分布式文件系统,在多个节点之间添加了持久层。但是,它们没有很好地集成到K8s工具和工作流中,因而可能更难以维护和配置。
剩下的第三梯队产品,基本是由以存储为中心的服务商提供的服务,如Dell EMC、NetApp和Pure Storage。最初,k8s集成了卷插件以连接到这些产品的存储后端。不幸的是,上游K8s发行版变得十分臃肿。这意味着对插件的任何微小更新或更改都意味着重建和编译整个代码。
而对于传统存储,客户可能会有更多抱怨声。例如,选择Pure Storage的客户中有46%的在处理与容器相关的存储方面遇到了挑战,而K8s的普通用户这一比例仅为27%。尽管有13%的用户使用了容器存储接口(CSI),但问题难免还是会出现。CSI已于2019年在k8s上普遍可用,且有效解决了不断需要集成上游的问题。事实情况是,传统存储供应商包括纯容器存储服务商在内,正有转向CSI的趋势。这一点体现在用户对解决当前容器存储挑战的想法上,虽然总体上只有13%的用户在考虑使用CSI,但在存在存储挑战的用户群中,对CSI的需求一跃升至22%。
(雷锋网雷锋网)