IT架構轉型:商業(yè)銀行智能化生產(chǎn)運維探索與實(shí)踐
前我國主要商業(yè)銀行均在推進(jìn) IT 架構轉型,在大規模的分布式轉型過(guò)程中,相較于原集中式運行環(huán)境內存內的構件調用,分布式架構下跨節點(diǎn)的 RPC 調用涉及節點(diǎn)數據多,運維人員更為分散,如何在錯綜復雜的分布式環(huán)境中快速的發(fā)現、定位、解決金融服務(wù)運行問(wèn)題,成為分布式運維中的痛點(diǎn)與難點(diǎn)。
為此,一個(gè)功能完備、分析迅速的智能運維平臺,成為商業(yè)銀行支撐銀行業(yè)務(wù)在開(kāi)放平臺的快速迭代和升級創(chuàng )新的現實(shí)需求。
以下為分布式架構下智能化生產(chǎn)運維的信息采集、智能分析、可視觸達等方面的探索與實(shí)踐,希望能為商業(yè)銀行提供部分思路。
一、一體化采集分析,高時(shí)效發(fā)現潛在問(wèn)題 建立完善的生產(chǎn)智能維護平臺首先是要能安全高效地采集到生產(chǎn)運行信息,而銀行金融產(chǎn)品均主要采取自研為主,技術(shù)棧及風(fēng)格難以統一,若均由各產(chǎn)品自行采集生產(chǎn)運行信息,則過(guò)于復雜且低效,因此獨立的采集公用構件成為智能運維平臺建設的必選項。 同時(shí),在實(shí)踐中可通過(guò)消息隊列等中間件能力,保證在采集的同時(shí)準實(shí)時(shí)的進(jìn)行聚合分析,避免問(wèn)題發(fā)現滯后而導致錯過(guò)最佳處理時(shí)效的情況。 1)輕量化異常采集 采用輕量級的SDK,記錄調用鏈路、異常、環(huán)境等信息,并準實(shí)時(shí)推送轉發(fā),于智能運維平臺統一持久化并進(jìn)行分類(lèi)聚合。 采集端經(jīng)由動(dòng)態(tài)代理技術(shù)實(shí)現了對原業(yè)務(wù)代碼的零侵入,可配置化的接入方式則讓接入人員簡(jiǎn)單配置即可直接接入,無(wú)需額外的學(xué)習成本。 2)智能化分類(lèi)聚合 智能運維平臺針對不同的異常采用不同的處理策略:部分異常來(lái)自設計漏洞或編碼問(wèn)題,借由展示堆棧信息可快速的定位問(wèn)題根因;部分異常來(lái)自網(wǎng)絡(luò )抖動(dòng),存儲介質(zhì)老化等環(huán)境相關(guān)問(wèn)題,需要在統計層面上關(guān)注。 借由對異常信息進(jìn)行分類(lèi),準實(shí)時(shí)的聚合具體錯誤每天、小時(shí)、分鐘的出現頻次,可快速地獲得各類(lèi)錯誤在各個(gè)時(shí)間節點(diǎn)的分布情況。 3)準實(shí)時(shí)數據分析 采用孤立森林及時(shí)序分析等算法,將當前時(shí)間段與上幾日、上幾分鐘,或前幾天同一時(shí)間段等分布情況進(jìn)行對比。 當某類(lèi)錯誤的發(fā)生頻次在數據分布上出現驟增、突刺等情況時(shí),與已配置的節假日、營(yíng)銷(xiāo)活動(dòng)等進(jìn)行匹配,若不存在特定場(chǎng)景,快速進(jìn)入預警流程,通知運維開(kāi)發(fā)人員介入分析。 借由一體化采集、聚合、分析能力,從程序異常發(fā)生,到被定義為須預警場(chǎng)景,智能運維平臺實(shí)現了秒級響應,減少了問(wèn)題發(fā)現滯后的可能。 二、聚焦問(wèn)題根因推測,助力定位復雜場(chǎng)景 分布式環(huán)境下的交易系統在帶來(lái)高可擴展性及高可用性的同時(shí),也兼具問(wèn)題涉及節點(diǎn)多、環(huán)境影響復雜的特點(diǎn)。智能運維平臺聚焦問(wèn)題根因推測,并以此提供在線(xiàn)解決方案。 1)全鏈路問(wèn)題跟蹤 分布式框架中,歸屬不同開(kāi)發(fā)團隊的節點(diǎn)常存在自定義異常無(wú)法序列化,異常堆棧相互覆蓋,或是以統一錯誤代碼直接替換原錯誤信息等導致丟失錯誤發(fā)生現場(chǎng)的情況。 智能運維平臺聚合各個(gè)節點(diǎn)采集的異常信息,采用TraceId 及 SpanId 拼接調用鏈路,無(wú)論采用哪個(gè)節點(diǎn)的上下文信息進(jìn)行查詢(xún),都可快速定位到問(wèn)題發(fā)生根源。 2)分布式環(huán)境關(guān)聯(lián) 分布式場(chǎng)景中的環(huán)境問(wèn)題難以定位,在定位到單筆交易發(fā)生超時(shí)、連接池滿(mǎn)等場(chǎng)景時(shí),往往難以進(jìn)一步定位是具體服務(wù)節點(diǎn)問(wèn)題還是數據庫節點(diǎn)問(wèn)題。 智能運維平臺基于問(wèn)題采集數據,針對相同錯誤問(wèn)題分布呈驟增、突刺等波動(dòng)的情況,分析同類(lèi)問(wèn)題關(guān)聯(lián)容器、宿主機、數據庫中 CPU、內存、資源池等情況,并提出問(wèn)題根因推測,協(xié)助分析人員快速定位問(wèn)題。 無(wú)論從哪個(gè)節點(diǎn)的信息接入,智能運維平臺都能串接起這個(gè)異常鏈路,并追索至問(wèn)題根源節點(diǎn),暴露問(wèn)題根本原因,減少了鏈路間各個(gè)節點(diǎn)維護人員的溝通成本。 平臺更進(jìn)一步的關(guān)聯(lián)當前環(huán)境信息,統計并總結可能導致該問(wèn)題的環(huán)境因素,減少環(huán)境導致的疑難問(wèn)題的分析時(shí)效。 三、可視化運維查詢(xún),一站式觸達解決方案 銀行系統生產(chǎn)運維及開(kāi)發(fā)人員在發(fā)現問(wèn)題時(shí),第一時(shí)間快速定位及獲取到問(wèn)題的解決方案尤為重要。銀行生產(chǎn)交易日志的獲取因其涉敏性常涉及到運維及開(kāi)發(fā)人員的多次溝通及審批流程。 智能運維平臺單獨推送異常信息,隔離了業(yè)務(wù)交易敏感信息及交易報錯內容,并借由可視化頁(yè)面,為分析人員還原異常發(fā)生現場(chǎng),并初步提供解決方案。 1)可視化異常溯源 可視化頁(yè)面除異常的基本信息外,也包含了此次問(wèn)題的時(shí)間地點(diǎn)等基礎業(yè)務(wù)信息及容器信息,流量標簽,調用鏈路等技術(shù)內容。通過(guò)可視化頁(yè)面,可基于任意節點(diǎn)的部分業(yè)務(wù)信息或異常信息快速定位到問(wèn)題根因,并快速了解此類(lèi)錯誤在近幾日,近幾周的分布情況,實(shí)時(shí)查看預測的頻次走向,觀(guān)察是否出現重大偏移,協(xié)助運維開(kāi)發(fā)人員快速判斷。 2)解決方案推薦 問(wèn)題的解決時(shí)效通常依賴(lài)于運維開(kāi)發(fā)人員的個(gè)人水平及處理經(jīng)驗。智能運維平臺搭建運維經(jīng)驗知識庫,經(jīng)由專(zhuān)家系統邏輯推理能力,基于當前異?,F場(chǎng)信息及問(wèn)題根因推斷能力,提供問(wèn)題可能性分析及相應問(wèn)題處理方案,減少運維開(kāi)發(fā)人員能力依賴(lài),提高問(wèn)題處理時(shí)效。 可視化頁(yè)面及專(zhuān)家知識庫,幫助分析人員僅依靠部分交易信息即可觀(guān)察到整個(gè)鏈路情況、異常根因、分布規律并進(jìn)一步獲取到推薦的解決方案,減少了人員間反復溝通成本,一站式觸達問(wèn)題核心。 分布式架構下智能運維平臺對生產(chǎn)運維開(kāi)發(fā)人員提供一體化采集分析、全鏈路根因推測、可視化的查詢(xún)及解決方案推薦能力,貫穿了問(wèn)題處理中的發(fā)現、定位、解決流程,對推動(dòng)運維時(shí)效縮減,保持金融服務(wù)穩定運行具有重要作用,將成為商業(yè)銀行架構轉型過(guò)程中的一個(gè)重要的基礎設施建設選項。