Nav
作为运维人,你知道啥是“黑石”“白石”吗?
2019-11-27 发布在 新闻动态

金融行业作为灾备体系建设最受重视的行业,从单IT领域的容灾备份上升到了保障业务持续运行的层面,业务的连续性管理受到了广泛重视。随着各类业务的持续发展,数百套业务及支撑系统在线运营,各类应用系统间开始呈现复杂的依赖关系,系统运维的复杂度急剧增加。基于这些原因,东方证券从技术创新和运维管理上进行了变革。

本文为东方证券系统运行总部总监殷皓结合自身业务的具体实践,相信对证券以及整个金融行业都将具有极大的指导作用。

-聚焦行业发展-

科技与金融协同融合发展

随着信息产业的快速发展,数字技术将进一步夯实国家金融科技基础设施,增强金融机构的核心竞争力和风险防控能力,为资本市场未来各项业务的健康发展奠定坚实的技术基础。

东方证券作为金融科技发展的引领者已经领跑多年。从1998年正式开业至今,东方证券已经走过了21年的历史。作为一家提供证券、期货、资产管理、理财、投行、投资咨询及证券研究等全方位、一站式专业综合金融服务的上市证券金融控股集团。公司形成了自营投资,固定收益,证券、期货研究及资产管理等优势业务的业内领先地位。随着云计算、大数据、人工智能和区块链等新兴技术在金融行业的深入应用,科技对于金融的作用不断强化,证券行业已成为高度依赖金融科技创新的行业。

在这样的背景下,东方证券成立了专门的数字文化建设推进小组,通过邀请各界专家对公司员工培训,内部开办讲坛、讲座、互动研讨,此外,针对业务部门的应用特点,公司内部举办的Python编程比赛,也吸引了很多业务部门的员工积极参加。金融科技引领业务创新发展的理念已逐渐深入每一名员工的内心。

-破局行业困境-

证券行业需要更好的高可用技术选型

目前,行业监督不断规范、市场创新不断快速化、业务系统不断增加,证券企业的IT运营也需要更安全的系统以及更高层级的运维要求。以东方证券为例,现在每年都有50套以上新增的系统,这些新增的系统对运维能力提出了更高的安全要求和技术要求。

因此,在高可用技术的选型上,就需要从行业自身特点和业务具体场景上予以选择。不同于其他行业,证券行业的信息系统运维特点主要包括:

第一,较长的可变更窗口。证券行业7x24小时不间断运行的系统目前在逐渐演化和增加,但总体数量并不是很多,工作日休市期以及周末的48小时的存在,使得证券行业有一个较长的可变更窗口。

第二,生产测试频繁。由于有了较长的变更窗口,对于业务的测试也就可以更加的频繁,并且经常是将核心系统的主生产环境直接投入测试。各交易所也经常以通关、联调的名义要求会员单位必须以生产环境进行新业务的测试验证工作。主生产的参测导致了大量的回退操作,这些回退操作对高可用系统带来了破坏性作用,运维人员疲于应对高可用系统的修复与重建工作,这对高可用系统的技术选型有非常大的影响性因素。以东方证券为例,每年高可用系统的重建达上百次,是银行业的数倍。

第三,人员不断精简。随着相关新技术的应用,运维已经从分散运营、到集中运营再到智慧运营,运维人员的学习主动性要求和成本越来越高,这也导致人员进一步精简,每个岗位需要担负的责任也更大。

基于以上的特点,在高可用技术的选型上,东方进行了卓有成效的实践。

对一个系统来说,它的数据层是有状态信息的,必须采用专业的高可用技术才能保持业务的连续性。从技术视角分类,数据层的高可用技术分为以下四类:

第一种是数据库源生日志回放技术。利用数据库先记日志再提交事务的内部机制,通过数据库的日志回放技术将日志传到备份系统,主备两边同步或异步执行日志内容,实现系统的高可用。

第二种是第三方日志解析回放技术。通过API接口抓日志,再将二进制日志解析成可读取的字符,重新封装成自己的格式分发出去,在目标端提交事务,实现系统高可用。

第三种是文件系统同步方案。在早期数据库版本中还没有提供日志回放功能,硬件存储复制是应用较多的高可用方案。其局限性是通过硬件绑定,并且投入非常高。不过随着相关软件方案的出现,逐渐解决了这个问题。以东方证券实际应用的英方软件为例,其产品i2COOPY,就是模拟了硬件操作技术,通过在操作系统层安装一个代理程序捕获I/O操作,并通过网络将I/O操作传输出去,成功解决硬件的局限性。

第四种是分布式实现整体高可用。像Hadoop大数据平台、mpp架构数据仓库、分布式NEWSQL数据库等,他们提供的是整体解决方案,通过大量的底层技术堆砌而成,自带高可用功能。

-“英方”助力“东方”-

高可用运维场景落地

从技术视角出发把高可用技术分为四类,而站在运维的视角,则可以把高可用技术可分为两类:一种是需要维护的,我们可以称之为“白石”;另一种是无需维护的,我们称之为“黑石”。如果把高可用比做一个大厦的话,那建造这个大厦就离不开以上这两种基石。

而在大厦的建设过程中一般会遵循以下两个原则:

第一,选择黑石、白石两条腿走路。例如英方软件的i2Active可以看作是白石;i2COOPY则可以看做是黑石。英方软件在证券行业深耕多年,特有的复制技术从操作系统层面、数据层面等解决了传统高可用技术问题。

第二,业务需求优先。虽然白石越多需要维护的量就越大,黑石越多维护量越小,但是白石、黑石比例要优先满足业务要求,再去想怎么在满足业务前提下简化体系和工作量。

以东方证券一个多系统复杂架构为例:场外交易平台本身是一个大的主库,承担账户、交易和经管三大主业务。纵向来看,备库要求做到读写分离,采用“白石”数据库同步的方案。横向来看账户主和交易主还要将数据实时写回到经管主库上,做实时报表和分析功能,采用“白石”数据同步方案;但经管库自己也要做读写分离,运用“黑石”数据复制方案。这就是一个由“五白一黑”组成的高可用架构。

架构图:“五白一黑”

根据业务需求优先和黑石白石两条腿走路的原则,英方软件助力东方证券对场外交易库进行优化。措施:交易和账户在经管库上是有全量数据,那其查询负载是可以放在经管库上做,原本账户和交易主备之间白石的数据同步方案可以改用成英方的i2COOPY,把“五白一黑”的架构变成“三白三黑”的架构,降低它的复杂度和运维量。

架构图:“三白三黑”

-东方证券-

大道至简,衍化至繁

总体来说,高可用的运维转型经历了四个阶段。

第一阶段是手工执行命令;

第二阶段是标准化,把一些常用的东西固化下来形式脚本;

第三阶段借用自动化运维平台通过流程系统把前面做好的脚本串联起来,实现一个工作自动化;

第四阶段目标:实现运维的智能化。

今天,东方证券已经从自动化运维向智能运维转变,包括日志管理、计划管理、容灾架构设置等,都实现了图形化统一管理,同时,构建了大数据分析平台,这些平台综合在一起才能真正实现智能分析决策,真正实现向自动、智能演变的过程。为了实现智能化,东方证券已经在做基础平台的准备。建好基于zabbix的统一监控平台和运维大数据分析平台,这些平台和前面的自动化运维平台是基础。

技术不断更新迭代,需要通过简化运营的方式予以化解,如何找到二者之间的平衡点,找到能够促进传统与数字化业务正确组合的价值主张,需要CIO与公司的高管团队不断思考。“大道至简,衍化至繁”,再复杂的体系也是由简单系统堆砌起来的。所以,在规划建设运维系统时一个有效的方法是把复杂的事物进行分解、归纳、合并同类项,实现一个从简到繁再到简的变化过程。