銀行應(yīng)該如何設(shè)計與建設(shè)應(yīng)用運維平臺?
時間:2023-08-26 22:30:02 | 來源:網(wǎng)站運營
時間:2023-08-26 22:30:02 來源:網(wǎng)站運營
銀行應(yīng)該如何設(shè)計與建設(shè)應(yīng)用運維平臺?:本文主要介紹銀行業(yè)務(wù)的發(fā)展趨勢、應(yīng)用架構(gòu)演進以及在此背景下應(yīng)用運維面臨的挑戰(zhàn)和解決方案。文章目錄如下,是筆者過去5年作為乙方在多個銀行設(shè)計和落地應(yīng)用運維自動化的經(jīng)驗分享,共11000字,閱讀時長大約10分鐘。
一、銀行業(yè)務(wù)的發(fā)展趨勢
1.1互聯(lián)網(wǎng)金融的興起
1.2銀行業(yè)務(wù)的轉(zhuǎn)型與發(fā)展
二、銀行信息系統(tǒng)的演進
2.1分布式系統(tǒng)的大量應(yīng)用
2.2銀行信息系統(tǒng)混合式架構(gòu)
2.3銀行數(shù)據(jù)中心“雙活”或“多活的”的逐步完善
三、銀行應(yīng)用運維面臨的挑戰(zhàn)
3.1銀行應(yīng)用運維的組織與職責
3.2銀行應(yīng)用運維面臨的挑戰(zhàn)
3.3挑戰(zhàn)與機遇
四、銀行應(yīng)用運維平臺設(shè)計建議
4.1如何定義應(yīng)用?
4.2做好銀行應(yīng)用運維的建議
4.3銀行應(yīng)用運維平臺設(shè)計建議
五、銀行應(yīng)用運維平臺關(guān)鍵能力建設(shè)建議
5.1應(yīng)用配置管理
5.2應(yīng)用發(fā)布自動化
5.3應(yīng)用災(zāi)備演練
5.4銀行跑批
5.5應(yīng)用巡檢
5.6智能業(yè)務(wù)巡檢
5.7應(yīng)用健康度監(jiān)控
5.8APM
5.9應(yīng)用啟停
5.10應(yīng)用自動化運維關(guān)鍵能力一覽
六、銀行應(yīng)用運維的展望
銀行業(yè)務(wù)的發(fā)展趨勢
01 互聯(lián)網(wǎng)金融的興起隨著數(shù)字化和互聯(lián)網(wǎng)技術(shù)的發(fā)展,用戶在“
花”、“
存”、“
貸”等方面都在發(fā)生巨大轉(zhuǎn)變:
- 花:短短幾年,移動支付已經(jīng)代替了現(xiàn)金支付和刷卡支付。
- 存:大量的用戶資金不斷往互聯(lián)網(wǎng)遷移。
- 貸:用戶希望有各種貼合自己使用需求的個性化金融產(chǎn)品。
銀行過去標準化的產(chǎn)品模式已經(jīng)不適應(yīng)這個時代的需求,而以BATJ為代表的互聯(lián)網(wǎng)企業(yè),創(chuàng)造了一系列互聯(lián)網(wǎng)金融產(chǎn)品,滿足人們?nèi)粘I畹母鞣N需求,這些,對商業(yè)銀行的傳統(tǒng)業(yè)務(wù)形成了跨界滲透和直接沖擊,甚至具有一定的替代作用。因此,在支付、理財、信貸方面,銀行都面臨著互聯(lián)網(wǎng)行業(yè)不同場景的挑戰(zhàn)。
02 銀行業(yè)務(wù)的轉(zhuǎn)型與發(fā)展著名美國銀行家布萊特?金(BrettKing)在《Bank 2.0 ~ 4.0》中,給出了銀行業(yè)務(wù)發(fā)展的歷程和展望,從網(wǎng)上銀行到智能手機,到物理網(wǎng)點消除,到通過開放實現(xiàn)與其他行業(yè)服務(wù)的融合形成泛金融服務(wù),到在AI、AR(現(xiàn)實增強)、語音識別等等技術(shù)普及于大眾的背景下銀行將業(yè)務(wù)嵌入到用戶日常生活的體驗升級聚焦。
基于種種挑戰(zhàn)和對未來的展望,數(shù)字化轉(zhuǎn)型以及加速轉(zhuǎn)型成為銀行業(yè)務(wù)的重要發(fā)展策略。
政府舉措方面,2015年7月,人民銀行等十部門發(fā)布《關(guān)于促進互聯(lián)網(wǎng)金融健康發(fā)展的指導(dǎo)意見》,該指導(dǎo)意見按照“鼓勵創(chuàng)新、防范風險、趨利避害、健康發(fā)展”的總體要求,提出了一系列鼓勵創(chuàng)新、支持互聯(lián)網(wǎng)金融穩(wěn)步發(fā)展的政策措施,積極鼓勵互聯(lián)網(wǎng)金融平臺、產(chǎn)品和服務(wù)創(chuàng)新,鼓勵從業(yè)機構(gòu)相互合作,拓寬從業(yè)機構(gòu)融資渠道,推動信用基礎(chǔ)設(shè)施建設(shè)和配套服務(wù)體系建設(shè)。
2018年10月,中國銀行保險監(jiān)督管理委員會發(fā)布《中國普惠金融發(fā)展情況報告》摘編版,中國財政也加大了普惠金融發(fā)展專項資金的投放。
銀行信息系統(tǒng)的演進
01 分布式系統(tǒng)的大量應(yīng)用面對業(yè)務(wù)的轉(zhuǎn)型與發(fā)展,銀行引進分布式系統(tǒng)在所難免:
- 支持普惠金融服務(wù)和復(fù)雜交易模式,集中式系統(tǒng)的處理能力瓶頸逐漸凸顯。
- “跨界融合”、移動金融要求銀行業(yè)務(wù)創(chuàng)新和迭代的節(jié)奏要越來越快。
- 銀行要不斷提升用戶體驗,就需要利用先進的大數(shù)據(jù)技術(shù)對海量業(yè)務(wù)數(shù)據(jù)進行分析。
- 集中化架構(gòu)的成本問題越來越突出。
- 各種閉源軟硬件產(chǎn)品逐步不能滿足監(jiān)管安全可控的要求。
在互聯(lián)網(wǎng)企業(yè)的系統(tǒng)架構(gòu)模式的啟發(fā)下,很多銀行結(jié)合互聯(lián)網(wǎng)金融戰(zhàn)略需求,引進開源軟件和技術(shù),開始構(gòu)建基于x86平臺、分布式計算的分布式IT技術(shù)體系。
當然,在當前業(yè)務(wù)現(xiàn)狀下,“集中+分布式”的融合架構(gòu)仍然是大型商業(yè)銀行的最佳架構(gòu)選擇:
因此,銀行保留面向“穩(wěn)態(tài)”的、基于集中式的傳統(tǒng)核心,注重安全、穩(wěn)定,如存款一類賬戶、借記卡、傳統(tǒng)貸款、支付等業(yè)務(wù),新建面向“敏態(tài)”的、基于分布式互聯(lián)網(wǎng)核心,支撐海量客戶、高并發(fā),適合管理二三類賬戶、直銷銀行等業(yè)務(wù)。
02 銀行信息系統(tǒng)混合式架構(gòu)繼分布式的引進后,銀行也開始了對云原生技術(shù)的探索,銀行的信息系統(tǒng)不可避免的呈現(xiàn)混合式的架構(gòu):
而對于銀行IT運維來說,不同架構(gòu)的業(yè)務(wù)系統(tǒng),對運維的能力和側(cè)重點要求并不同,運維的要求、難度和壓力也在不斷的增大。
03 銀行數(shù)據(jù)中心“雙活”或“多活”的逐步完善《中國金融業(yè)信息技術(shù)“十三五”發(fā)展規(guī)劃》指出,金融機構(gòu)主動探索系統(tǒng)架構(gòu)完善升級,繼續(xù)深入研究數(shù)據(jù)中心“雙活”或“多活”模式應(yīng)用。
截至目前,大多數(shù)銀行已經(jīng)完成了“兩地三中心”的建設(shè),并且定期進行災(zāi)備演練工作,銀行系統(tǒng)的可用性得到進一步提升。
銀行應(yīng)用運維面臨的挑戰(zhàn)
01 銀行應(yīng)用運維的組織與職責銀行的IT組織很大,部分銀行還成立了單獨的金融科技公司。本文主要聚焦于銀行IT運維組織中的應(yīng)用運維,分析應(yīng)用運維如何提升自己的運維水平和方式以適應(yīng)業(yè)務(wù)轉(zhuǎn)型、信息系統(tǒng)架構(gòu)異構(gòu)化的發(fā)展要求。
應(yīng)用運維的核心職責在于確保應(yīng)用系統(tǒng)高效穩(wěn)定運行,同時響應(yīng)研發(fā)、業(yè)務(wù)人員訴求完成版本變更或上線的業(yè)務(wù)價值交付,并提供相關(guān)的數(shù)據(jù)和服務(wù)給到業(yè)務(wù)、運營和測試等外部人員。應(yīng)用運維團隊的日常職責及與其他團隊的工作交互簡要如下:
02 銀行應(yīng)用運維的面臨的挑戰(zhàn)由上可見,應(yīng)用運維團隊肩負著業(yè)務(wù)系統(tǒng)正常運轉(zhuǎn)的重大責任,也同時負擔著一系列繁雜瑣碎的運維工作。隨著銀行業(yè)務(wù)的飛速發(fā)展,應(yīng)用運維團隊面臨的挑戰(zhàn)越來越大:
- 運維難度增加:技術(shù)棧復(fù)雜,運維技能要求高。從單體、SOA到分布式到云原生架構(gòu),從閉源到開源,組成應(yīng)用系統(tǒng)的技術(shù)組件成倍增長,應(yīng)用運維需要持續(xù)增加強化自己的技術(shù)能力才能滿足運維的基本要求。
- 運維工作增多:線下業(yè)務(wù)不斷線上化,應(yīng)用數(shù)量也在成倍增長。
- 運維效率要求提升:業(yè)務(wù)發(fā)展也帶來了大量的更新發(fā)布需求,而發(fā)布時間窗口并沒有延長。部分新業(yè)務(wù)也對運維提出了持續(xù)交付的實時性要求。
- 成本控制越來越嚴格:不斷增加的應(yīng)用系統(tǒng)占用了大量的IT資源,運維需要通過先進有效的監(jiān)控和分析手段在性能和成本之間取得一個平衡,并且主動持續(xù)優(yōu)化應(yīng)用系統(tǒng)性能。
- 運維質(zhì)量及安全級別要求高:在運維工作復(fù)雜度和負擔不斷增加的情況下,運維如何保持既有運維質(zhì)量、保障和提升系統(tǒng)可用率,成為應(yīng)用運維的難題。
運維工作如此繁重,運維人員在橫向擴展自己運維技能的同時,還有時間往運維開發(fā)、大數(shù)據(jù)或AI等縱向技術(shù)領(lǐng)域轉(zhuǎn)型嗎?
另外,應(yīng)用運維掌握了應(yīng)用系統(tǒng)的配置、日志、監(jiān)控等數(shù)據(jù),能否效仿一些互聯(lián)網(wǎng)企業(yè),通過有效的技術(shù)手段將這些數(shù)據(jù)進行統(tǒng)一采集分析,為業(yè)務(wù)/運營帶來增值服務(wù),做到主動運營,從而提升應(yīng)用運維組織的價值?
03 挑戰(zhàn)與機遇銀行應(yīng)用運維的轉(zhuǎn)型和運維能力提升已經(jīng)迫在眉睫,但挑戰(zhàn)同時也是機遇,業(yè)務(wù)發(fā)展和應(yīng)用架構(gòu)演進賦予應(yīng)用運維的責任越大,應(yīng)用運維所能創(chuàng)造的價值也就越高,也就越發(fā)得到重視。
銀行應(yīng)用運維平臺設(shè)計建議
01 如何定義應(yīng)用?應(yīng)用,一般可以從兩個維度進行解讀,一個是狹義的應(yīng)用,指的是應(yīng)用程序,也就是由開發(fā)人員提供的二進制文件的運行時狀態(tài);另一個是廣義的應(yīng)用,指的是應(yīng)用系統(tǒng),也就是由一組應(yīng)用程序和系統(tǒng)資源的有機組合。這里的系統(tǒng)資源泛指支撐應(yīng)用運行的數(shù)據(jù)庫、os、中間件、負載均衡甚至域名、存儲等等。
應(yīng)用運維,指的是對應(yīng)用系統(tǒng)的運維,既包含對應(yīng)用程序的發(fā)布、變更等運維工作,也包含對應(yīng)用系統(tǒng)整體的健康巡檢、監(jiān)控等運維工作。
02 做好銀行應(yīng)用運維的建議- 效率提升:建設(shè)應(yīng)用運維自動化系統(tǒng),將所有能自動處理的工作全部自動化掉,如發(fā)布、巡檢、變更、啟停、數(shù)據(jù)查詢與提取、銀行跑批統(tǒng)一調(diào)度等等。徹底消滅重復(fù)性人工操作,釋放運維人員。
- 質(zhì)量提升:面向穩(wěn)態(tài)和敏態(tài)業(yè)務(wù),以應(yīng)用為中心建設(shè)CMDB,從多個維度完成對應(yīng)用系統(tǒng)的監(jiān)控,及時發(fā)現(xiàn)應(yīng)用系統(tǒng)的問題和隱患,并基于自動化手段快速處理問題,提升應(yīng)用系統(tǒng)可用性。另外,自動化推廣的同時也會帶來操作規(guī)范的梳理和標準化,如發(fā)布流程流程標準化、災(zāi)備切換流程標準化,從而減少人工操作失誤。
- 成本控制:建設(shè)容量分析與管理系統(tǒng),為系統(tǒng)性能優(yōu)化提供指導(dǎo),提升資源使用率,控制資源成本。
- 組織轉(zhuǎn)型:以上目標的實現(xiàn),不太可能通過一次性外采一個功能齊全、場景完美契合的應(yīng)用運維平臺就能解決,是需要企業(yè)運維人員也持續(xù)投入到平臺上的新場景研發(fā)來滿足個性化或增長性的運維需求。在組織轉(zhuǎn)型這一塊,可以參考Google SRE組織架構(gòu),讓運維團隊中50%的人員從事著運維工具的開發(fā)。
- 智能化:基于智能化技術(shù),實現(xiàn)容量預(yù)測和智能擴縮容從而應(yīng)對在互聯(lián)網(wǎng)化和跨界融合背景下流量峰值的挑戰(zhàn),實現(xiàn)對故障定位、故障預(yù)測以快速解決或避免業(yè)務(wù)異?;蚬收?,提升用戶體驗。
- 從應(yīng)用上線開始,自動化技術(shù)應(yīng)覆蓋應(yīng)用運維整個生命周期。
綜上,要做好銀行應(yīng)用運維工作,需要建設(shè)一個支持雙態(tài)架構(gòu)的、可擴展的、先進的、能促進組織轉(zhuǎn)型而自增長的應(yīng)用自動化運維平臺。
03 銀行應(yīng)用運維平臺設(shè)計建議基于以上分析,應(yīng)用運維平臺功能架構(gòu)推薦如下:
服務(wù)層能力 服務(wù)層能力——效能:- CMDB:以應(yīng)用為中心建設(shè)CMDB,應(yīng)用拓撲遵照服務(wù)樹拓撲進行設(shè)計,并關(guān)聯(lián)應(yīng)用系統(tǒng)相關(guān)的各種系統(tǒng)資源,使CMDB能夠服務(wù)于應(yīng)用運維各種消費場景。
- 應(yīng)用配置管理:基于CMDB,提供制品庫管理、配置文件管理、進程管理、環(huán)境管理等功能。
- 應(yīng)用發(fā)布:與應(yīng)用配置管理集成,對應(yīng)用模塊進行包、配置文件、sql文件的快速發(fā)布或回滾,支持滾動發(fā)布、藍綠發(fā)布、灰度發(fā)布等方式。同時支持在一個發(fā)布時間窗口下的多應(yīng)用發(fā)布任務(wù)的復(fù)雜編排。
- 資源交付:與虛擬化平臺或云平臺集成,根據(jù)應(yīng)用資源配置要求自動完成各種組件資源的自動交付和軟件配置。
- 一鍵擴容:基于資源交付和應(yīng)用發(fā)布提供的能力,還可以做到對應(yīng)用的一鍵擴容。
- 應(yīng)用啟停:管理應(yīng)用相關(guān)的所有進程,可在控制臺上進行快速進程啟停,也提供自定義的編排能力以完成對一個復(fù)雜應(yīng)用的一鍵啟停。另外,也對進程異常進行監(jiān)控告警。
- 銀行跑批:提供一個功能強大的、可擴展的工作流調(diào)度引擎,結(jié)合底層成熟的分布式作業(yè)執(zhí)行架構(gòu),管理銀行的大量跑批作業(yè),提供對作業(yè)、作業(yè)流、調(diào)度任務(wù)的編排、執(zhí)行、控制與監(jiān)控等管理能力。
服務(wù)層能力——穩(wěn)定性&可用性:- 應(yīng)用巡檢:應(yīng)用系統(tǒng)是由一組應(yīng)用程序和系統(tǒng)資源組成的,這些組成部件的健康性會影響著整個應(yīng)用系統(tǒng)的健康性?;贑MDB中維護的完整應(yīng)用系統(tǒng)信息,結(jié)合原子化的、可擴展的巡檢框架,我們可以以應(yīng)用維度對整個應(yīng)用系統(tǒng)進行健康性巡檢,從而發(fā)現(xiàn)應(yīng)用運行的隱患或問題。
- 應(yīng)用健康度監(jiān)控:應(yīng)用健康度監(jiān)控提供了一個框架,對接企業(yè)的監(jiān)控系統(tǒng)或告警系統(tǒng),從應(yīng)用維度對組成應(yīng)用系統(tǒng)的應(yīng)用程序和系統(tǒng)資源的監(jiān)控和告警信息進行實時匯總,并以服務(wù)樹拓撲或應(yīng)用邏輯拓撲的形式展現(xiàn)出來,以便于應(yīng)用運維人員進行快速故障定位和應(yīng)用異常發(fā)現(xiàn)。
- 應(yīng)用撥測:可建立撥測任務(wù)對應(yīng)用的網(wǎng)站、接口進行撥測監(jiān)控。
- 智能業(yè)務(wù)巡檢:模擬用戶對應(yīng)用功能的完整使用,從用戶端角度確認應(yīng)用功能的順暢使用。由于傳統(tǒng)的運維通道能力(文件傳輸、命令執(zhí)行、數(shù)據(jù)采集、API調(diào)用、協(xié)議驅(qū)動)未必能支持一些C端操作自動化,在這里我們應(yīng)用了rpa技術(shù)(集成selinium腳本、Windows窗口句柄識別、OCR)來適配用戶的各種ui操作場景。
- 日志檢索:對應(yīng)用系統(tǒng)的各種類型日志進行統(tǒng)一采集、清洗、存儲、告警、分析和展示。
- 災(zāi)備演練:提供靈活的災(zāi)備切換和恢復(fù)流程編排框架和可擴展的原子化能力,支持多應(yīng)用多步驟的一鍵切換和大屏跟蹤展示,并且對災(zāi)備切換的預(yù)案進行管理,以自動化和規(guī)范化保障銀行定期災(zāi)備切換活動的成功進行。
- APM:基于字節(jié)碼注入技術(shù)自動發(fā)現(xiàn)應(yīng)用拓撲關(guān)系、應(yīng)用代碼級運行性能、接口性能及調(diào)用鏈分析,基于js注入獲取和分析每個用戶對應(yīng)用業(yè)務(wù)功能的使用體驗。從而對應(yīng)用進行更深層次的監(jiān)控和更有效的故障定位。
服務(wù)層能力——效能:- 容量管理:對應(yīng)用的資源指標、服務(wù)指標、業(yè)務(wù)指標進行統(tǒng)一采集存儲,并基于多關(guān)聯(lián)算法分析業(yè)務(wù)波動或吞吐量變化時對系統(tǒng)資源的影響,從而評估應(yīng)用的容量狀況,為性能優(yōu)化、成本控制提供切實有效的指導(dǎo)。
服務(wù)層能力——效能:- 故障自愈:基于自動化編排引擎,對接告警系統(tǒng),實現(xiàn)常用的故障自動化處理,包括日志清理、服務(wù)重啟、參數(shù)調(diào)整等操作編排。
- 故障定位:基于應(yīng)用的服務(wù)調(diào)用信息、資源關(guān)聯(lián)信息,對應(yīng)用系統(tǒng)各個時間段的告警事件進行分析,從而提供故障定位能力。
服務(wù)層能力——流程/工具- 運維流程管理:一款面向IT人員的運維流程管理軟件,提供IT運維的請求管理、事件管理、發(fā)布和變更管理、日常運維管理等核心模塊。使得IT運維工作更加規(guī)范和敏捷,從而提升運維的協(xié)作效率和工作質(zhì)量。
- 報表可視化:報表可視化是面向運維人員的輕量的web報表制作工具,核心功能有儀表盤和報表兩大模塊,實現(xiàn)企業(yè)IT運維各項數(shù)據(jù)的實時呈現(xiàn)和分析。例如,基于報表可視化我們可以靈活構(gòu)建銀行應(yīng)用運維的監(jiān)控儀表盤,嵌入到應(yīng)用監(jiān)控、APM等運維工具中。
- 大屏可視化:大屏可視化,主要應(yīng)用于大屏幕投放。提供大屏可視化設(shè)計器,便于無編碼的方式快速拖拽、配置來形成前端大屏。例如,基于大屏可視化及應(yīng)用健康度監(jiān)控,可以構(gòu)建應(yīng)用墻大屏,實時展示所有應(yīng)用運行狀態(tài)。
平臺層能力- 平臺層提供服務(wù)層所需的公共模塊能力,例如CMDB、Agent、作業(yè)執(zhí)行等;應(yīng)用自動化工具鏈,提供滿足企業(yè)應(yīng)用自動化運維生命周期的工具鏈,并基于平臺整體能力實現(xiàn)融合。
- iPaaS層: API GateWay(統(tǒng)一接入模塊),將配置管理(CMDB)平臺、作業(yè)平臺、數(shù)據(jù)平臺、挖掘平臺等原子平臺統(tǒng)一接入、集成、驅(qū)動和調(diào)度,供上層運維場景APP驅(qū)動和調(diào)用。
- aPaaS開發(fā)者中心(提供前后端開發(fā)框架):開發(fā)者中心提供完整的前后端開發(fā)框架,當企業(yè)在未來出現(xiàn)新的運維需求的時候,企業(yè)可以快速利用開發(fā)者中心完成相應(yīng)的運維系統(tǒng)開發(fā),支持一鍵部署和持續(xù)部署。
- 管控接入:提供分布式、高可用、可擴展的通道能力:文件傳輸、命令執(zhí)行、數(shù)據(jù)采集、通用協(xié)議驅(qū)動、API調(diào)用、RPA等。
銀行應(yīng)用運維平臺關(guān)鍵能力建設(shè)建議
以下對嘉為藍鯨應(yīng)用運維平臺上的部分關(guān)鍵產(chǎn)品設(shè)計理念與功能進行一一介紹:
01 應(yīng)用配置管理面向應(yīng)用運維的、以CMDB為基礎(chǔ)的應(yīng)用配置管理是應(yīng)用運維的基石和前提,它的設(shè)計和建設(shè)決定了能否同時支持多種架構(gòu)的應(yīng)用的配置管理及自動化運維。簡單來講,應(yīng)用配置管理需要包含以下幾個重要功能或重要原則:
以應(yīng)用為中心的CMDBCMDB的建設(shè)需要著眼于應(yīng)用,而不是以資源對象、數(shù)據(jù)中心來進行劃分。比如CMDB中的第一層級,應(yīng)該是OA系統(tǒng)、電子商城、ERP系統(tǒng)等應(yīng)用,而不是Windows服務(wù)器、數(shù)據(jù)庫主機或者杭州數(shù)據(jù)中心、杭州數(shù)據(jù)中心。
應(yīng)用拓撲應(yīng)該以服務(wù)樹拓撲(或稱為業(yè)務(wù)層次拓撲)服務(wù)樹拓撲主要是指從縱向的角度進行模塊化劃分,并把相同功能的模塊劃分到一個子系統(tǒng)中,服務(wù)樹拓撲一般不要超過3層,最末端對應(yīng)具體的應(yīng)用模塊,模塊之下再是主機:
例如:
服務(wù)樹拓撲中關(guān)于環(huán)境和集群的插入- 環(huán)境概念:指生產(chǎn)環(huán)境、測試環(huán)境、災(zāi)備環(huán)境等。
- 集群概念:適用于分布式系統(tǒng),一般以地域劃分,如浙江集群、杭州集群。浙江集群提供給華南用戶優(yōu)先訪問,并且在杭州集群出現(xiàn)故障時可以在服務(wù)樹拓撲中按需插入環(huán)境和集群節(jié)點形成新的服務(wù)樹拓撲。
例如:
以服務(wù)樹拓撲,做好IT資源的關(guān)聯(lián)服務(wù)樹末端為應(yīng)用模塊或資源組件,是作為與實際IT資源實例發(fā)生關(guān)聯(lián)的節(jié)點:
CMDB中可自定義IT資源對象模型及添加實例提供程序包管理功能應(yīng)用配置管理需要面向應(yīng)用運維,首當其沖就是應(yīng)用發(fā)布。因此對于運維來說,需要把用于發(fā)布的程序包的所有版本及其與應(yīng)用模塊、部署主機的關(guān)系管理起來:
實際功能效果:程序包統(tǒng)一管理
多版本文件管理、上傳與自動分揀等功能
應(yīng)用模塊關(guān)聯(lián):
提供配置文件管理功能配置文件統(tǒng)一管理、變更和發(fā)布也是應(yīng)用運維的重點工作之一。配置文件也需要與應(yīng)用模塊進行關(guān)聯(lián):
配置文件管理:
配置文件的版本管理、在線編輯、基于可自定義mako語法的變量管理等功能:
配置文件與應(yīng)用模塊的關(guān)聯(lián):
進程管理針對應(yīng)用模塊下的進程進行管理。進程管理在進行設(shè)計時,需要考慮到一些傳統(tǒng)的架構(gòu),一個模塊下的不同主機可能運行著不同的進程(或是進程不同,或是端口不同,或是啟動命令不同),但大家使用的程序包是一樣的。
進程管理主要用于一些較舊的單模塊多進程的傳統(tǒng)應(yīng)用的發(fā)布場景、應(yīng)用啟停場景和監(jiān)控場景。
其他基于銀行分布式和集中式架構(gòu)并存的考慮,服務(wù)樹拓撲最末端可以是應(yīng)用模塊,也可以是資源組件模塊,如數(shù)據(jù)庫、消息隊列等。
以上的各種資源對象模型、拓撲節(jié)點模型、包/配置文件/進程模型等均可自定義參數(shù)模型,以便于適應(yīng)不同企業(yè)的應(yīng)用配置管理需求。
02 應(yīng)用發(fā)布自動化應(yīng)用發(fā)布需要基于CMDB和應(yīng)用配置管理之上進行構(gòu)建,將應(yīng)用的各種對象資源及發(fā)布對象管理起來后,自動化發(fā)布就成為一個簡單的事情了,我們可以選擇任何一個模塊按照一定的策略(并行、滾動、分批等)進行快速的發(fā)布:
關(guān)于發(fā)布的編排,分為技術(shù)維度的編排和業(yè)務(wù)維度的編排。
技術(shù)維度,就是具體的一臺主機需要執(zhí)行的具體步驟編排:
在上圖中,我們可以編排一個通用的發(fā)布流程,將參數(shù)剝離出來,在應(yīng)用配置管理中統(tǒng)一管理,這樣,不同的應(yīng)用模塊就可以使用相同的執(zhí)行流程進行發(fā)布,僅需從應(yīng)用配置管理中傳入應(yīng)用相關(guān)的參數(shù)即可。
業(yè)務(wù)維度,是指應(yīng)用模塊之間的發(fā)布順序編排:
銀行在有限的發(fā)布窗口中進行應(yīng)用發(fā)布時,有時會涉及到對大型應(yīng)用進行批量發(fā)布,此時應(yīng)用模塊之間的發(fā)布順序是需要嚴格定義的,包含每批應(yīng)用發(fā)布的時間設(shè)定等,此時就需要提供應(yīng)用間、應(yīng)用內(nèi)主機間的串并行發(fā)布順序編排能力。
在發(fā)布過程中,我們需要實時掌握發(fā)布任務(wù)的執(zhí)行詳情,并且可以對發(fā)布任務(wù)進行干預(yù),如暫停、恢復(fù)、忽略、繼續(xù)、停止等。
關(guān)于發(fā)布,可以在此基礎(chǔ)上繼續(xù)擴展其他的能力,如sql發(fā)布、配置文件發(fā)布、與工單對接、快速回滾、發(fā)布審計、權(quán)限控制、配置回寫等等。
03 應(yīng)用災(zāi)備演練在過往10年,大多數(shù)銀行致力于“
兩地三中心”的災(zāi)備建設(shè),到目前,基本都已經(jīng)實現(xiàn)了核心系統(tǒng)的災(zāi)備建設(shè)。災(zāi)備建設(shè)的根本目的在于出現(xiàn)不可預(yù)知災(zāi)難時的應(yīng)急切換,以快速恢復(fù)業(yè)務(wù)。
存儲復(fù)制技術(shù)是銀行災(zāi)備建設(shè)中常用的架構(gòu),以下是基于vplex和VMware HA集群的一種災(zāi)備架構(gòu)設(shè)計(所有的虛擬機及數(shù)據(jù)文件均通過存儲復(fù)制技術(shù)復(fù)制到災(zāi)備機房):
當然,有些銀行還會配合其他的技術(shù)來支撐災(zāi)備架構(gòu),如基于Oracle 的Dataguard/RAC技術(shù)、基于應(yīng)用層面的高可用技術(shù)等等。
災(zāi)備切換一般涉及到多套應(yīng)用系統(tǒng)、多個復(fù)雜步驟、多個業(yè)務(wù)部門,并且時間緊、質(zhì)量要求高,銀行能否順利完成災(zāi)備切換,不僅取決于災(zāi)備系統(tǒng)的建設(shè),也還取決于災(zāi)備演練是否充分,災(zāi)備切換步驟是否準確到位。
因此,一個好的災(zāi)備演練平臺成為銀行災(zāi)備系統(tǒng)建設(shè)完畢之后的迫切需求。一般來講,災(zāi)備演練平臺需要具備以下功能特性:
- 靈活、方便的編排能力,適用于各種災(zāi)備架構(gòu)。
- 強大的通道能力,能夠驅(qū)動的各種IT資源對象完成相關(guān)操作。
- 具有較好的可視化能力,能夠清晰、實時的展示各業(yè)務(wù)的災(zāi)備切換過程和狀態(tài)。
- 良好的擴展性,支持與監(jiān)控、應(yīng)用配置管理、測試等外部運維系統(tǒng)對接。
- 良好的性能,能支持整個數(shù)據(jù)中心級別災(zāi)備切換時的并發(fā)作業(yè)。
災(zāi)備演練平臺架構(gòu)設(shè)計如下:
案例分享:
04 銀行跑批什么是銀行跑批銀行跑批就是產(chǎn)生總賬,進行總分核對,再者就是進行大批量的非實時的交易。
銀行跑批的時間大部分批處理在晚上完成,但白天也有批量。
銀行跑批的核心功能進行會計核算
銀行跑批的存在形式一個個分布在不同服務(wù)器上的有各種依賴關(guān)系的作業(yè)。
跑批過程詳細說明銀行業(yè)務(wù)結(jié)算不是所有的銀行數(shù)據(jù)都是實時操作的,所有的帳都是即時入帳的,即使實時操作,后臺會計部門也需要報表數(shù)據(jù),進行對帳清算。因此跑批就是為此產(chǎn)生。跑批其實就是產(chǎn)生總帳,進行總分核對,再次就是進行大批量交易,如:結(jié)息,計提,代收付等(這一步可以在各分布平臺做)。
再次就是生成報表,導(dǎo)出流水數(shù)據(jù)等。批量是相對聯(lián)機來說的,并不一定是在晚上,白天也有批量,主要是完成業(yè)務(wù)處理的。批量的核心功能是進行會計核算,如總分核對、試算平衡等,這樣保證全行的帳務(wù)沒有偏差。
另外,為了提高聯(lián)機交易的反應(yīng)時間,一些對帳清算等不需要實時入賬的功能也由批量來完成;類似的,還有一些為了減少柜員工作量和減少高峰時期資源爭奪的交易,如待收代付等,也歸入批量完成的功能。一些特殊業(yè)務(wù),如記息記提等。還有一塊批量就是為了統(tǒng)計和管理的需要而出的一些報表。
銀行跑批系統(tǒng),一般也稱為ETL調(diào)度系統(tǒng)。
大部分銀行已經(jīng)有了跑批作業(yè)管理系統(tǒng),那么為什么還要繼續(xù)建設(shè)?交易的不斷增長引發(fā)巨大的數(shù)據(jù)吞吐,跑批的作業(yè)量不斷增加,核心跑批可用的時間窗口不斷受到壓縮,跑批作業(yè)的流程日益復(fù)雜,作業(yè)與作業(yè)、作業(yè)流與作業(yè)、作業(yè)流與作業(yè)流之間存在復(fù)雜的依賴關(guān)系。
業(yè)務(wù)種類不斷創(chuàng)新,跑批作業(yè)之間的關(guān)系也處于變化之中,涉及的系統(tǒng)越來越多,急切需要集中、靈活、可擴展的調(diào)度系統(tǒng)。
技術(shù)架構(gòu)日益復(fù)雜,后臺系統(tǒng)有AIX、Linux、Windows、中標等各種系統(tǒng)平臺,主備、分布式等多樣化的集群也增加了銀行跑批作業(yè)管理的復(fù)雜性。
過去主要由國外產(chǎn)品提供跑批作業(yè)管理,國外產(chǎn)品逐步不滿足安全可控、國產(chǎn)化以及靈活擴展等要求,因此銀行需要建設(shè)更為先進的跑批作業(yè)管理系統(tǒng)。
跑批作業(yè)管理系統(tǒng)架構(gòu)設(shè)計如下:在作業(yè)編排與作業(yè)控制方面,跑批需要滿足以下核心要求:
在作業(yè)執(zhí)行架構(gòu)上,跑批需要滿足高可用分布式的要求,以支撐海量并發(fā)的跑批作業(yè):
主要產(chǎn)品功能 作業(yè)流編排: 作業(yè)日歷調(diào)度: 作業(yè)控制: 作業(yè)跟蹤監(jiān)控:05 應(yīng)用巡檢應(yīng)用系統(tǒng)是由一組應(yīng)用程序和系統(tǒng)資源組成。當用戶訪問應(yīng)用系統(tǒng)發(fā)生問題時,可能是應(yīng)用程序運行的問題導(dǎo)致,也可能是相關(guān)的資源對象(如數(shù)據(jù)庫)出現(xiàn)問題導(dǎo)致。當一個應(yīng)用系統(tǒng)越來越龐大和復(fù)雜時,確保系統(tǒng)中各應(yīng)用程序和系統(tǒng)資源對象處于健康狀態(tài)是應(yīng)用系統(tǒng)正常運行的重要前提。
對一個應(yīng)用系統(tǒng)進行全方位巡檢,類似于醫(yī)院中的專家會診場景。應(yīng)用系統(tǒng)的每個技術(shù)棧(資源對象類別)都會需要相應(yīng)的巡檢腳本/方法支持,對應(yīng)醫(yī)院的專科專家。
當對應(yīng)用系統(tǒng)的所有資源類別都有了相應(yīng)的巡檢方法,我們也從CMDB中獲取到一個應(yīng)用的所有資源實例,那么我們就可以以應(yīng)用維度對應(yīng)用系統(tǒng)進行快速整體巡檢和健康度評估。巡檢工具架構(gòu)設(shè)計如下:
- 應(yīng)用管理:主要對接CMDB獲取應(yīng)用系統(tǒng)的各種資源實例。
- 指標庫:一個可擴展的框架,可針對每種資源對象定義相關(guān)的巡檢方法,包括基于腳本的巡檢,也可調(diào)用第三方運維系統(tǒng)進行健康數(shù)據(jù)獲?。ㄍㄓ镁帉憄ython適配器)。
- 任務(wù)管理:定義巡檢哪些應(yīng)用,巡檢時間等
- 報告管理:以應(yīng)用角度展示巡檢結(jié)果。
巡檢示例報告如下:
巡檢錯誤概覽如下:
06 智能業(yè)務(wù)巡檢應(yīng)用巡檢是從應(yīng)用內(nèi)部進行巡檢,但還無法直接反饋用戶的真實使用情況。針對重要的業(yè)務(wù)系統(tǒng),從特定辦公地點模擬用戶發(fā)起對該業(yè)務(wù)系統(tǒng)的訪問并且驗證該系統(tǒng)業(yè)務(wù)功能,我們稱之為業(yè)務(wù)巡檢。
為滿足更多的用戶模擬場景,可以采用業(yè)界流行的rpa技術(shù)。只要是用戶在電腦終端上的所有鍵鼠操作,rpa均能實現(xiàn)將操作流程自動化。
基于rpa的智能業(yè)務(wù)巡檢架構(gòu)設(shè)計如下:
相關(guān)概念如下:
- D-bot:用于執(zhí)行RPA流程的Agent
- D-Console:用于RPA流程編排和管理
- 智能業(yè)務(wù)巡檢APP:用于統(tǒng)一的任務(wù)管理和報告展示、告警通知等
關(guān)于智能業(yè)務(wù)巡檢的主要業(yè)務(wù)流程如下:
在D-Console上進行RPA流程編排:
流程編排實際效果:
通過智能業(yè)務(wù)巡檢,我們可以在一次任務(wù)中從多個撥測點對多個業(yè)務(wù)的多個功能進行用戶模擬訪問測試,并分析訪問的成功率和延遲,生成報告詳情發(fā)送給到相關(guān)運維人員。
07 應(yīng)用健康度監(jiān)控隨著監(jiān)控技術(shù)的不斷應(yīng)用,企業(yè)開始逐步建立立體化監(jiān)控平臺,所謂立體化監(jiān)控平臺,是指從多個維度對不同層級(一般從上到下劃分為用戶層,業(yè)務(wù)層,應(yīng)用層,組件層,主機、硬件與網(wǎng)絡(luò)層)的監(jiān)控對象進行指標采集、統(tǒng)一存儲和監(jiān)控告警。立體化監(jiān)控覆蓋的對象范圍如下:
應(yīng)用健康度監(jiān)控,出發(fā)點和技術(shù)實現(xiàn)方式與應(yīng)用巡檢類似,基于立體化監(jiān)控平臺之上構(gòu)建的一個對應(yīng)用系統(tǒng)的各個資源對象實例的健康狀態(tài)進行監(jiān)控的上層應(yīng)用,應(yīng)用健康度監(jiān)控的用戶故事,主要有以下幾個:
- 作為應(yīng)用運維人員,我想從應(yīng)用系統(tǒng)維度對應(yīng)用系統(tǒng)進行全方位的監(jiān)控,并以拓撲的形式展現(xiàn)出來,以便于在接收到用戶報障之后,能夠快速的定位到應(yīng)用系統(tǒng)具體哪個組件存在異常,為解決報障提供指導(dǎo)。
- 作為應(yīng)用運維人員,我想把關(guān)鍵應(yīng)用的關(guān)鍵健康度指標都監(jiān)控、匯合展示出來,以便于我及時發(fā)現(xiàn)應(yīng)用運行過程中的異常。
- 作為應(yīng)用運維領(lǐng)導(dǎo),我想隨時可獲取所有應(yīng)用的整體健康狀態(tài),以便于感知我們當前應(yīng)用運維的水平和運維目標達成情況
應(yīng)用健康度監(jiān)控的功能架構(gòu)設(shè)計如下:
主要功能介紹:- 應(yīng)用運行拓撲展示(服務(wù)樹拓撲、邏輯拓撲)。拓撲自動生成、應(yīng)用資源對象實例會自動填充到各拓撲節(jié)點上。
- 可自定義監(jiān)控儀表盤,通過拖拽各種圖表控件生成儀表盤,控件可接入外部數(shù)據(jù)源。
- 告警查詢,以應(yīng)用維度展示告警動態(tài)。支持多種查詢。
- 應(yīng)用墻,根據(jù)資源實例信息生成應(yīng)用墻,如下圖:
08 APMAPM是應(yīng)用運維體系中必不可少的能力。嘉為藍鯨APM解決方案共有五大能力:
- Server監(jiān)控:以字節(jié)碼注入為核心技術(shù),通過應(yīng)用服務(wù)器上的Agent實現(xiàn)應(yīng)用拓撲自動生成、實現(xiàn)服務(wù)間的調(diào)用鏈監(jiān)控、實現(xiàn)服務(wù)內(nèi)方法級的調(diào)用鏈監(jiān)控。
- 瀏覽器監(jiān)控:用戶通過瀏覽器訪問應(yīng)用時,會自動下發(fā)js探針到真實用戶瀏覽器上,從而獲取用戶對應(yīng)用的各種訪問行為和效率,形成對真實瀏覽器用戶的使用體驗監(jiān)控。
- Mobile SDK監(jiān)控:在APP開發(fā)中嵌入SDK,手機用戶使用APP時,SDK獲取用戶對應(yīng)用的各種訪問行為和效率,形成對真實手機用戶的使用體驗監(jiān)控。
- 互聯(lián)網(wǎng)瀏覽器用戶模擬訪問:主要面向互聯(lián)網(wǎng)應(yīng)用,利用全球十萬級以上瀏覽器撥測點實現(xiàn)。
- 互聯(lián)網(wǎng)手機用戶模擬訪問:主要面向互聯(lián)網(wǎng)應(yīng)用,利用全球十萬級以上手機撥測點實現(xiàn)。
APM系統(tǒng)架構(gòu)設(shè)計如下:
09 應(yīng)用啟停應(yīng)用啟停是一個小工具,主要提供以下功能:
- 進程定義
- 進程管理。快速啟停
- 進程監(jiān)控。異常停止時發(fā)出告警
- 應(yīng)用一鍵啟停。對應(yīng)用各模塊、各主機進程的啟停提供編排能力,實現(xiàn)應(yīng)用的一鍵啟停
10 應(yīng)用自動化運維關(guān)鍵能力一覽11 其他本文先聚焦于銀行應(yīng)用運維的關(guān)鍵場景和相應(yīng)產(chǎn)品能力。文中提及的嘉為藍鯨資源交付、藍鯨立體化監(jiān)控平臺、告警中心、日志檢索、報表可視化、大屏可視化、容量管理、故障自愈等產(chǎn)品后續(xù)再進行詳細介紹。
銀行應(yīng)用運維的展望
銀行業(yè)務(wù)正處于飛速發(fā)展和變革的階段,支持業(yè)務(wù)系統(tǒng)的信息技術(shù)也在發(fā)生翻天覆地的變化,傳統(tǒng)運維方式已完全無法應(yīng)付業(yè)務(wù)和技術(shù)變革帶來的挑戰(zhàn),銀行應(yīng)用運維只有與時俱進,不斷吸收國內(nèi)外頂級互聯(lián)網(wǎng)企業(yè)的先進運維理念與技術(shù),實現(xiàn)組織轉(zhuǎn)型,運維不再局限于運維,運維要投入到構(gòu)建動態(tài)發(fā)展的、契合銀行業(yè)務(wù)發(fā)展需求應(yīng)用運維平臺中來,向自動化、數(shù)據(jù)化、智能化穩(wěn)步邁進,才能最終實現(xiàn)應(yīng)用運維組織效能與價值。
出品:嘉為科技
其他優(yōu)質(zhì)文章
關(guān)鍵詞:平臺,建設(shè),設(shè)計,銀行