防风险持续发力 金融科技需要什么样的架构?

可以说,2019年是银行业回归理性思考金融科技之年。2019年美国Capital One银行备份在公共云上数据泄漏而影响上亿用户事件,引发了全球银行业的反思。

2019年底,英国独立律师事务所Slaughter and May发布了英国TSB银行2018年全行IT系统迁移事故调查报告,指出由于没有全面的测试而导致了TSB银行IT系统迁移重大事故。为此,TSB银行在2018年赔偿了3亿多英磅、损失过亿英磅、CEO去职,在2019年关闭了80余个英国分行。

不论金融科技由何种技术手段实现,前车之鉴告诉我们,银行系统切换的风险与日骤增。人行近期指出:金融科技使金融机构、科技企业和金融市场基础设施间的联系更加紧密,三者之间任何一环出现问题,都可能被迅速放大并形成系统性风险。

安全是银行转型不可承受之痛

毫无疑问,与互联网金融科技公司相比,安全是银行业数字化转型的底线和红线。《中国金融科技运行报告(2019)》强调,必须要把握金融科技创新的历史“窗口期”,但也要充分把握创新与安全的平衡;特别是将推动安全创新、规范创新作为金融科技的“生命线”,避免粗放式扩张和防止泡沫积累,弄清创新与安全的边界,守住不发生系统性风险的底线,防范非系统性风险的积累。

相比于传统银行IT基础设施,新兴的金融科技基础设施,无论是其核心技术理念还是进入银行真实业务场景的历史,都难以在短时间内取代传统银行IT基础设施。作为“救火队”,IBM被拉入了当时TSB事故的补救团队,IBM专家在评估事故后认为:导致TSB银行IT系统崩溃的主要原因是系统的复杂性;由于试图采用新应用、高级微服务技术并结合双活数据中心,导致生产环境中的风险成倍增加。而复杂性的提升,会带来对IT驾驭能力要求的大幅提升,驾驭能力不够将导致风险增加甚至系统崩溃。

TSB银行于2018年4月22日一个周日进行全行IT系统的迁移,系统迁移后上线随即出现大面积的客户数据丢失或错误,最终导致540万客户的13亿余条记录受影响,有些客户的终身积蓄就此消失,也有些客户的小额购买被错误地记为上千英磅,还有些客户在登录后发现打开的是陌生人的账户。本次迁移是由TSB银行的新东家Banco Sabadell西班牙萨瓦德尔银行IT团队负责,而IBM专家在事故发生后被抓来“救火”,2018年4月29日IBM即出具了初始事故调查报告。

在初始事故调查报告中,IBM强调由于采用了新型的应用架构,就需要进行大量的工程、测试和验证,以及设计重要的迁移策略,特别是回滚机制,但TSB银行并没有这么做;而如此规模的复杂系统,其复杂性导致大范围的难以诊断的技术与功能问题。实际上,TSB准备迁移的新系统确实具备了金融科技所谓的先进性,特别是微服务技术是分布式金融应用的关键技术,但显然传统银行并没有做好拥抱新技术及其风险的准备。

拥抱风险是一个选择么?

Google在互联网分布式系统和软件领域遥遥领先,分布式系统在很早以前就已经运行在Google全球上百万台PC服务器上,Google也从自身实践运营的系统和软件中开源了很多云计算、大数据和人工智能等领域里的关键技术,特别是基于微服务和容器的新型应用架构被奉为互联网、云计算和金融科技的标准。

Google分布式系统的运维之道即为Google站点可靠性工程(Site Reliability Engineering, SRE),这也是整个互联网、云计算和金融科技的基石,作为全球最大的基于PC服务器的分布式系统,Google SRE仅靠全球约1000人就维护了Google大部分家喻户晓的商业应用。为了运维世界上现存最大的互联网软件商业系统,Google SRE总结出了一整套方法论,被奉为互联网、云计算以及金融科技的核心理念。

而Google SRE的核心就是“拥抱风险”。Google认为,当服务器数量超过一定值后,再提高可靠性对于一项服务及其用户而言,结果可能更差而不是更好!过份追求稳定性限制了新功能的开发速度以及将产品交付给用户的速度,还将极大增加成本。经验表明,可靠性的下一个改进,可能比之前的改进成本增强100倍。为什么会这样呢?这主要是因为要投入冗余服务器、网络和存储等设备以及相应的机会成本。

相比之下,银行业核心业务对于风险的容忍度为零。TSB银行在向新系统迁移的过程中,并没有进行充分的测试,这种做法非常“互联网化”,但结果就是导致巨额损失以及关闭近百个分行。而即使是将业务数据备份到公共云上,后经调查,Capital One也因为一个连接公共云的网络防火墙的错误配置而导致上亿客户数据泄漏。

因此对于那些既想抓住重大历史发展机遇,又期望避免重蹈互联网金融覆辙的银行来说,可以选择两层架构:核心系统仍然部署在以小型机和大型机为代表的可靠硬件基础设施上,非核心系统可以考虑部署到以PC服务器为硬件基础设施的金融专有云上。实际上,因为金融行业有专门的监管和各类要求,即便是非核心系统也不能随便放到非金融专有云的公共云上,而是专门面向金融行业设计的公共云服务。

采用两层架构后,银行就可以在风险可控的前提下,实现创新与安全的平衡,用以小型机和大型主机为代表的稳态IT承载银行核心系统,同时以合规的金融专有云完成非核心业务和前端业务的互联网化,还能实现以DevOps为代表的敏捷开发与快速迭代,从而分享移动互联网与物联网的红利。

两层金融IT架构

云计算是金融科技的基础,云计算的代表是用PC服务器所组成的大规模分布式系统。虽然云计算有着自己的优势 ,但在IBM 大中华区总裁包卓蓝看来,目前在中国,银行及金融机构将面临运营三层架构的风险:银行核心业务系统使用主机和/或POWER系统,企业内部的中台系统和面向客户的交互型系统主要使用基于企业内部x86集群或者私有云,部分客户服务或者测试类业务使用各种公有云服务,而由于三层架构同步数据和服务极为复杂,这将限制企业的创新和服务能力。如果金融服务公司只限于在x86上进行用户交互型应用的创新,可能很快就会落空。

IBM预见未来中国银行及金融机构需要两层架构:银行传统核心业务可以在主机或者POWER服务器上运行,前端的大量 x86工作负载极有可能将被迁移至满足监管要求的金融云上。两种类型的工作负载将在两个平台上运行,即一个两层架构:以主机和POWER为核心,用于记录型系统(SOR),主机将继续作为核心交易系统的最佳平台;而x86服务器架构可以集成到更加整合的平台上。IBM的预期是,当金融服务云可用时,那些难以维护和运营的、大宗的x86工作负载极有可能将被迁移至云上。

就在2019年11月,IBM与美国银行(Bank of America)经过长达18个月的合作,联合推出金融服务专用云,可以满足金融服务行业所需的高监管、高安全和弹性标准3。美国银行将在IBM金融服务公有云上托管一系列关键应用程序和工作负载,其中也采用红帽Red Hat OpenShift作为其主要的Kubernetes环境来管理容器化软件。IBM称这是全球唯一一个针对特定行业的公共云平台,其主要原因就在于银行业一直是最受严格监管的行业,各国都有针对银行业的严格的监管法律法规和政策。为了帮助促进法规遵从性环境,IBM和美国银行与金融服务法规遵从性咨询全球领导者Promontory金融集团展开合作。

《金融科技(FinTech)发展规划(2019-2021年)》指出,金融机构要合理布局云计算,搭建安全可控的金融行业云服务平台,构建集中式与分布式协调发展的信息基础设施架构。而《中国金融科技运行报告(2019)》也强调,金融科技的本质是金融而非科技。国内的金融行业云兴业数金就采用了x86服务器与Power小型机的混合方式,腾讯云TStack私有云也与LinuxONE互认证可满足企业级要求。

总结而言,当前是金融科技的“窗口期”,但也要注意避免重蹈互联网金融的覆辙。金融科技的本质是金融而非科技,科技路线之争不能影响到金融创新的本质,传统金融机构也不能为了金融科技而盲目上金融科技,更重要的是要处理好创新与安全的平衡,守住安全的底线,从而抓住重大历史发展机遇。(作者:吴宁川 / 云科技时代)