chengzuqiao
作者chengzuqiao2018-11-22 16:09
系统架构师, 江西省农村信用社

城商行混合私有云存储最佳实践

字数 7504阅读 5993评论 3赞 6

一、混合私有云存储建设背景

随着大数据、云计算、移动互联迅速发展,快速交付与灵活扩展的强烈需求增长,城商行传统竖井式的IT基础架构设施面临着新的挑战。一方面快速增长的互联网业务需要灵活的、可自由伸缩的IT软硬件资源提供坚实基础保障,另一方面高效的业务响应同IT基础设施发展矛盾也日益突出。例不可预估的互联网业务客户量、持续增长的日交易量、重要时期的高峰的运行压力、大量并发IO读写,使得系统响应缓慢甚至hang死,而这些性能痛点最先反映在后端存储IO上。
因此如何全面优化整合当前IT基础架构中的存储系统,构建灵活、高效、先进的高可用存储架构,实现存储资源池化、云化转型,实现存储的快速扩容和业务无感知,满足生产系统的高并发、低延时的性能需求,是城商行数据中心IT信息化建设的迫切要求。

二、传统存储整合至混合私有云存储建设痛点

目前我行X86云平台、Power云平台后端数据均落在云存储上,使用效果良好,但在传统存储整合至混合私有云存储建设初期,是存在许多技术痛点的。主要体现以下几方面:

1、 存储整合时,异构存储兼容性、利旧如何考虑?

随着我行业务日益增长,数据中心存储系统经历了多层次的发展阶段,引入了不同型号、不同品牌、种类较多的存储设备,并且在各个阶段对业务支撑发挥了重要作用,同时现价段业务对数据IO相应呈现出不同的需求,有的业务对IO要求低但是数据量大,有的业务对IO响应要求极高但数据量不大等。因而旧设备尽管性能下降,但是数据存储功能是完善的,对IO响应不高的业务还是可以利旧的。基于此,亟需利用智能存储的技术手段,兼顾华为、HP、IBM等不同类型的存储,实现存储资源池化、云化转型,并通过统一管理界面进行新旧设备资源整合与规划。经过多次选型调研,最终我行选择了IBM存储虚拟化网关SVC构建了混合私有云存储平台。

2、存储整合时,如何减少数据迁移风险、减少停机时间。

为最大降低迁移风险,我行提前对迁移的系统做好数据备份,于主机上部署存储化虚拟网关多路径软件,配置主机、虚拟化网关、存储之间zone关系,准备存储备件,安排存储专家现场值守,以对发现的故障及时处理。同时模拟真实环境,锻炼应急能力,选取了管理类系统(异常信息监控系)1.5T数据量进行预演练,实现了数据在线迁移并完成底层数据拷贝镜像,涉及存储设备包括现有DS8100/新购V7000。最后,做好停机窗口计划安排,按照先次要业务后重要业务原则,先易后难推进,确保数据迁移圆满完成。

3、存储整合时,出现不可逆故障如何回退?

任何方案即使再完美,也不能做到零风险,因此,我行做好了完善的应急回退机制。在存储整合进行数据迁移时,原有存储lun的数据映射给是SVC时,采用 image mode继承原有的数据,并将image mode Vdisk映射给原主机,这样做可保护原数据的完整性,可防范原存储映射给SVC时出现不可逆操作可逆向回退,也即释放SVC对原存储相关LUN的控制,并断开连接,恢复主机与原存储连接至整合前状态。若仍是回退不成功,还可利用已备份数据,通过带库/TSM进行恢复。

4、存储整合后,整体性能分级如何考虑,或者整体性能是否下降了?

SVC作为虚拟化网关,统一整合现有的后端存储后,构成了一个统一的云化存储资源池,动态扩展,突破了原有存储物理隔阂。同时SVC对于前端的写操作是通过cache实现的,屏蔽了后端异构存储性能差异。因而整体性能对于中低端存储来说是提升了,对高端存储损耗也是极为有限甚至不影响,对于全闪存阵列来讲,可禁用全闪存卷的cache,进行透写等。
对于性能分级,在硬件资源不可提升的情况下,可根据业务类型划分不同性能资源池,通过SVC的easytier功能实现资源高效利用。也可通过SVC资源调整实现存储性能提升。例通过SVC自身的cache和ssd,对整合的存储进行加速;通过在SVC中接入高性能存储,如IBM FlashSystem系列闪存存储,和其他老旧存储配合使用,满足业务需要。

5、存储整合后,高可用架构如何考虑?

通过SVC进行存储整合后,其实存储高可用更易实现,以前基于各种存储的高可用架构存在各种缺陷,也不便于管理,存储整合后,高可用架构不再通过异构存储实现,而是通过虚拟化网关实现。现我行采用两套SVC集群搭建存储高可用,本地和灾备各一套SVC集群,一个I/O Group,两个节点。本地站点两个存储通过SVC做VDM,本地站点和灾备站点存储通过两套SVC做SVC PPRC,实现了三份存储数据实时同步。本地站点两主机挂载本地站点的存储,灾备站点主机挂载灾备站点的存储。

三、私有云存储与公有云存储区别

1、什么是云存储?

云存储是在云计算概念上发展的一种延伸,是一种按需提供的网络存储技术,将网络中大量异构存储设备通过存储虚拟化网关或应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的系统。
云存储构建不同的存储资源池,按需提供,动态调配,帮助企业节省投资费用,简化复杂的设置和管理任务,实现数据保护与共享。

2、什么是公有云存储?

公有云存储简单来说就是基于Internet的云存储服务供应商提供数据存储、备份与恢复、内容管理、虚拟文件等增值服务,比如阿里、亚马逊等大型互联网公司提供的存储服务,可以低成本提供大量的文件存储,保持每个客户的存储、应用都是独立的,私有的。还比如我们常用的百度云盘等。

3、什么是私有云存储?

私有云存储是建立在企业私有云上面,对公网是不公开的,只对企业本身提供相应的存储服务以及相应的服务质量,企业独立拥有其整体存储设施。使用私有云存储服务的用户无需了解云存储组成的具体细节,只需调用相应的接口或配置相应的策略,剩下的工作交由私有云存储本身完成。

4、公有云存储和私有云存储有什么不同?

第一,IT基础设施差异:私有云存储所有的IT基础设施都是自己构建的,而公有云存储的IT基础设施是位于第三方数据中心的,并且基础设施质量也参差不齐,私有云存储都是过去发展的利旧设备以及满足将来发展的高性能设备,而公有云存储为了节省成本,获得最大利润,通常采用廉价和标准的硬件。

第二,商用模式不同,私有云存储通常是较大的固定资本,而公有云存储对租户是按月计费的,也许用的好继续用,用的不好就不用。
第三,自主可控程度不同,私有云存储是企业自己构建,完成拥有自主产权,可根据业务需要选择如何发展,自主可控。而公有云存储是采用租用服务方式,优势是不需客户管理,但是数据安全性值得商榷。

四、私有云存储建设架构

私有云存储建设之前,我行的外围内业务数据分布在DS6800、DS4700、DS3400、V7000、华为等存储上(见图1),数据分散、冗余保护缺失、管理复杂、迁移难度大、扩容复杂度高等,天天生活在提心吊胆中,硬盘一有风吹草动就彻夜难免。
rtuw78x85bk

rtuw78x85bk

图1 存储整合前架构

为彻底解决上述问题及满足私有云建设需求,我行在充分利旧情况下,进行了存储整合,建设了私有云存储。主要包括将中低端外围业务数据全部迁移整合至新购的两台存储V7000、DS8800中,利旧存储提供给开发测试或备份业务使用,搭建整体云存储资源池,向X86云平台、Power云平台提供数据服务,实现统一管理,实现新旧存储实时数据镜像,解决存储单点故障隐患,提升数据动态扩展与迁移速度。私有云存储建设整体架构如图2、图3所示:
xtrp30yuuub

xtrp30yuuub

图2 存储整合后架构

nsutupfuhqp

nsutupfuhqp

图3 私有云存储整体架构图

如图3所示,生产中心部署了两套SVC集群,灾备部署了一套SVC集群,生产2套存储,通过SVC VDM保持实时同步,同城站点1套存储,通过SVC Metrol Mirror保持实时同步。生产、同城的存储数据复制通过DWDM间的裸光纤实现。本地站点X86云平台、Power云平台挂载本地站点的存储,灾备站点X86云平台、Power云平台挂载灾备站点的存储。

五、私有云存储建设关键点

1. 高可用测试案例设计

在建设私有云存储建设之前,我们还是有诸多顾虑的,毕竟采用了存储虚拟化网关技术(SVC)后,就相当于在我行外围类业务系统的所有IO与主机之间建立一个桥梁,而这个桥梁的稳定性,将关乎着我行的业务连续性,关乎着我行业务命脉,一旦处理的不好,将带来全局性灾难。因而为应对存储网关突发异常及尽可能于投产前发现潜在的风险,需要进行详尽的高可用案例测试。

测试案例期望结果
服务器访问的任一SVC的端口的光纤故障。主机端应用不受影响,主机读写IO短暂中断,主机端磁盘的某些路径failed。
SVC集群中的任何一个SVC节点发生故障主机端应用不受影响,主机读写IO短暂中断,主机端磁盘的某些路径failed,在SVC的UPS电源关闭时,SVC节点会迅速将缓存中的数据写入硬件,并将SVC节点关机自我保护数据
SVC集群架构体系下的任意一台存储发生故障主机端应用不受影响,当备故障存储恢复时,数据会自动地从主存储同步到备存储上;当主存储恢复时,数据会自动从备存储同步到主存储上。

2. 关键参数配置

经我行最佳实践,建议对以下参数进行如下设置:

1、 主机相关光纤卡参数值设置建议

建议修改主机内FSCSI设备属fc_err_recov=fast_fail,默认参数配置情况下,模拟SVC端口或节点故障,主机IO暂停时间约为1分钟左右;修改参数配置后,模拟SVC端口或节点故障,主机IO暂停时间缩短至20至30秒,可显著降低对主机IO读写的影响

2、SVC的LUN mirrorwriterpriority参数值设置建议

该参数用于定义SVC镜像写算法的优先级别,共有两个选项值latency和redundancy。

Latency值是指 SVC会将IO请求同时发送到两份数据拷贝至存储上,如果数据的某份copy写延迟了5秒钟以上,SVC则允许暂时放弃对此份较慢写入的copy,只要写入另一份copy数据正常完成,则通知主机端IO写入已经完成,并在SVC内存维护的数据同步位图中标识该份数据未同步,系统等待约5分钟后再尝试对较慢写入的copy重新同步。如果在SVC数据未同步时,拥有最新数据拷贝的存储出现故障,且所有数据无法恢复,则可能会出现数据丢失的情况。

redundancy值是指始终保证两份copy的数据完全一致性,即必须将IO同时成功写入后台两台存储,才会通知主机端写IO已经完成(在写入过程中,如果确认某一份数据所在的磁盘已经offline,则取消对该份数据copy的写入)。如果后台两台存储性能差异较大时则可能对应用读写造成影响,拖慢写入效率。但是任一存储发生故障,都不会发生数据丢失情况。

结合我行最佳实践,若性能相差不大的存储,例如DS8100和v7000,几乎不会出现写入延迟达5秒情况,考虑业务响应要求,建议将SVC vdisk的mirrorwriterpriority参数值设定为latency。

3. 不可逆故障回退设计

任何方案即使再完美,也不能做到零风险,因此,我行做好了完善的应急回退机制。在存储整合进行数据迁移时,原有存储lun的数据映射给是SVC时,采用 image mode继承原有的数据,并将image mode Vdisk映射给原主机,这样做可保护原数据的完整性,可防范原存储映射给SVC时出现不可逆操作可逆向回退,也即释放SVC对原存储相关LUN的控制,并断开连接,恢复主机与原存储连接至整合前状态。若仍是回退不成功,还可利用已备份数据,通过带库/TSM进行恢复。

同时为提升恢复速度,我们在SAN交换机中增加应急恢复的zone配置以及cfg文件,但是不激活,在交易类中端存储和管理类v7000上创建主机,并将两套存储上相应的vdisk直接映射给主机,由于SAN交换机上主机与两套存储的zone并未激活,主机并不能真正访问到存储上的LUN;当SVC出现致命故障/BUG时,可直接断掉SVC,将SAN交换机上主机与两套存储的zone激活,迅速恢复业务。

4. SAN网络架构整合及优化

私有云存储建设前,我行SAN交换机性能普遍低下,设备超役严重,线缆错乱复杂,san网络拓扑图如图4所示:
sayfphk1h7g

sayfphk1h7g

图4 整合前san网络拓扑图

为充分有效利用资源,对性能较好的san交换机进行利旧,对年限超役的进行报废。在san交换机进行整合时,特别需要注意zone的梳理以及端口映射、光纤线的冗余布设、光衰的测试、光纤线的高可用测试以及san交换机级联缓存设置与高可用架构搭建。经前期详细规划与细心建设,我行整合后san网络拓扑图如图5所示:
ctpa1qxghjp

ctpa1qxghjp

图5 整合后san网络拓扑图

5. 后端存储主copy设置

按照官方文档指引,SVC的primary copy 设置在读写性能高的存储上,读性能取决于比较高端的存储,写性能与SVC缓存大小息息相关,只要缓存足够,写性能就好。我行混合私有云后端存储是采用一台DS8100和一台v7000,凭经验观察,我们认为DS8100的性能应比v7000好,因而推荐将虚拟卷的Primary Copy设置到DS8100上,但是在数据同步测试过程中,整体性能远没有达到预期值,可数据显示DS8100本身性能已达到满负荷。经与厂商专家研讨,v7000性能是不是更好呢?又如何进行对比呢?经厂家推荐使用IBM Disk Magic工具对DS8100和v7000进行了性能评估。性能对比如下图所示:
ls2mt0psryg

ls2mt0psryg

图6 V7000 读带宽1600MB/s性能图

f36knd9am39

f36knd9am39

图7 V7000 写带宽1500MB/s性能图

fzuovqud95

fzuovqud95

图8 DS8100 读带宽850MB/s性能图

hp17ui4sf4l

hp17ui4sf4l

图9 DS8100 写带宽500MB/s性能图

经工具详细对比,发现V7000 读带宽1600MB/s、写带宽1500MB/s,达到了性能瓶颈,远优胜于DS8100 读带宽850MB/s、写带宽500MB/s,于此,我们设置虚拟卷的Primary Copy为v7000。

6. 设备选型建议

存储虚拟化网关有IBM 的SVC、EMC的vplex、CDP 的NSS等主流厂商,各有各的优势,因而对我们选型来说,就要综合考虑实际,有的放矢选择。建议从以下方面考虑:
一、兼容性与成熟度
需考虑主机兼容性、存储兼容性、后期扩展性、维保技术力量以及同行业类商用案例情况,以对其进行综合评估。

二、实施复杂度
如果实施太复杂,对现有架构将会增加故障点,带来较大风险,同时对后期维护也是相当不利。

三、功能特色
相对其他产品,有哪些功能特色,对未来发展有何扩展,比如多中心灾备扩展、数据快照等功能。

四、经济效益
尽管金融行业以稳字当先,但经济效益也是需要考虑的,如果产品、实施、后续维保与升级费用以及其他费用高昂,那也是不可选的。

六、私有云存储高可用技术搭建

1、X86云存储高可用技术方案

X86云存储通过SVC stretch cluster方式实现同城存储双活,如图10所示:
2wzoxhvefnm

2wzoxhvefnm

图10 X86云存储高可用技术架构图

本地和灾备各一套SVC集群,一个I/O Group,两个节点,两个节点互为冗余保护,本地站点两个存储通过SVC做VDM,实现数据实时同步,本地站点和灾备站点存储通过两套SVC做SVC PPRC,实现了三份存储数据实时同步。

对于x86云平台虚拟机来说,逻辑层只看到一份数据,这份逻辑数据对应两份物理拷贝,通过SVC同步写到生产中心和同城容灾中的高端存储之上,生产中心和同城容灾中心的服务器看到同一份数据,实现数据级别的同城容灾。

2、Power云存储高可用技术方案

Power云存储通过SVC stretch cluster方式实现同城存储双活,如图10所示:
uo19utt2zy

uo19utt2zy

图11 POWER云存储高可用技术架构图

本地两套SVC集群,两个I/O Group,4个节点,同一套SVC集群下的两个节点互为冗余保护,两套SVC集群(两个I/O Group)也是互为冗余保护,本地站点两个存储通过SVC做VDM,实现数据实时同步。相对于x86云存储的冗余性提升一倍。同时同城灾备也搭建了一套SVC集群,采用stretch cluster方式实现SVC高可用。通过Metro Mirror的方式实现同城数据同步复制,从而在本地与同城灾备机房保持数据一致性。

七、实践经验与总结

本项目的完成我很感谢我行各位同志的无私奉献与帮助,也很感谢合作伙伴一直以来的真诚协作。回想项目整个进程,有些经验或者建议与大家一起分享,如有不对,还请指点。

1、SVC缓存容灾问题。在实施SVC时最好部署两套。例IO Group失效时,缓存数据没来得及写入存储,该IO Group中的两个节点同时故障,这时你只有一套SVC,你将会丢失一部分写数据。解决该问题,需要搭建SVC容灾环境。例在灾备搭建一套集群,通过SVC MM技术实现不同数据中心间IO Group节点的缓存同步,避免数据丢失。

2、SVC周围环境问题。SVC对环境温度相对于其他服务器较于敏感,官方文档显示,SVC 周围环境温度超过40摄氏度,将会宕机,对建设了云存储的企业,SVC作用是非常重要的,因而建议将SVC放置在温度较于稳定的机房区域,对空调容易故障的区域绝对不要放置。

3、SVC lun管理规范。随着SVC管理的异构存储越来越多,lun的数目也将越来越复杂,因而需要对lun进行命名规范,不要偷懒,进行默认命名,那对维护将是致命,因为到时将不知道哪些lun到底是属于哪个存储的,需要逐个核对序列号等。

4、SVC lun模式设置。随着时间的推移,难免会降低风险意识,因而偷懒将存储新建的lun提供给SVC时,设置受管模式,而不是image模式,这样会造成一旦SVC灾难性故障,将会造成巨大经济损失。

5、建设私有云存储,必须做好应急预演工作。数据是无价资产,是企业的命脉,因而在做存储整合是,必须确保数据完好。那就要求我们尽可能最大降低风险,而只有选取次要性业务做一遍预演工作,熟练整个流程,发现潜在的问题,做到心中有数,为真正实施做好了铺垫。

6、做好SVC高可用架构设计。之前存储比较分散,可能单台存储故障,影响较小,但通过SVC存储整合后,所有的数据集中化,相对于风险也集中化了,SVC作用至关重要,因而如何针对SVC的每个组件充分设计冗余性是非常必要的。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

6

添加新评论3 条评论

zhangpeng4007zhangpeng4007系统运维工程师, 某城市商业银行
2020-07-18 08:21
可以私信分享一下SAN交换机中级联端口的配置吗?以及配置的原因(如举例限制,带宽要求,DWDM厂商要求建议等)
michael1983michael1983技术总监, 某证券
2019-02-10 18:19
很不错的分享,谢谢
LearLear系统工程师, Karltec
2018-11-23 11:00
66666
Ctrl+Enter 发表

本文隶属于专栏

最佳实践
不同的领域,都有先行者,实践者,用他们的最佳实践来加速更多企业的建设项目落地。

作者其他文章

相关文章

相关问题

相关资料

X社区推广