商业银行云平台建设思路
2018-06-20孟士清
□ 孟士清
自互联网公司加入金融创新竞争中以来,银行不仅要面临同业间激烈竞争,还要应对互联网金融的挖角,为此银行的业务产品和信息技术迭代达到前所未有的速度。作为银行的科技部门,一方面要做好开发工作来支持业务创新,另一方面还要做好运维工作来保障传统业务和创新业务的持续稳定运行。产品开发对底层技术架构依赖较少,转型和创新速度快;与开发相比,作为科技后台支持的运维工作受限于底层软、硬件架构,无法快速实现转型,现有资源和管理方式已经难以满足开发部门快速部署、快速迭代和持续运行的需求。
云平台也被称为按需平台(on-dema nd platform),顾名思义,是根据使用部门实际需求定制的管理平台,通过开放平台技术池化底层物理资源,使用自动化手段替代手工部署和运维等相关操作。云平台的出现为银行IT系统架构转型指明了方向,已有不少银行就云平台建设进行探索,监管部门也鼓励银行根据自身情况搭建云平台,提升IT运维、管理工作水平。
农行江苏分行作为系统和同业内的业务大行和体量大行,其科技工作具有较强代表性。本文以江苏农行为例,分析了当前银行IT运维工作中普遍存在的问题,并据此对银行云平台构建提出建议。
一、当前银行IT运维痛点
(一)日益增长的软硬件设备数量同有限运维人力之间的矛盾。近年来,银行管理的IT系统和硬件设备数量不断增加,就江苏农行实际情况来看,其原因主要有两个:一是金融业务不断发展创新,技术层面的迭代导致系统迭代更加频繁,银行需要根据应用架构升级不断部署新系统,且业务创新不断涌现,亟需更多的测试和生产系统支持。另一方面,银行的系统架构正逐步转型,计算资源由几年前的小型机为主向开放平台转变,小型机数量不断缩减,X86服务器的数量快速增加;同时存储资源则随着数据量的增加不断扩张,分行存储设备如NAS和SAN设备的数量也在逐渐增加。运维人员不但要投入到硬件设备部署、应用系统变更上线上,还要应对突发的软硬件故障。在运维规模持续扩张的情况下,这些劳动密集型的工作消耗了愈来愈多的人力资源。而银行系统运维人员数量基本维持不变,长此以往,运维压力继续增加,系统运维工作将陷于疲于应对的不利局面。
(二)日益增强的业务连续性要求同传统系统架构之间的矛盾。作为金融企业,确保业务的连续运行至关重要,尤其是自助机具、网银、掌银上部署的业务,更是要求24小时无间断运行。银行业务系统极短时间的中断也可能会给客户带来严重的经济损失,进而导致声誉风险。目前江苏农行重要的业务系统大多实现了通过负载均衡系统接入应用服务器,这在应用层面保证了业务的连续性,但是底层的sybase数据库大多以单实例方式部署在小型机分区上,得益于小型机的稳定工作,大部分时间数据库的连续工作是能够保证的。而停机窗口的数据库维护仍将不可避免地造成一段时间的业务中断。分行的数据库维护均在总行的停机窗口进行(一般为周末凌晨2点),虽然从时间上选择了业务量较少的时段,但无法确保此期间内没有客户使用相关系统。2018年以来,分行已经提出了不停机维护的明确要求,但就目前的架构来看,尚无可能实现完全的不停机、不停业务的维护。
(三)日益提升的系统安全性要求同有限的灾备技术手段之间的矛盾。系统的安全性要求所有的系统和数据都要有备份,理想的灾备手段是使灾备切换时间尽量短、恢复的时点尽量接近。银行现有的备份和灾难恢复工作中包含了大量人工操作的部分,因此备份更新频率和切换速度均不太理想。从江苏农行具体情况来看,虚拟服务器备份方面,运维人员每个季度通过脚本对全量虚拟机进行手工备份,备份周期为季度,备份的粒度过大,对于数据库来说,每天晚上对生产上的数据库进行导出操作,结束后导入到备份数据库中,备份周期为一天。上述备份方式不仅自动化程度不高,而且备份周期过长,如遇到生产数据库恢复,则会丢失当天的交易数据,这是不能容忍的。在灾备恢复方面,一般流程包括“故障发现——故障判断——备份切换”三部分,目前后面两个流程完全依赖运维人员判断和操作,导致切换时间过长,影响应急切换的效率。整体来看,在灾备方式上,分行现有技术手段比较单一,灾难恢复效率低,愈发无法满足IT系统安全性要求。
(四)日益精细化、集约化的管理要求同手工管理之间的矛盾。传统银行运维工作中,由于缺少自动化管理软件,一般依靠文本和表格记录资源申请、部署和变更情况。目前江苏农行所有的系统部署、变更申请基本上通过IT服务平台进行申请、审批,同时填写纸质系统部署申请表,这一套流程仅仅实现了系统申请部分的信息化,而对于系统部署和变更操作以及后续资料管理上较为粗放,基本上是依靠手工记台账,仅系统信息采集类的台账表格就多达十几张,每次系统操作之后,维护对应项目的台账占用了运维人员相当一部分时间,形成了额外的工作压力。此外,依靠手工维护的台账在准确性和规范性方面存在不足,这也给以此为基础的统计和管理工作带来困难。除台账之外,系统的变更和部署操作也多为手工完成,缺乏自动化手段。人工部署交付的系统在参数、环境以及配置方面普遍存在细微差异,这种差异在投产后很可能导致服务器性能无法达到最优水平,且在部署时如果不能严格按照总行安全和配置规范实施,则会引发系统安全问题,给未来的生产运行埋下隐患。
二、构建商业银行云平台建议
综上所述,银行现有的运维体系在应对新形势下的运维需求上存在诸多不足。云平台技术的出现和日臻成熟为银行走出现有架构下的运维困境提供了思路。目前,政府部门和大型企业纷纷就建设私有云平台做出探索,系统内农行和建行已在测试环境下试用了云平台。在此背景下,银行构建符合实际运维需求的金融云平台、实现传统架构转型是必行之路。根据银行目前的系统架构和实际工作需求,笔者认为可初步构建如图1所示的云平台架构。
图1 分行云平台架构简图
(一)资源层——构建物理设备资源池。实现不同品牌的异构物理资源的池化是云平台建设的一项基础工作,资源池化(IaaS,基础结构即服务),即把最底层不同类型的物理设备通过平台或接口进行统一调度,使运维人员从学习和掌握各类不同类型、不同品牌设备具体操作的复杂工作中脱身,从而能够更加专注于统筹规划和日常管理等方面的工作。从各行实际情况来看,每年采购的设备品牌不断变化,多年积累下来,银行现有服务器品牌多达几十种,主流存储品牌超过10种,还有各种品牌的交换机、小型机等硬件设备,分门别类地进行管理工作量大,单个运维人员很难做到熟练操作所有硬件设备,因此构建物理资源池意义重大。IaaS在构建方式上可以通过OpenStack等开源平台对接实现,也可以通过创建定制接口池来实现。通过开源平台调用底层物理设备的优点是功能强大、可扩展型好、兼容性佳,但前期开发成本高和工作量大,实现周期较长。考虑到银行现有主流的Vmware虚拟化架构短期内不会改变的情况,笔者认为构建物理资源池可以分两步走,短期内通过调用Vmware接口实现初步的基于VMware的计算资源、存储资源和网络资源的统筹管理调度,以满足当前的运维需要;与此同时,使用部分测试用物理设备来开发和测试基于开源平台的物理资源的池化技术,为未来系统架构转型做技术储备。
(二)调度层——实现自动化部署、自动化灾备恢复和自动化运维机制。资源池化是云平台建设的基础,而在调度层实现自动化则是云平台构建的核心技术。笔者认为,分行金融云应争取实现部署、灾备恢复和运维三类自动化工作。自动化部署是第一步,是云平台根据管理员的指令自动部署各类资源包括服务器、负载均衡、标准化软件等。与手工部署相比,自动化部署通过事先设定部署参数和组件实现标准化、规范化部署,避免了部署过程中的人为差错,缩短了部署过程中各环节工作的衔接时间,部署的质量和效率均可得到显著提升。灾备切换是IT运维工作中的重要环节,其包括自动备份和自动恢复两项工作。自动备份是按照事先约定的规则对应用、数据库和配置等分别进行备份;自动恢复则是平台定期根据检测条件进行健康检查,如检测异常可提示运维人员切换,或根据规则自动切换。云平台能够提供多种灾备切换方式,通过合理的设置完全可以实现秒级切换,可靠保证了业务的连续性。自动化运维是云平台建设的高层次目标,其致力于打造一个能够自动发现问题并自动修复问题的智能运维平台。由于生产中出现的问题种类多样,同一问题的原因可能各不相同,实现完全的自动化运维较为困难。前期可以实现一些简单的自动化运维工作,解决一些常见的简单问题,也可以在一定程度上降低运维人员的工作压力。在云平台架构中,调度层将根据实际工作中的需求进行“量身”打造,力争覆盖运维工作中占用精力多、简单、重复的劳动,既要切实减轻运维人员压力,又要提升运维工作质量。
(三)管理层——打造高效的综合管理平台。管理层是云平台的展现层和操作层,通过Web界面实现与用户之间的交互,也被称为云管平台。用户通过Web界面访问云平台提出资源申请、变更请求等;管理员登陆运管平台对所有申请进行审批、发送指令进行资源部署,并能对所有系统资源进行统一管理。在分行云管平台设计上,首先要实现操作留痕,平台应保存所有对底层资源的操作记录,做到每一笔部署和变更均有据可查。第二,要实现资源从申请、审批、部署、变更、回收的全流程关联,做到所有资源有名有主、所有操作有凭有据,从而达到流程管理的规范性。第三,依托云管平台建立分行的IT架构配置信息库(CMDB),取代手工维护的excel表格,通过平台抽取底层资源的详细信息,并根据部署、变更记录实现配置库自动更新,同时还可提供多维度的查询展示功能,方便相关的管理工作。总体来看,云管平台联接了申请、变更/部署、配置库更新等工作,自动化采集的数据更加精确,其可以把宝贵人力资源从维护复杂的表格等枯燥的日常工作解放出来,运维人员可以专注于平台管理和资源运行状态监控等相对重要的工作。
未来,随着传统系统架构向开放平台转型,银行IT基础设施建设的复杂度将陡然增加;同时金融创新和线上业务规模不断扩张,IT系统需求也将更加旺盛,银行信息系统运维工作正面临空前的压力,转型和创新势在必行。云平台的出现为解决传统运维痛点提供了思路,通过云平台建设,将大幅提升传统运维工作的效率和质量,加快系统需求的响应速度。作为传统金融业的支柱,农业银行应走在时代前沿,抓住这一跨越式发展的宝贵机遇,提升IT运维水平,为金融业务发展提供更有力的科技支持。
[1]李小庆,《银行云数据中心的构建》,《金融科技时代》,2016年第8期。
[2]刘锋,《央行分支机构私有云平台的应用研究》,《电脑编程技巧与维护》,2017年第22期。
[3]张正、王孚瑶、张玉明,《云创新与互联网金融生态系统构建——以阿里金融云为例》,《经济与管理研究》,2017年第3期。
[4]周衡昌,《商业银行金融云发展之路》,《金融电子化》,2016年第12期。
[5]朱文生,《大数据时代商业银行面临的挑战及对策》,《中国金融电脑》,2015年第12期。