APP下载

台企银揭露网银系统翻新过程,2阶段转型系统架构,先容器化再导入微服务技术

消息来源:baojiabao.com 作者: 发布时间:2022-07-02

07月02日更新

图片来源: 

红帽

银行业为提升数位服务支援力,近年纷纷拥抱新技术,像是容器、微服务架构等,来加快服务上线时间,连主要提供中小企业金融服务的台湾中小企业银行(简称台企银),也不例外。

近日,台企银对外分享过去3年,资讯团队导入容器化技术的经历,更预告接下来还要采微服务方式部署新系统,还有微服务化使用量大的既有应用,来提升应用的执行效能。

台湾中小企业银行资讯部襄理周圣钧点出,促使台企银导入容器化技术的关键是,全面翻新网络银行的决策。台企银网银原采单体式架构建置,造成IT时常遭遇工作效率不彰的一些状况。

譬如说,为符合银行资安监理要求,IT团队每年须针对网银系统,进行数次资安检查和评估,包含弱点扫描、渗透测试、参数检核,还有部署更新档。周圣钧表示,传统单体式架构下,台企银网银系统有4台服务器,IT需花费很多人力和时间,分别为4台服务器进行资安修补的动作。

另外,每当台企银举行高度宣传的行销活动,IT团队为缓解服务器承受的高负载流量,会遭遇系统扩充的挑战,需耗费数小时调整相关设定,才能扩充资源。周圣钧直言,在传统网络服务器架构下,要扩充系统资源,“不容易。”

他回忆团队曾处理的一场行销活动的经过。当天活动一开跑,大量人流瞬间涌入系统,导致系统出现反应迟缓的状况,即便IT团队不久后找到促使系统运作变慢的瓶颈,但他表示,要扩充系统,并无法这么快速。

IT团队需调整各项系统架构的设定,除需开通防火墙,还需调整网络服务器、交换器等,花了约2小时,才成功将系统资源从4台VM扩充至8台,缓解那次活动的系统负载量。他表示,因资安检查、资源扩充等面向的问题,促使台企银决定翻新网银系统。

由于网银系统涉及多种业务,串接多个业务系统,包含台币、外币、基金、黄金等,非常庞大,台企银资讯团队与管理高层经好一段时间讨论,才拍板决定新系统建置要采用的技术,那就是容器。

台企银期望借由容器技术具备的弹性、轻便等特性,提升网银服务的作业效率,2019年时,正式展开容器化技术的导入旅程,打掉网络银行旧系统,用容器化技术重练新网银。

容器化网银系统上线初期,IT遭遇各种容器效能不彰问题:笨重、无法自动扩充、重启慢等,遂进一步导入管理平台

然而,容器化网银系统上线初期,IT团队缺乏管理、使用容器的经验,也欠缺有效的容器管理工具,所以,很长一段时间,处于摸索学习阶段,也遭遇许多容器使用效率不彰的状况。

周圣钧回忆系统上线时,当时所用的容器相当笨重,大小高达好几百MB外,用量大的容器更占据近2G的内存量。他表示,因容器笨重、尺寸大,一台VM可放入的容器数量也有限,当时反而没有享受到高密度的容器特性。

此外,台企银网银系统容器无法自动扩充,缺乏扩充性,而效能方面,重启容器时,也不如其他采用容器技术的金融业者,能够以秒计算重启时间,而是以分钟为计算单位。

维运方面,台企银使用原生Docker导入容器技术,并采用Docker自行开发的容器调度工具Swarm管理容器,而遭遇容器分散不同VM的状况,导致IT维运团队管理容器时,必须进入每一台VM查找Log,以下指令方式取得资讯,才能找出容器的问题,来排除状况,效率相当不佳。

相对传统单体式系统架构,容器技术具有的轻便、弹性、高密度、自动扩充、高效能等特性,周圣钧直言,网银系统上线初期,台企银一个特性都没有享受到。

因遭遇上述问题,台企银发觉须导入全面性的容器管理工具,从单一平台管理、维运和监控容器,才能真正获得容器技术的特性,提升网银系统的作业效率。评估多个容器管理平台后,选择导入红帽OpenShift。

周圣钧表示,透过OpenShift网页版管理界面,IT人员可以监控每一个容器的资源使用状况,包含CPU、内存,甚至是网络带宽,他提到,过去人员查找Log需花非常多时间,从登录各个VM取得Log,再排列Log的时间序列,才能厘清问题,现透过网页管理界面可快速找到各容器的Log资讯,进而排除问题。

此外,台企银还利用OpenShift实现系统自动扩充力,周圣钧提到,当行销活动开跑后,客户涌入网银使交易量变大时,OpenShift会监控容器的负载量,一旦发现容器资源不敷所需,会自动扩充容器的资源,他更认为,自动扩充力是导入OpenShift帮助最大之处。

IT团队现不需为网银系统每一次的资源扩充动作,调整交换器、防火墙等元件的设定,只需事先设定好OpenShift的ingress等物件,就可以实现系统自动扩充能力。

微服务化网银高度使用应用,提升系统运作效能

有了单一容器管理平台,可监控应用程序的运作状况后,下一阶段,台企银想进一步朝微服务化应用迈进。

其实,台企银内部讨论网银新系统时,就曾讨论采微服务架构技术,建制网银系统的可能性,周圣钧表示,当时,团队考量网银系统庞大,如果直接跳到微服务,会面对许多难题,他坦言:“我们没有勇气这么做。”

他进一步说明,微服务架构虽可为系统环境带来很多好处,但开发和建置过程相对容器架构复杂,他举例,需适当切分有关联性的业务逻辑,还需解偶资料、确保资料具一致性等,这些都需花费相当高的成本,包含时间、技术,还有人力,才可以实现微服务架构。

所以,台企银那时没有一口气采用微服务架构,建置新网络银行系统,选择以渐进方式进行,让网银先走向容器化,再慢慢转变为微服务架构。

台企银决定分进推进系统微服务化工程,首先,锁定笨重、效能较差的容器,要抽出这些容器里经常改变或常用的应用、服务或API,比如说,银行顾客最常使用的登录功能,来进行微服务化工程,提高容器的效能。

自行开发IT应用需求上升,将导入敏捷开发文化,加快应用上线时间

微服务化系统应用后,台企银还要导入敏捷式开发文化,强化自有开发能力。周圣钧提到,过去台企银系统多半采委外开发、自行维运的模式,但这几年自行开发的比例越来越高,而且资讯需求的开发时程也越来越短,他表示,有时甚至隔周就需上线,像是近期开发的五倍卷系统,从开发到上线不到一个月,且上线后仍需不断调整。

有感自行开发比例变多,开发时间又缩短,台企银开始琢磨要导入敏捷式开发,希望透过流程化管理工具,比如说Jenkins,串接各项流程,从版本控制、源代码检测,到压力测试、部署,把既有人工开发流程串起来,缩短应用程序上线时间。

优化应用程序品质,还有加快应用上线时间,是台企银的长期目标,然而,这并不容易做到,周圣钧表示,这牵涉业务单位、系统需求单位,还有程式开发人员,他强调,需调整人员的观念,还有调整开发人员的工法,才能够让应用程序开发更优质,加快上线速度。

2021-12-01 11:47:00

相关文章