客户故事 | 北京银行自动化运维平台建设之路_自动化平台建设路径-程序员宅基地

技术标签: ChatOps  双态IT运维  

近年来,国内外金融行业环境复杂多变,技术发展更是迅猛。许多互联网企业以余额理财为切入点,基于P2P网贷业务、第三方支付平台和社会平台来积累用户资源,以此拓展其他消费金融业务。更有甚者,发起设立民营银行。

在此环境下,为了应对市场变化,传统银行将更多金融服务类产品投入市场当中。这些新的业务在为银行创造更高经济收益与社会效益的同时,也对银行IT系统的持续、高效能服务能力提出了更高的要求。

我们可以看到随着银行业务的快速发展,以及业务模式逐步由网点向电子渠道的转化,同时金融行业的IT资产、业务系统、辅助系统急速膨胀,系统的复杂性及维护这些系统带来的运维工作量也同步增长,维护系统的可靠稳定运行仅仅依靠增加人力的方式,其边际递减效应愈加明显。

运维模式层面上,DevOps理念快速推广,运维模式的变化也给运维部门在管理、组织、流程、技术、工具等方面带来全新变化。传统人工为主的运维方式已经完全无法适应当前管理的需要,金融行业的系统运维更迫切地需要向自动化、智能化模式转变。

北京银行所面临的运维挑战

北京银行是一家新型股份制商业银行。业务涵盖企业金融服务、代理保险、国际结算等,在全球范围内为个人和公司客户提供服务。面对愈发广阔的业务类型、服务地域以及对象,北京银行的数据中心运维规模近年来在不断地扩大。

分析了解到,北京银行此前的运维操作单纯依靠专业技术人员完成,运维模式处于较为传统单一的阶段。伴随着其日益复杂的办公环境和业务运转需求,已有的运维模式正面对严峻的冲击与挑战,具体表现在以下几个方面:

网络安全受到威胁

银行的运维操作大部分依赖人工,导致操作风险与人员流失率加大,信息更容易泄露。与此同时,人为操作失误也更容易造成许多安全事故,并且难以从根本上进行良好的风险把控与故障排查。

资源利用率低,成本过高

对于那些依赖多跳网络将计算和存储连接起来的传统架构来说,不断增加的虚拟机也造成了巨大的成本和管理压力。在此基础上,银行技术人员做了大量重复低效甚至无效的工作,但人为的操作往往很难满足此前复杂丰富的运维需求。与此同时,业务拓展、上线周期太长等效率过低的问题也渐渐出现。

运维工作缺乏自动化工具的辅助

只有在运维过程中构建一个统一标准,实现人员、流程、工具的标准化,才能在最大的程度上实现运维的高效能、自动化。

运维管理呈现出的“双态性”

现阶段所要解决的当务之急是如何处理好金融行业的“求稳性”属性,与日益繁琐的业务需求、愈发沉重的运维压力下呈现出的“求敏性”之间的平衡,这种情况下的“双态性”该如何良性共存。

| 北京银行自动化运维平台建设综述

广通软件基于优云新一代运维PaaS平台,结合北京银行自身的运维特点以及需求推出了全新的运维自动化解决方案。

其产品采用”平台+场景“的设计思路,打造出一个通用的自动化作业平台,然后基于该平台再构建面向基础资源、应用和业务的自动化运维场景和针对性APP。

·自动化作业平台·

本次项目从管理范围及应用场景2个维度进行建设。

1、从管理范围维度,本次项目实现了:

对数据中心物理机、虚拟机、网络及安全设备等服务节点进行纳管;

应用、操作系统、数据库、网络等各层面资源进行巡检;

纳管服务节点配置信息的自动定时采集功能与对比;

操作系统、数据库、中间件等资源进行合规检查操作;

操作系统、数据库等补丁包的更新。

·以业务场景为导向的自动化交付·

2、从应用场景维度,本次项目实现了:

自动化巡检

以业务系统维度对该系统所涉及的应用、操作系统、数据库、网络等各层面资源进行巡检。

自动化配置管理

实现纳管服务器配置信息的自动定时采集功能,并将采集信息作为数据源,自动采集的配置信息可以直接发现配置差异,发现后可与现有ITIL中的CMDB配置信息进行比对,并对对比出的差异项进行标记,通过工单来通知相关责任人员进行处理,实现配置项信息同步。

自动化合规检验

实现对操作系统、数据库、中间件等资源进行合规检查操作。将符合规范的合规检查模板转化为检查项,通过周期性地自动检查或人工触发的方式,能够展现所有服务器的合规情况,并定期生成合规检查报告。

通过制定合规标准,定期对现有配置进行审计,并可通过流程触发的方式(如派发ITIL工单)进行修复和加固。

自动化软件与补丁安装

实现数据库、中间件等软件的自动安装以及集群架构的搭建;实现操作系统、数据库等补丁包的自动化批量安装、更新。

自动化定时任务

实现以业务系统维度,将已定制好的流程或脚本,按照设定的时间要求进行自动化处理,对定时任务的执行情况进行展示,并对执行结果进行记录。

| 自动化运维平台项目收益

整体来看,自动化运维平台的构建很大意义上提升了运维的效率,并减少了因为人工和流程操作而引起的运维故障的可能。

通过实现服务器和网络设备的自动化巡检及合规性检查、软件的自动化安装、配置信息的自动化获取、运维操作的服务化封装、流程任务的可视化编排等功能需求,实现了自动化运维平台的搭建,为北京银行的运维模式带来了巨大的转变。同时,平台也具备可扩展性,便于后期适应各种复杂自动化运维场景。

·项目设计效果参考组图·

机器自动执行重复操作,运维安全得到保障

采用自动化手段,将大量的标准、重复的操作以机器自动执行的方式,显著提供各类事物的操作效率,降低人为操作风险。

自动化的操作前移及故障自愈

通过操作前移和故障自愈,把原来需要二线处理的工作前移到一线值班处理,将二线管理员从大量重复性的工作中解放出来,可以把精力用在风险分析、系统优化等更有创造性的工作上面去。

协同办公,各部门沟通效率得到提升

通过社交化的协同工作模式,在保证合规要求的前提下(提供沟通和操作留痕),显著提升部门内及部门间的沟通效率。

通过DevOps持续实践,业务响应更加敏捷

平台很好的支持应用持续交付运维模式,通过DevOps持续实践,提升业务应用系统的迭代速度,为业务提速提供有效支撑。

| 自动化到智能化运维探索——“四步走”战略

凡事预则立。北京银行的自动化运维建设也应遵循“总体规划与分步实施”的原则。从自动化运维建设整体出发,制定自动化运维实施蓝图,在此蓝图指导下,遵循“近期、中期、远期”的建设路径,结合实际情况,分阶段、分步骤执行建设任务。我们将其概括为“四步走”战略,并且分别罗列制定了不同时期所要完成的目标。

第一阶段:平台基础功能搭建

进行精准的自动化运维平台需求分析,完成自动化巡检、自动化配置管理、自动化合规检查、自动化软件与补丁安装组件建设等。目前,该阶段已经顺利完成。

第二阶段:平台能力逐步完善

第一阶段所搭建的自动化运维平台已初步具备了基础的自动化运维效能,但仍有许多功能需要完善。第二阶段的目标主要有:完成试点系统的脚本开发;发现产品问题并及时优化;横向扩展纳管系统范围,纵向延伸自动化功能等。该阶段已经于2018年上半年顺利完成。

第三阶段:平台功能拓展

该阶段侧重点在于自动化运维系统的应急处理功能完善以及针对自动化运维平台制定相应的流程和要求。该阶段目前正在进行当中,预计2018年底完成。

第四阶段:运维转型——AIOps智能化

实现通过大数据平台,能够接入海量IT数据以及利用人工智能和机器学习算法进行分析、学习、预测和干扰的功能。

目前,北京银行运维建设项目已经到达“四步走”战略规划的第三阶段末期,完成了工具化——服务化的运维模式转变,基本实现并完善了运维自动化平台的功能,下一阶段所面临的挑战就是智能化运维的探索与实践。

| 未来AIOps智能运维平台的思考

经历了脚本化——工具化——自动化的运维模式改革,接下来北京银行所要面对的时代方向便是智能化运维。在云计算、微服务、人工智能等新技术流行的基础上,智能化运维渐渐成为趋势。

但基于目前业内智能化运维仍处于初步探索阶段,北京银行的智能化运维建设也会面临一些诸如安全、运维人员思维转变、海量数据管理与机器学习挑战以及智能化运维标准化等问题。针对这些考虑,广通软件携手北京银行共同探讨出一系列关于智能化运维演进的思路。

深入构建自动化场景:在目前运维的基础上,深入完善构建其自动化场景。具体体现在:构建故障处理、备份管理、性能调优、应用部署、弹性扩容、容灾切换、云化管理、配置变更、作业跑批等其他场景。

集成流程平台:这方面希望可以实现ITIL自动化任务调度集成,构建事件管理流程和变更管理流程。

运维平台的智能化AIOps演进:北京银行的AIOps演进将以机器学习为手段,通过分析历史数据,实现预测分析、故障自动诊断、自动修复、资源弹性伸缩等业务功能,不断完善运维平台的能力,使其有如灵活运转的最强大脑,构建集成化的AIOps智能化平台。

| 写在最后

从长远发展来看北京银行的智能化运维之路,仍应是遵守“安全优先、稳定第一”的原则,这是基于金融行业所特有的安全管控与风险控制等特点所考虑的。安全稳定原则应当贯穿整个智能化转型的过程。同时,北京银行的智能化运维建设应当结合自身企业文化、组织架构特色,以此实现人工、自动化、智能化的良性并存运维模式。

该模式下,运维人员将经历从围绕系统工作逐渐过渡到围绕数据和自动化工具平台开展工作的转变,并通过智能化运维系统进行数据分析和辅助决策。以上是我们对北京银行自动化和智能化运维工作的思考和实践。希望在不久的将来,我们与客户携手共进,能够一起实现智能化运维的美好蓝图!

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/uyunopss/article/details/83650891

智能推荐

oracle 12c 集群安装后的检查_12c查看crs状态-程序员宅基地

文章浏览阅读1.6k次。安装配置gi、安装数据库软件、dbca建库见下:http://blog.csdn.net/kadwf123/article/details/784299611、检查集群节点及状态:[root@rac2 ~]# olsnodes -srac1 Activerac2 Activerac3 Activerac4 Active[root@rac2 ~]_12c查看crs状态

解决jupyter notebook无法找到虚拟环境的问题_jupyter没有pytorch环境-程序员宅基地

文章浏览阅读1.3w次,点赞45次,收藏99次。我个人用的是anaconda3的一个python集成环境,自带jupyter notebook,但在我打开jupyter notebook界面后,却找不到对应的虚拟环境,原来是jupyter notebook只是通用于下载anaconda时自带的环境,其他环境要想使用必须手动下载一些库:1.首先进入到自己创建的虚拟环境(pytorch是虚拟环境的名字)activate pytorch2.在该环境下下载这个库conda install ipykernelconda install nb__jupyter没有pytorch环境

国内安装scoop的保姆教程_scoop-cn-程序员宅基地

文章浏览阅读5.2k次,点赞19次,收藏28次。选择scoop纯属意外,也是无奈,因为电脑用户被锁了管理员权限,所有exe安装程序都无法安装,只可以用绿色软件,最后被我发现scoop,省去了到处下载XXX绿色版的烦恼,当然scoop里需要管理员权限的软件也跟我无缘了(譬如everything)。推荐添加dorado这个bucket镜像,里面很多中文软件,但是部分国外的软件下载地址在github,可能无法下载。以上两个是官方bucket的国内镜像,所有软件建议优先从这里下载。上面可以看到很多bucket以及软件数。如果官网登陆不了可以试一下以下方式。_scoop-cn

Element ui colorpicker在Vue中的使用_vue el-color-picker-程序员宅基地

文章浏览阅读4.5k次,点赞2次,收藏3次。首先要有一个color-picker组件 <el-color-picker v-model="headcolor"></el-color-picker>在data里面data() { return {headcolor: ’ #278add ’ //这里可以选择一个默认的颜色} }然后在你想要改变颜色的地方用v-bind绑定就好了,例如:这里的:sty..._vue el-color-picker

迅为iTOP-4412精英版之烧写内核移植后的镜像_exynos 4412 刷机-程序员宅基地

文章浏览阅读640次。基于芯片日益增长的问题,所以内核开发者们引入了新的方法,就是在内核中只保留函数,而数据则不包含,由用户(应用程序员)自己把数据按照规定的格式编写,并放在约定的地方,为了不占用过多的内存,还要求数据以根精简的方式编写。boot启动时,传参给内核,告诉内核设备树文件和kernel的位置,内核启动时根据地址去找到设备树文件,再利用专用的编译器去反编译dtb文件,将dtb还原成数据结构,以供驱动的函数去调用。firmware是三星的一个固件的设备信息,因为找不到固件,所以内核启动不成功。_exynos 4412 刷机

Linux系统配置jdk_linux配置jdk-程序员宅基地

文章浏览阅读2w次,点赞24次,收藏42次。Linux系统配置jdkLinux学习教程,Linux入门教程(超详细)_linux配置jdk

随便推点

matlab(4):特殊符号的输入_matlab微米怎么输入-程序员宅基地

文章浏览阅读3.3k次,点赞5次,收藏19次。xlabel('\delta');ylabel('AUC');具体符号的对照表参照下图:_matlab微米怎么输入

C语言程序设计-文件(打开与关闭、顺序、二进制读写)-程序员宅基地

文章浏览阅读119次。顺序读写指的是按照文件中数据的顺序进行读取或写入。对于文本文件,可以使用fgets、fputs、fscanf、fprintf等函数进行顺序读写。在C语言中,对文件的操作通常涉及文件的打开、读写以及关闭。文件的打开使用fopen函数,而关闭则使用fclose函数。在C语言中,可以使用fread和fwrite函数进行二进制读写。‍ Biaoge 于2024-03-09 23:51发布 阅读量:7 ️文章类型:【 C语言程序设计 】在C语言中,用于打开文件的函数是____,用于关闭文件的函数是____。

Touchdesigner自学笔记之三_touchdesigner怎么让一个模型跟着鼠标移动-程序员宅基地

文章浏览阅读3.4k次,点赞2次,收藏13次。跟随鼠标移动的粒子以grid(SOP)为partical(SOP)的资源模板,调整后连接【Geo组合+point spirit(MAT)】,在连接【feedback组合】适当调整。影响粒子动态的节点【metaball(SOP)+force(SOP)】添加mouse in(CHOP)鼠标位置到metaball的坐标,实现鼠标影响。..._touchdesigner怎么让一个模型跟着鼠标移动

【附源码】基于java的校园停车场管理系统的设计与实现61m0e9计算机毕设SSM_基于java技术的停车场管理系统实现与设计-程序员宅基地

文章浏览阅读178次。项目运行环境配置:Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。项目技术:Springboot + mybatis + Maven +mysql5.7或8.0+html+css+js等等组成,B/S模式 + Maven管理等等。环境需要1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。_基于java技术的停车场管理系统实现与设计

Android系统播放器MediaPlayer源码分析_android多媒体播放源码分析 时序图-程序员宅基地

文章浏览阅读3.5k次。前言对于MediaPlayer播放器的源码分析内容相对来说比较多,会从Java-&amp;amp;gt;Jni-&amp;amp;gt;C/C++慢慢分析,后面会慢慢更新。另外,博客只作为自己学习记录的一种方式,对于其他的不过多的评论。MediaPlayerDemopublic class MainActivity extends AppCompatActivity implements SurfaceHolder.Cal..._android多媒体播放源码分析 时序图

java 数据结构与算法 ——快速排序法-程序员宅基地

文章浏览阅读2.4k次,点赞41次,收藏13次。java 数据结构与算法 ——快速排序法_快速排序法