企业容器云持久化存储方案设计及难点解读.docx
《企业容器云持久化存储方案设计及难点解读.docx》由会员分享,可在线阅读,更多相关《企业容器云持久化存储方案设计及难点解读.docx(17页珍藏版)》请在第一文库网上搜索。
1、企业容器云持久化存储方案设计及难点解读容器迁移过程中,同时需要对数据也进行迁移,需要一套数据扩容和管理的机制来满足有状态服务的数据存储需要。在面向有状态的容器服务时,需要考虑以下几个方面的数据持久化需求:1、容器对应的存储卷在进行故障恢复时,会带来卷的挂载和卸载。为了保证整个生产环境的高可用,卷的挂载和卸载一方面需要具有足够的稳定性,同时也需要考虑性能需求,避免应用延迟。2、存储卷快照管理需求。传统的存储卷快照策略主要从资源角度进行管理,而容器的存储卷往往动态分配而来,快照策略需要与容器应用备份需求保持一致。3、容量扩容需求:随着容器应用数据的增长,存储卷容量需要考虑扩容的能力,最大程度避免对
2、应用运行的影响。4、运维管理需求:随着容器有状态应用的增长,对传统存储运维工作也会带来挑战,整体方案需要兼顾运维敏捷和安全。5、分布式存储需求:银行创新业务的扩展能力通常都是横向扩展的,需要容器云具备横向扩展的能力,需要引入分布式存储架构部署在容器云平台上。为了能更好的解决大家在容器云持久化上的需求及方案设计下遇到的建设难点,twt社区不久前特别邀请了某大型银行的容器云专家以及SmartX的容器持久化专家在线辅导答疑。本文对交流内容进行总结,供更多同行参考。分为四个部分:容器持久化存储建设难点和关注点、容器持久化存储的建设方案重点考虑的涉及层面、容器持久化技术层面的选择、交流总结共识。一、容器
3、持久化存储建设难点和关注点1、企业容器云为支持有状态应用的容器应用部署,存储设计时需要考虑哪些因素?rechen招商银行云计算架构师:有状态应用的状态可细分指拓扑状态、存储状态。其中拓扑状态指应用的多个实例之间不是对等关系,这些应用实例,必须按照某种顺序启动。存储状态则是指应用的多个实例分别绑定了不同的存储数据,对于这些应用实例来说。当应用因为某些原因导致了宕机,重启后依旧可以正常的读取到数据。在容器云上部署的有状态应用,其部署需求有:维持稳定且唯一的网络标识,提供稳定持久的存储,提供有序和优雅的部署和伸缩能力,提供有序和自动的更新能力。因此存储设计时,要综合考虑到有状态应用的特征进行设计,譬
4、如在容器云上部署数据库这类有状态应用,和部署日志监控这类有状态应用就有不同的设计维度和优先级。存储产品的选型优先考察稳定、安全、性能和API能力。asdf-asdfc1oudstone研究学者:当前有状态应用的容器应用部署,如果有能力应修改应用。使其状态保存在缓存服务器类似Redisc1uster中,相关日志统一进入E1K,或者Kafka完成持久化。这样存储设计相对简单,只要保证E1K和Redis的存储容量和访问速度。如果无法修改应用,需要挂载一个持久化卷,来持久化数据。使数据可以在不同节点漂移,需要所有主机对存储的访问权限,这个又会出现存储访问风险。在实际业务场景,把存储分多个区域,挂载到对
5、应区域的主机,进行区别访问,避免访问风险。2、持久化存储选择集中式存储,还是分布式存储?rechen招商银行云计算架构师:容器云的持久化存储的选型,还是要根据承载的工作负载进行具体分析。譬如在容器云上部署关系型数据库,且数据库的数据是重要的业务系统数据,则选择集中式存储为宜。如果是业务应用系统的日志,或者是配置文件,则建议优先选择分布式存储,在扩展性和成本收益上更佳。nawangSmartX产品经理:集中式存储:可以在Kubernetes中使用已有的FC-SAN或NAS。然而,传统存储不可弹性扩展、依赖专有硬件、运维管理相对复杂等特点与云原生所要求的敏捷背道而驰,它们并不是K8s的首选。分布式
6、存储:分布式存储天然具有横向扩展能力,在性能和高可用方面远优于集中式存储,非常适合应对大规模虚拟化场景。不过在实际的使用过程中,大部分分布式存储的性能和稳定性都难以达到生产级别的标准,这使得很多运维团队不敢轻易地部署分布式存储产品。二、容器持久化存储的建设方案重点考虑的涉及层面1、金融行业企业级容器持久化存储方案,开源和商用应该如何选择?优劣势分析?rechen招商银行云计算架构师:金融行业企业级容器持久化存储方案,建议从稳定性、安全性维度上,选择商用产品。选择走开源路线的话,则必须要自建研发团队补齐稳定性和安全能力,以及高水平的运维团队,这样综合成本上看,是投入大、风险高且见效慢,不利于金融
7、行业提升业务核心竞争力。nawangSmartX产品经理:建议选择商用型存储方案。商用型存储方案,以IOMesh云原生存储产品为例,相较Ceph、G1usterFS类开源架构的分布式存储,优势有以下几点:1)掌握核心代码,可控性更强。开源产品的演进由社区主导,厂商无法根据客户需要快速落地功能;出现严重问题时也不能特别快速地响应,往往需要等待社区的修复。IOMesh选择自主研发的形式,充分把控产品质量和功能,可以根据众多客户的实际需求迭代产品,也能在出现问题时提供本地研发级别的快速响应,为用户业务运转提供强有力的保证。2 )更灵活。通过元数据服务实现数据副本的精确放置,可以形成更加灵活的副本分配
8、策略,并按照资源进行调整副本分配位置,而不是简单打散;3 )性能更高。可以实现计算与存储I/O路径的深度融合,发挥更高的性能。2、容器持久化存储方案重点考虑哪些层面设计?nawangSmartX产品经理:1云原生存储系统需要能够良好的运行在各种不同服务商提供的公有云环境或私有云环境,能够很好地和其他云原生基础设施配合,例如云原生数据库,使得云原生数据库可以真正的在公有云和私有云都能够得到一致的用户体验。2.云原生存储系统需要为运维人员提供相同接口和运维方式,即运行在K8s中,使用K8s的工具进行运维和管理,具备容器化部署、自动运维、声明式接口等特征,降低运维团队的负担。3、如何选择合适的容器云
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业 容器 持久 存储 方案设计 难点 解读
