加入收藏 | 设为首页 | 会员中心 | 我要投稿 常州站长网 (https://www.0519zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 云计算 > 正文

容器云存储的需求考量与方案选择

发布时间:2018-07-05 05:41:47 所属栏目:云计算 来源:51CTO
导读:副标题#e# 容器云平台存储不仅仅是数据的持久化存储,也包括容器云平台自身的存储需求以及镜像存储需求,甚至需要考虑云上中间件,比如Kafka等对存储的需求。 互联网公司的金融业务对金融行业的发展带来的巨大冲击和挑战,逼迫金融行业不得不考虑互联网金融
副标题[/!--empirenews.page--]

容器云平台存储不仅仅是数据的持久化存储,也包括容器云平台自身的存储需求以及镜像存储需求,甚至需要考虑云上中间件,比如Kafka等对存储的需求。

互联网公司的金融业务对金融行业的发展带来的巨大冲击和挑战,逼迫金融行业不得不考虑互联网金融业务和移动业务的发展,这又对技术平台和技术能力提出了新的要求和挑战。互联网金融业务和移动业务要求对业务需求快速响应,甚至是小时、分钟级,这就要求能实现业务的敏捷响应、敏捷开发、持续集成、持续部署、持续改进,实现自动化的运维、容错、异常修复、弹性伸缩、灰度发布等能力,要支持这些能力,环境一致性要求、基础设施服务平台等要求需要满足,才能在激烈的竞争中生存下来。金融公司业务的发展趋势,恰如如逆水行舟,不进则退,不得不采用新的技术和平台。

容器云平台提供了环境一致性能力、支持弹性伸缩、灰度发布、蓝绿部署等能力,又和DevOps开发运维一体化方法论、微服务架构契合,实现持续集成、持续部署、持续监控、持续反馈、持续改进闭环。另外大数据、AI等应用的部署运维也需要考虑构建共同的基础设施服务平台,容器云生逢其时。

随着容器技术的成熟和容器云平台的实际落地,越来越多的企业已经建设或者尝试正在建设容器云平台。容器云平台如何管理并使用好基础资源CPU、内存、存储、网络等资源是其关键的能力之一,而存储作为容器云平台的基础设施资源,保证着容器云数据的安全,使数据能安全持久的存储、查询、不丢失。不过容器技术和容器云平台对存储的使用与原来相比是不同的,容器内部存储是不支持持久化数据存储,这就需要考虑采用外部存储挂载到容器上,在容器迁移、消亡、重启等活动中保证数据的安全。数据是企业的核心资产,在激烈的市场竞争中,已经越来越体现出其巨大的价值。因此,在建设容器云平台的时候,是必须要考虑容器的存储的,如:存储方式、存储介质、存储产品、存储数据量、性能需求等。此外,容器云平台存储不仅仅是数据的持久化存储,也包括容器云平台自身的存储需求以及镜像存储需求,甚至需要考虑云上中间件,比如Kafka等对存储的需求。

一、容器存储方式

存储资源是容器云的基础设施资源之一,保证着容器云平台的正常运行和数据持久化能力。容器云存储的方式有容器内部存储方式、容器宿主机磁盘存储方式、容器远程卷存储方式等。

1、容器内部存储方式

容器内部存储即容器的读写层,但在容器销毁时读写层也销毁,在读写层的数据会丢失,就象内存中的数据,应用进程关闭,内存中数据就会清空。容器内部存储方式只可作为容器运行时临时的存储方式。

2、容器宿主机本地磁盘存储方式

容器宿主机本地磁盘存储是使用本地存储卷,其是对本机磁盘的映射。本地卷不可创建快照。优点是不需要独立存储,创建操作简单,读写效率高。缺点是不能在节点间实现容器漂移。

3、容器远程卷存储方式

远程卷包括NFS和分布式远程存储卷,NFS的创建需要增加设备、读写权限、设备目录的信息;分布式存储卷包括Ceph、GlusterFS、ScaleIO、Portworx等。

二、容器云存储的重要性

存储是容器云平台提供的基础资源之一,要安全稳定的使用容器云平台,对容器云平台的存储资源,在采用和实施容器云平台之前,需要提前做些研究和规划,因为:

1.数据是企业的重要资产,保证数据不丢失,数据完整,才能更好的开展业务。

2.容器和虚拟机或物理机技术实现侧重不同,容器侧重无状态应用,要支持有状态应用,数据存储必须基于业务需求提前进行考虑和规划。

3.容器云是基础平台,涉及平台组件、镜像、应用、中间件等多个方面,每个方面都可能有不同的存储需求。要获得理想的性能和结果,需要全面的考虑每个方面,存储等作为基础设施资源,更是必不可少的部分。

4.容器是用来承载应用的,这点要深刻理解。应用各个层次的数据具有潜在的价值,捕获并处理、存储、分析这些数据是获取价值的步骤。因此,应用数据的持久化是容器云平台支撑业务应用的重要的基础能力之一。建好基础,才能更好的服务于业务应用。

凡事预则立,不预则废。说明了规划计划的重要性。临时抱佛脚总会对业务产生或多或少的影响,容器云是基础设施平台,存储是容器云的基础资源,基础设施资源决定上层应用服务的能力,目前IaaS层还无法直接为容器云平台提供需要的所有存储资源,和 IaaS的对接也存在技术难点,没有完整的数据就难以快速响应业务需求,难以快速超越或者跟随对手,大数据、AI等技术支撑的云上业务应用就难以顺利实施。

说到底,数据、还是数据!是核心资产,需要重视其安全的保存和备份、重视其存储方式、介质、存储性能等影响。

三、容器云存储需要考虑的几个方面

在采用容器云平台时,存储的使用大概有这几个方面需要考虑:容器云平台自身需要的存储、应用数据持久化存储、镜像存储、中间件部署需要的存储。最重要的是容器云平台自身的存储和数据持久化存储。数据持久化存储数据量有些公司可能会比较大,有些可能较小。在有大量存储需求的时候就更要做好规划。数据存储很重要的一点是支持容器迁移,随容器迁移。不同的业务应用对存储的需求不同,所以这里没有明确的标准,需要根据实际情况来确定。越重要的数据存储的安全性要求越高。

1.容器云平台自身的存储:容器云平台自身有很多组件,比如ETCD,会存储容器云平台的状态和配置信息,其对存储的性能有较高的要求。etcd一旦出现意外,容器云平台可能瘫痪,所以etcd的存储对稳定性、安全性、性能等方面要求比较高。同时可能还需考虑etcd的集群部署。

2.应用数据持久化存储:包括宿主机本地存储卷和远程存储卷。本地存储卷是对本机磁盘的映射,本地卷容量和读写性能由磁盘的规格和性能决定,本地卷不可创建快照。优点是不需要独立存储,创建操作简单,读写效率高;缺点是不能在节点间实现容器漂移。远程卷包括NFS和分布是远程存储卷,通常是容器云平台的首选。

3.镜像存储:镜像仓库用于存储应用镜像和中间件镜像等所需的空间。

4.中间件部署需要的存储:运行某些中间件需要的存储需求。不同的中间件可能对存储有不同的需求。

四、持久化存储需求

作为用户,我们关注存储其实更多的是关注数据持久化存储,数据是核心资产,重要数据必须持久化存储并备份,而容器的内部存储难以做到持久化,本地存储又难以迁移,所以更多的话是采用远程存储卷来满足持久化存储需求。这是因为:

1.从业务角度,应用运行时异常,状态、数据等存储起来用于恢复或重试执行。

2.日志数据是业务跟踪、查询、统计、分析等的重要基础,所有的操作都要基于数据的持久化存储。

3.容器弹性伸缩特性非常切合微服务扩缩需求,日志、运行时数据、结果等跟随容器迁移且不随容器销毁而消失。

4.Kafka、mysql等需要持久化的存储支持来部署并保存数据。

5.数据量累积,会带来质变影响。

6.大数据业务、AI业务等基于容器云的部署需求。

(编辑:常州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读