写点什么

云原生时代 容器持久化存储的最佳方式是什么?

发布于: 2020 年 10 月 27 日


云妹导读:

在存储专题的上一篇文章《送你4句口诀 云存储选型不再犯难》中,云妹为大家的云存储选型提供了几种方法,只需记住 4 句口诀,就能选到适合自己应用特点的云存储服务。本篇文章我们将深入介绍云存储产品体系中的文件存储服务,并看看它在容器环境下如何提供持久化的共享型存储?


首先,我们来看一下云端文件存储具有哪些特点?

 

云文件服务(Cloud File Service)是一个全托管的简单、易用、高可靠的文件共享存储服务,具有自动弹缩的容量及性能管理等特点,完整支持 POSIX 语义接口,可平滑对接上云企业内部各种应用系统,并满足容器共享存储、AI 训练、大数据分析、视频渲染处理、动态网站以及在线教育等场景下的存储服务需求。


相比虚拟机,容器的设计寿命更短,一旦容器销毁,所有的临时数据也将随之消失。当然,如果没法实现容器的持久化存储,容器应用程序的使用将会十分受限。容器化的应用需将要保留的数据持久化到容器外部的 Volume 数据卷中,该存储设备不会随着容器生命周期的终结而消失。持久化数据卷又分为共享和非共享两种类型,非共享数据卷只能被某个节点挂载使用,共享数据卷则可以让不同节点上的多个 Pod 同时使用。

 


对有状态的应用来说,共享型的卷存储能够很方便地支持容器在集群各节点之间的迁移。由于以微服务架构为主的容器应用多为分布式系统,容器可能在多个节点中动态地启动、停止、伸缩或迁移。因此,数据被不同节点共享访问的文件系统存储,天生可以支持有状态的容器应用的灵活扩容、迁移。

 

同时,容器是面向应用的运行环境,数据通常要保存到文件系统中,即存储接口以文件形式更适合应用访问。云文件存储服务天生具备共享访问,支持 POSIX 语义接口,可以无缝支持共享容器数据卷。



在线教育是基于视频直播的企业日常运营典型业务场景,往往依赖于众多的 IT 系统联合构建而成。在疫情因素的影响下,在线教育行业迎来一波上云高峰。依托于云计算的技术设施特性,能够帮助企业避免业务侧重复工作、快速扩容、提高资源利用率、降低开发和运维成本。对在线教育架构的云原生优化,大大减少了运维和测试的工作量,方便对运行版本的控制,简化了集群规模管理调度,相比虚机降低了不少成本。

 

京东智联云为在线教育平台量身定制了多场景解决方案,凭借强大的基础设施服务能力和完善的存储产品矩阵、以云上文件存储服务为核心构建全流程生态,为在线教育企业在课程录制、课程回看以及课程互动监控等场景提供完善的解决方案。通过 IO 路径优化、智能监控、智能弹缩资源解决热点均衡问题,为多集群,数千个课堂的互动、录制及回看的视频直播平台提供了完整的技术基础,提升了用户体验。


▲图一▲


如图一所示,各类客户终端通过网络负载均衡路由到 Kubernetes 集群,根据课堂需要启动录制 Pod,用以视频、音频的录制,增加课堂互动设置等,该类 Pod 会将录制的视频流直接写入云文件存储中。

 

在线教育高峰期间会有数千个课堂,即数千个录制 Pod 共享写文件存储;录制完成后,需要对录制内容进行简单的编辑处理,生成可回看的素材,该类任务录制完成的数量动态拉起编辑 Pod,对文件存储进行读写编辑,最后生成回看文件;后期将回看文件上传到云对象存储中,供学生及家长回看课堂内容。

 

京东智联云解决方案带来的优势:


  1. 安全快速的弹性扩缩容能力:应对业务高峰时短时间内扩容,及低谷时的缩容;

  2. 多并发、高性能的共享文件存储:加速录制内容的并发写入能力、编辑内容的读写能力,为业务的流程流畅稳定提供基础;

  3. 智能感知热点及故障,自动迁移 Pod:通过智能监控,自动迁移的能力,结合共享存储的特点,重保在线业务的稳定;

  4. 完善的技术支持团队:专业的团队,及时的响应,为客户减少运维投入及压力,提供稳定可靠的技术保障。

 


如图二所示,容器存储控制面是通过标准的京东智联云 CSI,规范的 API 接口创建、删除、加载、卸载 Volume:


  • 首先,调用 Kubelet 启动 Pod,挂载京东智联云文件服务;

  • Kubelet 根据配置文件找到云文件服务挂载信息,挂载到指定目录下(/var/lib/kubelet/pods/*/volumes/jdcloud-cfs/nas-pv);

  • Kubelet 创建 Pod,并将京东智联云文件服务的挂载目录映射到/workload 目录,完成控制面的挂载映射流程,接下来 Pod 即可读写 Storage Class 里云文件服务的 PV。

 

▲图二▲


容器存储在京东智联云文件存储上可实现共享持久化数据存储,支持数千个 Pod 共享读写访问,不但可降低容器存储容量规划管理的复杂度,还能提高存储空间利用率,同时在 Node、Pod 出现访问热点、故障时可以快速切换恢复,保障业务连续性。


著名分析机构 Gartner 在最近发布的《在生产中运行容器和 Kubernetes 的最佳实践》报告中,指出 2022 年将有 75%的组织在生产中使用容器化应用。使用容器编排应用,一方面可以更好地统一调度 CPU、内存,另一方面可统一管理容器中的持久化数据及状态控制信息。随着容器被应用的越来越广泛,云原生成为助力企业全面拥抱云计算的最佳捷径,同时对容器存储提出了更高的要求,而京东智联云存储平台提供一贯的稳定性、极高的性能,严格的网络安全隔离性、无限制的横向扩展能力以及智能灵活的弹缩能力,完美满足容器对存储的各种需求。


推荐阅读:

送你四句口诀 云存储选型不再犯难

京东智联云新一代分布式数据库TIDB架构揭秘

比MySQL快839倍!揭开分析型数据库JCHDB的神秘面纱


点击【京东智联云】,可了解更多存储知识

更多精彩技术实践与独家干货解析

欢迎关注【京东智联云开发者】公众号




发布于: 2020 年 10 月 27 日阅读数: 106
用户头像

拥抱技术,与开发者携手创造未来! 2018.11.20 加入

我们将持续为人工智能、大数据、云计算、物联网等相关领域的开发者,提供技术干货、行业技术内容、技术落地实践等文章内容。京东科技开发者社区官方网站【https://developer.jdcloud.com/】,欢迎大家来玩

评论

发布
暂无评论
云原生时代 容器持久化存储的最佳方式是什么?