服务热线:

15378180513

华为 网络产品

华为路由器,交换机,服务器,防火墙,无线产品一站式提供商!

新闻资讯
新闻资讯
联系我们

联系人: 刘经理

手机: 15378180513

电话: 028-83252151

邮箱: liutao@cdh3c.com

地址: 成都市武候区人民南路4段53号嘉云台丙栋7楼

技术知识

如何用专业NAS存储,应对容器化改造关键诉求

作者:点击:236 发布时间:2023-06-13

当前,容器已成为了最热门的虚拟化技术,其雏形可追溯到1979年Unix V7的进程隔离技术。2013年,随着Docker的出现,容器开始普及。2020年,Kubernetes(简称k8s)的成熟,让容器管理变得简单,极大地促进了容器技术应用到生产。作为一种轻量级的虚拟化技术,容器和虚拟机相比,具有可移植性更强(Build Once Run Anywhere)、成本更省、效率更高等特点,能够大大提高新应用的开发、测试、上线效率,在企业中得到了广泛的使用。635e739fd2b37.png


容器架构图容器化改造的路径:开发测试→日志存储→分布式中间件知名分析师机构451 Research的调研显示,95%的新应用程序将会采用容器部署。通常应用要运行在容器上,都需要先进行微服务化的改造,然后通过DevOps流水线进行开发、测试和发布。容器化改造,就是从开发测试场景开始的。开发测试本身也需要考虑代码的高效存储、共享。开发测试环境准备好之后,还需要考虑日志的存储。传统的应用程序运行在一台服务器上,当进行问题的诊断和分析时,只需要在程序运行的服务器上搜集日志即可。而经过微服务化的改造后,一个应用程序可能被拆分成多个甚至十几个微服务。这些微服务可能运行在不同服务器上的容器里面,要想获得应用的完整日志,操作就变得复杂起来。此时,就需要搭建一个高效的日志系统来快速定位程序运行过程中的问题。随着应用逐步被改造,微服务会越来越多,有状态应用的改造也被提上日程,此时需要使用容器化部署的分布式中间件如MySQL/ PostgreSQL等数据库进行数据持久化,使用Redis作为分布式缓存来加速,使用Kafka打造流平台,构建数据挖掘等能力,最终打造一套数据中台,进一步提升资源利用率、开发效率以及降低成本。此时,这些分布式中间件如何实现更优化的部署,如何满足其对存储的诉求就成了企业最关注的问题之一。某大型国有银行于2019年启动了DevOps流水线首批试点项目的评级工作,个人网银项目、手机银行存款贷款业务等项目于2020年5月顺利通过评估。2021年完成容器云平台的建设,使用Kafka流平台,Redis分布式缓存等中间件实现AI、大数据、数据库等领域的改造。容器场景的典型应用对存储的诉求开发测试场景对容器存储的诉求:数据共享、租户隔离、高性能小文件读写、权限管理、容量配额、QoS开发测试是一个典型的文件共享读写的场景,编译的组件包需要在多个开发部门间共享,代码文件需要在组织内共享。代码文件是典型的小文件,代码的上传和下载需要高性能、低时延。不同的部门间,需要做存储隔离,防止核心代码外泄。代码的访问权限也需要根据角色进行差异化设置。编译的组件包要占用大量的存储空间,需要限制组件的保留周期或数量。开发、测试、发布三个功能模块需要有优先级设置,以便保障高优先级任务优先获得存储资源。日志存储场景对存储的诉求:高性能小文件读写、权限管理、高可靠、容量配额、运维简单WEB类应用和APP的后台服务类应用往往是最先迁移到容器中的应用。这类应用的用户需求变化快,容器化改造后能够缩短交付周期,快速满足用户需求。这类无状态应用一般不涉及数据持久化,但会产生运行日志,企业需要构建一个高效的日志分析系统来分析客户的个性需求或是快速定位程序运行过程中发现的问题。日志是小文件,不同的容器应用产生的日志需要根据应用权限分类存放;存储需要高可靠,避免数据丢失;运维需要尽量简单,在服务器故障容器漂移时能够自动跟随容器漂移,避免日志遗漏或丢失,避免人工介入才能恢复。日志的保存周期和数量需要做好规划和配额管理,在容量不足时能够发出告警提醒管理员及时介入处理。数据库对存储的诉求:高性能、稳定低时延、高可靠、快照、容灾、备份数据库对时延非常敏感,通常要求时延在1ms以内,容器化部署还需要存储在故障时能够自动快速漂移;数据库业务对存储的可靠性要求极高,盘故障就导致数据不可用是无法接受的;此外,存储还需要支持快照、备份对数据进行保护,需要同步复制、双活来保障业务的高可用。Redis分布式缓存对存储的诉求:高性能、高可靠Redis是一个开源的key-value存储数据库。通常用于会话缓存、消息队列(支付)、活动排行榜或计数、发布/订阅消息(消息通知)、商品/评论列表等。根据DB-Engines网站的统计,Redis数据库是key-value数据库中使用量最大的数据库。Redis是内存数据库,为了避免进程退出导致数据的永久丢失,需要定期将Redis中的数据以某种形式(数据或命令)从内存保存到硬盘。当下次Redis重启时,利用持久化文件实现数据恢复。为了避免服务器故障或者存储故障后Redis服务不可用,Redis需要运行在高可用模式。NAS存储能够很好的支持Redis的数据持久化诉求,在Redis Enterprise版本中,官方推荐使用NAS存储作为容器云场景下的最佳选择。流平台对存储的诉求:高性能读写、高并发、数据共享、高可靠Kafka是一个吞吐量高、低时延的分布式消息队列系统,用于用户网页浏览、搜索、点击等活动跟踪,运营指标监控等。635e744d96f19.png


Kafka架构示意图Kafka的文件IO特征为高性能大并发顺序写及大并发顺序读。Kafka采用的是副本机制,为了保障可靠性,需要在多个副本间同步数据,使用高性能、高可靠的共享存储可以减少副本数量甚至只保留一份副本,减少甚至消除服务器间数据同步流量,避免网络成为瓶颈,解决网络负载高的情况下出现的写盘失败丢数据的问题。为了应对服务器故障Broker漂移,存储还需要跟随Broker快速自动漂移,完成故障的自动恢复,满足应用高可用的要求。总结:企业进行容器化改造,应该由浅入深,业务由边缘到核心逐步改造。先搭建一个高效的流水线,让容器应用的开发测试变得高效。针对容器应用的日志存储做统一的规划,对后续应用的故障诊断、业务热度分析打下基础。然后再使用分布式中间件如Redis、Kafka打造PaaS中台,为更多应用的微服务化改造搭建好底座。在存储选择上,优选高性能、易运维、易共享和高可靠的NAS全闪存,为容器提供统一的易共享、高性能、高可靠、功能丰富的数据存储底座。基于OceanStor Dorado NAS全闪存的华为容器存储解决方案和广泛的容器生态伙伴进行合作。当前已完成与Kubernetes、Openshift、VMware Tanzu、Rancher、CCE敏捷版、FusionCompute、FusionStage、道客云、灵雀云等业内主流的容器管理平台的对接,帮助客户实现容器的快速部署和稳定运行。


相关标签:
推荐新闻
推荐产品
在线客服
联系方式

热线电话

15378180513

上班时间

周一到周五

公司电话

028-83252151

二维码
线