数据存储是门大学问,比如用户的关键业务数据存储,通常是在大型数据库的基础上进行存储与管理,其相应的数据存储形式主要是数据块(Block),中小型数据库则可能会采用文件形式(file)。
但是作为办公自动化OA、卷宗类海量内部文档管理、多集群前端业务平台、互联网业务平台、财务系统、工资系统等需要文件级(file)的集中存储与共享时,则有更专业的需求:一是充分利用现有的网络资源;二是提供强劲的存储容量的扩展;三是多台服务器对海量文件级的数据读写;四是降低存储资源开销及整体拥有的成本。
如何解决上述文件级(file)数据集中存储与共享的用户需求,NAS网络共享存储给出了漂亮的解决方案,并且顺利解决企业用户海量数据文件(file)与数据块(Block)两种形式并存的难题。 因此,很多像互联网这样对外提供服务的多集群前端互联网业务平台,以及公检法拥有海量卷宗文件的用户,会欣然接受NAS存储架构作为文件的存储形式。
比如用户有基于互联网业务的平台,用户的基数非常大,因此前端就要做负载均衡和多集群业务。 在这样背景下,如何解决海量非结构化数据在多台节点中保持数据的一致性,困难相当大。
那么用户大多使用的方案是多个前端业务的集群,共享同一个NAS存储的目录,它们拥有共同写与读的机制,确保不会写冲突。这样的读写机制确保了文件的唯一性,这个方案可以快捷扩展前端集群节点的数量,以增加用户对实际的访问量的需求。
NAS存储架构下的数据容灾难题
从数据安全管理角度来看,从NAS上复制文件是一件让人头痛的事情。如果使用NAS厂商的相关复制功能,那么就必须有一套相同的NAS系统复制。而现有的NAS系统只能在文件管理系统层次进行复制。这决定了要么就全部复制,要么就什么都不复制。但是在实际环境中,用户更希望针对特定文件进行相应的管理。比如,对相关的文件进行实时的备份,但是因为前端业务集群服务器主机可能会同时读写同一个NAS文件夹中的数据,造成无法实现数据的实时保护。
另外,海量小文件,例如2000万数据量,如何确保复制数据在主备两端的一致性?传统的灾备方式,在***次全镜像的同时,如何确保镜像过程中增量部分的同步?这些都是困扰整个NAS架构下海量小文件进行数据容灾的难题。
基于NAS的定时同步方案
从下面定时同步方案的拓扑图来看,它是在基于NAS存储集群架构拓扑图上增加了一个备份节点。数据复制的流程首先是将业务端的NFS共享存储目录挂载至灾备机,提供只读机制,其次,通过英方控制台,下发定时复制的策略,通过英方将灾备机上的生产目录数据复制至灾备目录里,进行一致性比对或执行复制规则,定时或手动执行。
该方案的优点是对源端的业务架构没有任何的改变,它只是把目录映射到灾备服务器上,灾备服务器同时挂载一个映射的只读目录,另外还有一个存储数据的灾备目录。它要做的就是把生产数据产生变化的目录的数据进行定时的比对,并且将缺少的文件同步到备端的存储上去。
由于该方案需要定时做扫描的差异对比,因此数据同步需要时间,所以无法做到实时的数据同步,只能做到定时的数据同步。 那么随着NAS存储数据的大量增加,可能仅就扫描和差异对比,就耗费大量时间。 目前这种解决方案,主要是针对用户数据量不是特别大的NAS目录,例如数据文件的数量在***别,并且用户读写不是很频繁,可以把定时的时间缩短即可实现。
基于NAS的实时同步方案
在实时同步方案中,数据复制的流程首先是在3台前端业务服务器上面都安装英方软件客户端;其次是单独使用1台服务器只读该NAS存储中对应文件夹,命名“英方NAS监控服务器”;***是当这3台服务器有任何1台服务器对NAS数据进行修改时,英方客户端会将修改的文件名和该文件的存储路径发送给“英方NAS监控服务器”,由该服务器实时读取数据,并发送给容灾端。
英方i2COOPY实时复制在一般服务器下能够做到毫秒级数据同步,在NAS服务器集群环境下,i2COOPY通过在生产端指定一个服务器作为其他服务器IO变化的合并节点,能够在备端的服务器达到秒级同步读写的目的。
该解决方案是旁路监听,因此对主业务的节点变化是安装客户端,但是客户端本身不产生性能开销,只是监控对应服务器会对目录当中的某个文件进行修改。比如集群中有三台服务器,***台修改完了,会传输到英方NAS监控服务器上,然后会优先进行传输,当第二台修改完后,就会进入文件队列传输的等待过程,依次类推……英方监控服务器得到更改确定的指令后,会***时间去读对应目录下的名称,然后经过TCP/IP网络发送到容灾端的服务器。
该方案既解决了实时同步的问题,又解决了海量数据情况下数据复制时间窗口的问题,确保当生产环境NAS存储出现故障时,数据安全,业务连续。
实时同步方案的六大优势
这两个方案均能满足不同用户NAS存储数据容灾的需求,具体的方案选择要根据用户的生产环境与数据量进行综合分析判断。不过,在NAS存储架构下的海量文件的数据容灾, 英方股份高级售前技术顾问李毅总结了六大优势:
1)、无备份窗口,可实现实时的数据传输;
2)、对用户现有的业务架构无调整,只增加同步主机、灾备主机,同时在客户的业务环境上安装客户端,如果使用存储级的复制,需要对存储本身进行调整;
3)、对用户的资源系统没有多余的开销,因为去同步主机才会产生数据的读取,对源端的业务没有压力,对I/O的消耗比较小;
4)、备端数据可见,因为主备端的数据与文件目录同样,可随时查看数据的一致性;
5)、当用户需要容灾演练,查看备端海量的数据的启动时间非常短;
6)、弥补现有解决方案中无法针对使用NAS作为存储冗余架构的不足,英方提供全场景解决方案,能够满足用户同时做实时数据复制备份、非结构数据同步、高可用等容灾备份的综合需求,而之前很多对NAS存储数据做复制都是定时的。
实战:海量文件的数据容灾落地方案
1、某金融用户前端业务集群案例
某金融用户异地容灾拓扑图
该用户拥有大量的互联网业务平台,用户希望实现本地到同城灾备机房的实时数据复制。
实际上用户的业务运行在本地的IDC机房,在本地建有容灾的机房,中间通过千兆网络进行数据的传输。用户平时就有很多的数据要进行复制备份,同时也要实现NAS存储架构下的数据复制,据统计,用户在NAS存储下的数据量是1.6T,海量文件的数量在2000万左右。在生产业务方面,用户实际的运行业务一共有10个,有8个业务因为数据量没有达到***别,所以英方通过定时同步的方案,实现增量数据的比对; 另外核心业务是2个互联网业务的集群,集群服务器一共有7台,共享同一个目录,写入数据非常频率,每天大约以20万的数据在增加。
在这样的生产环境下,用户通过英方实时同步的方案,非常好地实现了基于NAS下的广域网的数据的快速复制。经过现场的实时测算,用户的延迟大部分时间是在5秒以下,这其中要考虑用户的业务量非常频繁,另外用户的部分业务数据放在本地,所以千兆网络不仅要进行异地的数据传输,还要支持本地业务的运行,整个网络的日常生产占用率非常高,能达到秒级同步在业内已经无人能敌。
2、某厅级检察院海量小文件案例
该检察院用户是典型的卷宗类海量小文件容灾场景,用户小文件数量在8000万左右,数据量约7T,前端业务集群共有7台服务器,共享同一个目录,进行电子化档案的存储。用户不会对数据进行修改和删除,但是数据量会持续地增加,另外数据是电子性的档案,每份档案都是非常关键,不能出现任何的丢失。
该检察院用户已经在本地进行容灾保护,希望通过英方的方案实现异地的容灾级别的保护。用户生产中心与灾备中心相隔几百公里,通过专线连接,巨大的数据量使得用户***次的数据同步就花费了一个星期。同时通过英方基于NAS的实时同步方案,在每台服务器上安装客户端,监控服务器会观察生产端不断发生的数据变化,将截获到的数据变化同步到灾备服务器中。
这些拥有海量小文件的用户,要实现基于NAS存储架构下的异地定时或实时同步数据容灾,目前业内的解决方案凤毛麟角。英方在备端同步在时间上达到秒级别的容灾要求,已经成功应用于公检法、互联网多集群前端业务平台、电信运营商等领域,并且英方能够提供全场景的容灾需求,拥有很多典型的定制化的容灾备份的解决方案。