容器化环境中的持久数据存储-时间:2017-09-21

容器化环境中的耐久数据存储

在容器化运用程序规划中,每个容器间互相阻隔,独立扩展,并可作为处理某项大型网络运用的组件。有别于以往处理整个运用程序,大型的容器化运用程序可由数百个(乃至上千个)相关容器组合而成。这些运用程序支撑灵敏规划、开发和布置办法。它们能够在出产环境中轻松扩展,十分合适于分布式、乃至依据云的混合式根底架构。

作者:Mike Match |2017-09-21 08:16
    

IT范畴,革新的速度令人瞠舌。快速增加的数据,云核算规划的处理,以及百万级的物联网设备正在推进我们向着更高效、牢靠和可扩展的方向开展。传统的运用架构已日趋极限,我们正试图尽力开发布置最佳的新计划。所幸的是,最被看好的容器化技能——这项据称能够解决许多问题的技能(如果不能算是悉数的话)——正成为应对上述难题的妙药良方。

在容器化运用程序规划中,每个容器间互相阻隔,独立扩展,并可作为处理某项大型网络运用的组件。有别于以往处理整个运用程序,大型的容器化运用程序可由数百个(乃至上千个)相关容器组合而成。这些运用程序支撑灵敏规划、开发和布置办法。它们能够在出产环境中轻松扩展,十分合适于分布式、乃至依据云的混合式根底架构。

惋惜的是,容器在开端规划中并非用于完结全仓库运用程序,亦不合适需求长时间贮存数据的运用。容器的规划初衷是能够简略地大规划创立、布置微效劳的运用层,并将微效劳视为一种高度灵敏的中间件,在概念上无需耐久的存储数据。

锲而不舍

由于容器办法具有很强的灵活性、易于扩展、高效性,并面向云核算,在许多状况下这都是一种经济的布置办法,因而现在人们期望将其运用规模扩展到微效劳之外。容器架构供给了更好的办法来构建现代化的运用程序,我们看到许多商业软件和体系供货商在内部开发中转向容器办法,乃至将其广泛布置,而且一般在上层坚持对终究用户和IT办理人员的通明。大多数名列财富100强的企业现已开端以容器办法进行出产环境的第三方IT运用保管,特别在内部运用、交融架构和专用的根底架构范畴。

你或许会看到大型的、容器化的数据库,乃至存储体系的出现。可是,规划企业级的、长时间存储数据的运用程序仍是不小的应战,容器可能在分布式和混合根底架构中来回搬迁。而数据需求操控、维护、遭到管制和监督,所以许多时分继续数据存储需求更像是锚点那样,容器在这方面着实面临着短板。

容器架构运用到三种类型的存储:第一是镜像存储。这能够运用现有的同享存储进行交给,要求相似于效劳器虚拟化环境中虚拟机镜像分发维护的渠道架构。容器镜像的一项好处在于其存储容量相较于完好的虚拟机镜像小了许多,由于它们不会仿制操作体系代码。此外,容器镜像的运行在规划之初就是固定的,因而能够更高效地存储、同享。但也因而,容器镜像无法存储动态运用程序的数据。

第二类需求存储的数据是容器的办理。当然,你相同能够借助现有存储完结这项作业。不论运用Docker、Kubernetes、Tectonic、Rancher仍是其它类型的容器办理,都需求存储装备数据、日志记载等办理数据。

还有第三类存储,容器运用的存储,是最具应战的。只要支撑真实的微效劳式编程时,容器代码能够直接写入镜像目录和文件。可是容器运用一种分层文件体系,将一切新写入的数据存储在暂时虚拟层,最底层的容器镜像却未被修正。一旦容器消失——比较虚拟机,容器的规划寿数更短——一切的暂时存储都会随之散失。

假设一个容器运用程序需求保存数据,一种办法是显示地在容器的大局命名空间内加载一个特定的体系数据卷——或在Kubernetes框架下的耐久卷这样能够让容器直接计划读/写主机目录或文件体系。假设容器被关闭或重新启动,它照旧能够拜访之前写入的,用于长时间存放的数据。但这并不是一个简略易行的办法,需求考虑在容器之间同享数据,因而运用程序开发人员有必要统筹同享、确定、争用和重启的问题。而且存储办理员如何鉴别维护——快照、备份和灾祸康复发生的——不计其数由程序操控的海量数据。

此外,假设容器集群中的某一个容器坐落另一台主机,那么存储办理员需求保证同享或分布式文件体系(例如NFS)在一切的集群主机上均坚持相同的装备,乃至运用程序员可能要增加更多与I/O相关的代码,然后保证牢靠的集群等级的同享。所幸的是,专家级的存储办理员会挑选将现有的企业级存储(如NAS和SAN)带入这个全新的容器范畴。如果他们与开发人员严密合作,能够实际装备出高端的企业级出产环境。

不过,容器范畴内的最佳实践是让Agile DevOps具有相同的沙箱、测试与出产环境。从容器视点看,这种办法为终究用户供给动态装备,然后保证容器的移动和搬迁。体系的存储装备越是静态和软弱,容器化的好处便越是难以体现。

Docker等容器办理产品供给可插拔的卷办理。例如Flocker是开源Docker可插拔卷中的最受欢迎的代替品,能够经过集群智能办理、搬迁数据卷及其容器。尽管Flocker的首要赞助商ClusterHQ已不复存在,但我们估计这种功用将继续开展,并在基准容器渠道内变得日益本土化;Rancher Labs的“Convoy”项目正朝着这个方向开展。大多数(如果不说悉数的话)传统存储供货商和云存储效劳供给商为其存储阵列生成各类容器体系卷插件,这不失为在存储上继续出资的好办法。

存储即软件

相较于测验将旧版存储强制搬迁到新的容器环境中,不断增加的代替计划会引发新一波的软件界说存储(SDS)风潮来完结这项作业。SDS由一个存储操作体系和彻底布置为软件层的效劳构成,该效劳层一般作为虚拟机出现,不过现在其越来越多地布置为容器办法。容器化软件存储的快速开展是很简略想见得到的,以便于容器化运用程序运用存储效劳。

比较在传统的出产环境中,效劳器虚拟化环境一般依据大型而贵重的主机集群,容器的保管体系架构能够轻松运用由更敞开的、广泛而廉价的通用效劳器组建起的私有、公有或混合云根底架构。这有些相似于Hadoop和Spark等大数据项目运用通用根底架构的优势,而且经过运用SDS和内存来讲我们从专用而贵重的渠道中释放出来。

SDS的另一项中心优势特别针对Ceph,Torus和GlusterFS等分布式容器计划,将存储以最合适的办法交给给容器集群。办理比如GlusterFS之类的技能对传统的SAN办理员而言可谓是一项应战,但容器化存储与身居来具有各种比如灵敏性、可扩展性和可用性方面的优势,一起经过本地化数据存储改进运用程序功用。

简而言之,预交融和超交融容器设备使得内置本地容器存储功用(如Datera和Diamanti)变得愈加简略。经过运用SDS来得到在同一渠道设备格局下交融万物所需的灵活性和快捷性。尽管我们没有有听到有企业真实在出产环境中运用交融容器保管办法,但未来的IT根底架构必将连续交融路途,一起树立更多云端效劳。

当然,IT人员的作业在于判别是否为某家供货商专有的技能买单,或是转向免费的开源代码,加以出资,并关闭在该范畴。假设要得到经过预先集成、验证的企业级功用和全天候的技能支撑,一般需求长时间选定某家供货商的开源分发或预交融的仓库。换句话说,这不仅是挑选传统的哪家供货商,更是挑选供货商专有仍是开源的技能,或是彻底依赖自己的开发。

云端扩展的目标存储

容器化运用程序往往采纳云核算架构,其体系架构要依据外部作业负载状况的改变、增加而继续扩展内部的效劳。这种依据云的理念相同渗透到现代运用程序开发人员调用存储的办法。许多新的容器化运用程序是针对目标存储的I / O,而非传统的文件体系或数据块编写的。

大多数当时的容器环境在实际布置中平稳进行——当然在公有云中可谓破例,来自Hedvig、Qumulo和Scality等在线扩展目标存储刚好满意容器所需。在施行或搬迁容器运用程序时,Amazon Web Services Simple Storage Service (S3)和相似的公有云现已开端将目标存储用作耐久的存储层。

面向未来

我们没有看到容器终究在永久数据存储方面会有怎样的体现。依据曩昔存储范畴的开展演进经历来看,我们可能会看到“容器认知”存储的出现,其为容器装备而生,并配以合适的办理功用。就像虚拟机认知存储一样,我们应该还能够看到一项容器存储效劳,能够坚持数据并继续追溯——乃至在跨集群容器和跨云容器环境中。终究,我们等待看到运用效劳器闪存和新式的继续性闪存(如非易失性存储器快照)的容器认知缓存,而且和继续存储层相结合。

期望未来的容器认知存储能够统筹到一切关键的方面,从容器清单到运用蓝图。我们相同期望在未来完结多容器环境的存储办理,能够追溯、猜测和优化存储订阅,以满意继续容器运作所需。别的,存储认知的存储需求能经过简略的战略机制,随时随地地维护到一切数据、保证高可用性和灾祸康复。

以虚拟机办法出现的效劳器虚拟化花费了超过10年才代替掉企业数据中心中运用程序专用的物理效劳器。现在,容器化运用程序似乎将会在一两年内替换许多完好的虚拟机运用。最大应战在于我们能否为容器快速供给企业级继续性数据存储。


 

分享到 QQ空间新浪微博 人人网腾讯微博 网易微博 0



IAP网络科技股份有限公司官网

版权所有:IAP网络科技股份有限公司  2015 杭ICP备05007539号-7 杭ICP证100714号 杭公网安备1101080209224号