引言
在農(nóng)業(yè)銀行數(shù)字化轉(zhuǎn)型背景下,對“以安全生產(chǎn)為第一要務(wù)”的數(shù)據(jù)中心而言,隨著運(yùn)維規(guī)模與體量的快速增長,對提升配置準(zhǔn)確性、監(jiān)控有效性、操作自動化、安全精細(xì)化有了更高要求。除了安全穩(wěn)定外,高效運(yùn)維、精細(xì)化運(yùn)維、自動化與智能化運(yùn)維早已成為提升運(yùn)維質(zhì)量的關(guān)鍵需求,需要構(gòu)建敏捷研發(fā)和高效運(yùn)維充分融合的創(chuàng)新機(jī)制,加速從IT運(yùn)維向IT運(yùn)營的轉(zhuǎn)型,為農(nóng)行的新時代變革發(fā)展提供“平穩(wěn)、安全、快速、精準(zhǔn)”的生產(chǎn)運(yùn)行保障。
運(yùn)維體量的快速增長、新技術(shù)的引入(如分布式架構(gòu)、開源軟件、云計算、大數(shù)據(jù))給運(yùn)維帶來全新的挑戰(zhàn),對數(shù)據(jù)一致性、監(jiān)控全景視圖、資源快速交付、實(shí)時運(yùn)行分析、安全快速變更、快速應(yīng)急處置的需求也愈發(fā)迫切。面對新形勢,科技人主動突圍,2019年10月由科技與產(chǎn)品管理局牽頭啟動一體化生產(chǎn)運(yùn)維平臺體系建設(shè)工程,數(shù)據(jù)中心與研發(fā)中心分工建設(shè)一門戶(統(tǒng)一門戶)、一中心(配置中心)、四平臺(監(jiān)控平臺、操作平臺、管理平臺、數(shù)據(jù)分析平臺),在數(shù)字化轉(zhuǎn)型背景下全面提升運(yùn)維水平和運(yùn)維能力。
結(jié)合近兩年生產(chǎn)運(yùn)維自動化與智能化實(shí)踐,本文從打造運(yùn)維中臺基座、借助中臺快速構(gòu)建運(yùn)維場景、探索智能化三個方面進(jìn)行介紹。
運(yùn)維中臺:共享業(yè)務(wù)、數(shù)據(jù)與計算能力
一直以來,業(yè)內(nèi)對中臺的看法褒貶不一。支持的一方認(rèn)為中臺避免了重復(fù)造輪子,能快速上線產(chǎn)品。反對的一方則認(rèn)為中臺扼殺了創(chuàng)新,整套系統(tǒng)會變得復(fù)雜、維護(hù)性差。數(shù)據(jù)中心經(jīng)過近幾年的探索與實(shí)踐,發(fā)現(xiàn)中臺利遠(yuǎn)大于弊,運(yùn)維中臺可以共享運(yùn)維業(yè)務(wù)能力、數(shù)據(jù)能力和計算能力,可以將運(yùn)維活動進(jìn)行抽象,依托中臺實(shí)現(xiàn)IT運(yùn)維全專業(yè)“監(jiān)、管、控、析”一體化。
運(yùn)維中臺實(shí)現(xiàn)了統(tǒng)一采控、統(tǒng)一數(shù)據(jù)處理和管理、統(tǒng)一基礎(chǔ)服務(wù),解決了以往IT運(yùn)維中煙囪式建設(shè)導(dǎo)致的數(shù)據(jù)孤島問題,從根本上解決了運(yùn)維基礎(chǔ)數(shù)據(jù)和基礎(chǔ)功能的管理和使用問題。
本節(jié)著重介紹運(yùn)維中臺如何采集數(shù)據(jù)、如何存儲和處理數(shù)據(jù),以及如何消費(fèi)數(shù)據(jù)。
1.統(tǒng)一采控體系構(gòu)建運(yùn)維觸角。農(nóng)行針對操作系統(tǒng)、數(shù)據(jù)庫、中間件、網(wǎng)絡(luò)等自研或采購了不同監(jiān)控、操作代理,這就造成了同一臺機(jī)器上安裝了不同采控代理,一方面對系統(tǒng)性能和穩(wěn)定性帶來風(fēng)險隱患,另一方面也不便于數(shù)據(jù)統(tǒng)一管理。
運(yùn)維中臺針對采控代理種類繁雜的問題建立了分布式統(tǒng)一采控體系,通過統(tǒng)一代理框架實(shí)現(xiàn)各類資源的配置發(fā)現(xiàn)、指標(biāo)采集、自動化操作,向上提供開箱即用的服務(wù)化接口。采控代理由采控服務(wù)端逐級指揮,實(shí)現(xiàn)大規(guī)模一體化采集和操作控制。同時,統(tǒng)一采控體系易于擴(kuò)展,例如針對F5統(tǒng)一采控管理需求,開發(fā)采控代理插件進(jìn)行功能擴(kuò)充,快速實(shí)現(xiàn)統(tǒng)一管理。
目前通過采控平臺統(tǒng)一管理總行服務(wù)器資源,有效支撐了總行監(jiān)、管、控等運(yùn)維活動。
2.配置中心:三分建、七分管。配置管理是一體化生產(chǎn)運(yùn)維建設(shè)的基礎(chǔ)和核心。配置中心圍繞配置信息可采集、可操作、可驗(yàn)證、可消費(fèi)的原則,標(biāo)準(zhǔn)化配置模型,將全行配置信息和配置關(guān)系統(tǒng)一納管,目前已完成總行配置納管,并逐步對外提供配置服務(wù)。
在配置中心建設(shè)過程中,深刻體會到管理的難度遠(yuǎn)大于建設(shè)難度,可以歸納為下述幾個問題:配置管理范圍、存量和增量配置如何保證完整準(zhǔn)確、配置信息如何發(fā)揮作用。配置中心建設(shè)過程注重配置統(tǒng)一管控、配置生命周期與生產(chǎn)活動緊耦合、配置治理,建設(shè)應(yīng)用視角資產(chǎn)視圖,為監(jiān)管控析平臺提供配置服務(wù),最大限度發(fā)揮數(shù)據(jù)資產(chǎn)的價值,為生產(chǎn)運(yùn)行提供強(qiáng)有力的數(shù)據(jù)保障,主要體現(xiàn)在如下方面。
設(shè)計以應(yīng)用為中心的模型,建立資產(chǎn)視圖。確定核心模型、核心配置屬性、核心配置關(guān)聯(lián)關(guān)系,避免貪多、不分主次。模型和屬性支持?jǐn)U充,通過準(zhǔn)入流程進(jìn)行控制。
對配置生命周期進(jìn)行統(tǒng)一管理。配置上下線、配置維護(hù)與生產(chǎn)變更緊密結(jié)合,朝著“無配置不投產(chǎn)”目標(biāo)建立起配置管控規(guī)范,技術(shù)上逐步落地管配結(jié)合機(jī)制。
建立持續(xù)數(shù)據(jù)治理策略,提升配置準(zhǔn)確性。采用分步走方式,確定配置核心“三要素”,即服務(wù)目錄、分區(qū)、IP地址。首先對“三要素”進(jìn)行人工確認(rèn),確保應(yīng)用與基礎(chǔ)設(shè)施關(guān)聯(lián)準(zhǔn)確。隨后對通過自動驗(yàn)證+人工確認(rèn)方式,對跨基礎(chǔ)設(shè)施關(guān)聯(lián)、配置屬性完整度、核心配置屬性準(zhǔn)確性等進(jìn)行確認(rèn)。存量系統(tǒng)確認(rèn)完畢后,最后嚴(yán)控增量數(shù)據(jù)入庫形式,確保不關(guān)聯(lián)變更不能入庫。
豐富配置消費(fèi)場景。配置中心作為唯一的消費(fèi)渠道,出現(xiàn)生產(chǎn)異常時可以迅速查詢受影響的應(yīng)用系統(tǒng),借助配置對各類告警進(jìn)行歸并,并通過配置關(guān)聯(lián)操作進(jìn)行快速處置。
3.流計算平臺支撐的基礎(chǔ)設(shè)施監(jiān)控平臺。針對傳統(tǒng)監(jiān)控平臺告警丟失、告警堵塞等問題,基于Spark、Kafka、ES建設(shè)流計算監(jiān)控平臺,建立了一套標(biāo)準(zhǔn)化的監(jiān)控采集、處理、存儲和查詢架構(gòu),對指標(biāo)、告警、日志進(jìn)行統(tǒng)一采集、處理與消費(fèi)。
數(shù)據(jù)采集方面,建立了一套靈活、可擴(kuò)展的監(jiān)控采集代理及傳輸體系,支持shell、python、groovy、vbs各類監(jiān)控采集腳本,方便不同部署環(huán)境的采集;支持自定義編寫腳本,擴(kuò)展了告警采集能力;適配各類操作系統(tǒng),有力支持了基礎(chǔ)設(shè)施建設(shè)。
數(shù)據(jù)處理方面,采用流計算進(jìn)行監(jiān)控數(shù)據(jù)的實(shí)時處理,突破了傳統(tǒng)監(jiān)控平臺內(nèi)存計算和數(shù)據(jù)庫計算的瓶頸,極大提升了告警處理的性能,支持更大規(guī)模的監(jiān)控接入;將傳統(tǒng)封閉在數(shù)據(jù)庫的監(jiān)控數(shù)據(jù)通過流的方式提供出來;在流處理時支持聯(lián)動配置、事件等第三方數(shù)據(jù)及算法,加強(qiáng)了告警分析的能力,提升了告警的有效性。
運(yùn)維場景:打通運(yùn)維最后一公里
運(yùn)維中臺提供了配置、監(jiān)控、操作、流程、分析、展示等基礎(chǔ)能力,但中臺不是萬能的,需要將各項功能進(jìn)行串聯(lián)才能滿足運(yùn)維需求。這個需求就是運(yùn)維場景,根據(jù)各專業(yè)的業(yè)務(wù)特性在中臺基座上快速開發(fā)、持續(xù)迭代交付,實(shí)現(xiàn)快速低成本構(gòu)建。
借助運(yùn)維中臺,數(shù)據(jù)中心在2020年全年上線了22個運(yùn)維場景,主機(jī)、開放、網(wǎng)絡(luò)、環(huán)境、生產(chǎn)運(yùn)行等條線在資源快速交付、監(jiān)控全景視圖、快速應(yīng)急處置、批量健康檢查、流程式生產(chǎn)變更等方面實(shí)現(xiàn)了運(yùn)維自動化,突出表現(xiàn)在以下幾個方面。
投產(chǎn)資源交付場景,實(shí)現(xiàn)快速交付。投產(chǎn)資源交付場景依托云平臺,通過流程串聯(lián)資源申請、資源評估、資源分配及變更、資源生產(chǎn)、配置采集、監(jiān)控配置、資源交付各環(huán)節(jié),實(shí)現(xiàn)了一鍵式提交、一站式交付。與傳統(tǒng)虛擬機(jī)交付相比,運(yùn)維人員參與度大幅下降,交付速度大幅上升。
系統(tǒng)畫像與告警整合場景,輔助快速定位故障。告警整合通過匯聚應(yīng)用監(jiān)控和基礎(chǔ)設(shè)施監(jiān)控數(shù)據(jù),借助配置庫的關(guān)聯(lián)和自動發(fā)現(xiàn)能力,對監(jiān)控告警數(shù)據(jù)進(jìn)行集中加工、整合,以應(yīng)用系統(tǒng)為維度,全方位展示配置、應(yīng)用核心指標(biāo)、基礎(chǔ)設(shè)施性能指標(biāo)、告警等運(yùn)行情況,建立起應(yīng)用系統(tǒng)全景運(yùn)維視圖,幫助快速定位問題。
應(yīng)急處置與切換場景,快速恢復(fù)生產(chǎn)。針對基礎(chǔ)設(shè)施與應(yīng)用系統(tǒng)總結(jié)沉淀應(yīng)急處置和切換場景,形成應(yīng)急處置預(yù)案與操作流程。應(yīng)急處置觸發(fā)后能夠迅速啟動操作流程,實(shí)現(xiàn)故障恢復(fù)。以網(wǎng)絡(luò)條線為例,構(gòu)建五維態(tài)勢圖,對告警、分區(qū)流量、ping檢測、重要系統(tǒng)運(yùn)行情況、近期變更操作進(jìn)行綜合展示,發(fā)現(xiàn)異常根據(jù)應(yīng)急處置規(guī)則立即啟動、執(zhí)行應(yīng)急處置,朝著“5分鐘異常發(fā)現(xiàn)、10分鐘故障定位、20分鐘異常恢復(fù)”的目標(biāo)邁進(jìn)了一大步。
數(shù)據(jù)+算法=未來運(yùn)維之路
運(yùn)維自動化不是運(yùn)維的終點(diǎn)。隨著分布式架構(gòu)、云計算、大數(shù)據(jù)深入應(yīng)用,運(yùn)維對象將呈指數(shù)級趨勢增長,在整個數(shù)字化轉(zhuǎn)型的浪潮中,“提質(zhì)、增效”是運(yùn)維人不斷追求的目標(biāo),也是讓我們不得不思考的運(yùn)維轉(zhuǎn)型之路。
數(shù)據(jù)中心沉淀了海量的配置數(shù)據(jù)、監(jiān)控告警數(shù)據(jù)、性能指標(biāo)數(shù)據(jù)、日志數(shù)據(jù),如何發(fā)揮這些數(shù)據(jù)資產(chǎn)的價值,輔助運(yùn)維人進(jìn)行決策是運(yùn)維發(fā)展的高階目標(biāo),需要借助算法來挖掘蘊(yùn)含其中的規(guī)律。數(shù)據(jù)中心在智能化運(yùn)維上積極實(shí)踐:建立健康度模型,展示系統(tǒng)全局運(yùn)行狀況,結(jié)合業(yè)務(wù)數(shù)據(jù)、監(jiān)控數(shù)據(jù)、告警數(shù)據(jù),實(shí)時評估系統(tǒng)整體健康情況,第一時間掌握系統(tǒng)運(yùn)行狀況。開展預(yù)測分析,對交易量、性能等時序數(shù)據(jù)進(jìn)行預(yù)測,建立動態(tài)基線,為無閾值智能告警奠定基礎(chǔ)。試點(diǎn)智能告警壓縮,基于NLP對告警文本進(jìn)行合并,降低告警數(shù)量。試點(diǎn)關(guān)鍵告警推薦,借助關(guān)聯(lián)規(guī)則提升告警有效性。
經(jīng)過實(shí)踐我們發(fā)現(xiàn),算法并不是萬能的,經(jīng)常會發(fā)現(xiàn)幾條簡單的告警規(guī)則比復(fù)雜的算法更精準(zhǔn)有效。究其原因,這些規(guī)則依賴于運(yùn)維人長期積累的經(jīng)驗(yàn),需要運(yùn)維人持續(xù)的參與來挖掘這些規(guī)律,發(fā)現(xiàn)運(yùn)維過程中閃光的點(diǎn)子,并借助算法來從數(shù)據(jù)中進(jìn)行挖掘。在未來運(yùn)維之路上,運(yùn)維人將從臺前走入幕后,通過知識圖譜建設(shè),將專家積累下來的運(yùn)維經(jīng)驗(yàn)和運(yùn)維知識轉(zhuǎn)化為智能化運(yùn)維工具,為故障預(yù)測、定位、自愈提供決策基礎(chǔ)。
原載于中國農(nóng)業(yè)銀行數(shù)據(jù)中心