1、前言
企業(yè)在數(shù)字化轉(zhuǎn)型過程中運維遇到很多痛點如發(fā)現(xiàn)問題難、根因定位難、故障預(yù)測難、運維數(shù)據(jù)治理難、容量預(yù)測難以及各種運營大屏需求等,建設(shè)運維數(shù)據(jù)中臺可以有效的解決這些痛點,本文將探討運維數(shù)據(jù)中臺的探索與實踐。
2、背景
企業(yè)在數(shù)字化轉(zhuǎn)型過程中,IT架構(gòu)越來越復(fù)雜(如主機、存儲、網(wǎng)絡(luò)、數(shù)據(jù)庫、中間件、虛擬化、容器、眾多的業(yè)務(wù)系統(tǒng)),要如何統(tǒng)一監(jiān)控運維?海量的IT、業(yè)務(wù)數(shù)據(jù)該如何體現(xiàn)其價值?如何智能化運維、提升運維效率?
傳統(tǒng)運維依賴人工操作,有時也被戲稱為“人肉運維”。在傳統(tǒng)運維人員減少的同時,我們管理的機器數(shù)量卻翻倍了,這是我們面臨的一個比較大的問題。網(wǎng)絡(luò)拓?fù)淙找鎻?fù)雜。微服務(wù)出現(xiàn)之后,網(wǎng)絡(luò)拓?fù)潢P(guān)系更加復(fù)雜了,資源頻繁的彈性伸縮,導(dǎo)致CMDB和其他應(yīng)用信息無法做到實時管理。
運維專家資源匱乏。運維行業(yè)要求硬件、系統(tǒng)、網(wǎng)絡(luò)、腳本語言、開發(fā)能力、應(yīng)用運維等多領(lǐng)域的知識儲備,一名優(yōu)秀的運維專家需要長期運維工作經(jīng)驗的積累。另外,目前運維從業(yè)者減少也導(dǎo)致了運維專家尤其是有豐富經(jīng)驗的運維專家資源匱乏的現(xiàn)狀。運維平臺日趨復(fù)雜。很多公司發(fā)展到一定的規(guī)模之后,因為前期的發(fā)展規(guī)劃不足,可能每個部門都有自己的運維或者監(jiān)控平臺,平臺繁多就容易形成數(shù)據(jù)孤島,這樣就造成了研發(fā)人員在使用的時候非常不便。
以前大家可能面對的是一個應(yīng)用只操作一個數(shù)據(jù)庫這種傳統(tǒng)的應(yīng)用架構(gòu),而現(xiàn)在幾乎所有的應(yīng)用都已經(jīng)加入了微服務(wù)架構(gòu)的行列,應(yīng)用之間的調(diào)用情況就變得很復(fù)雜,在定位系統(tǒng)問題的時候就非常被動,這也是我們面臨的一個問題。
數(shù)據(jù)治理難。當(dāng)數(shù)字化建設(shè)進行到一定程度的時候,被管理對象的數(shù)據(jù)量相應(yīng)的也是水漲船高,數(shù)據(jù)數(shù)量大、類別多且非常分散,很難通過某一指標(biāo)體系來衡量系統(tǒng)的健康度,也沒有一個統(tǒng)一的視角去判斷數(shù)據(jù)質(zhì)量的好壞優(yōu)劣。
3、什么是運維數(shù)據(jù)中臺
3.1運維數(shù)據(jù)中臺定位
1、統(tǒng)一的運維數(shù)據(jù)平臺,基礎(chǔ)架構(gòu)監(jiān)控:提供豐富的基礎(chǔ)架構(gòu)(主機、網(wǎng)絡(luò)、存儲、虛擬化、數(shù)據(jù)庫、中間件等),環(huán)境探針和組件,統(tǒng)一運維數(shù)據(jù)采集,支持對接各種監(jiān)控平臺、外部數(shù)據(jù)源,統(tǒng)一數(shù)據(jù)存儲,標(biāo)準(zhǔn)化數(shù)據(jù)管理、數(shù)據(jù)治理,統(tǒng)一數(shù)據(jù)標(biāo)準(zhǔn),主數(shù)據(jù)管理。
2、數(shù)字化運營,個性化的數(shù)據(jù)分析呈現(xiàn)能力,提供靈活自定義的指標(biāo)和評分模型,提供豐富的Dashboard模板,支持高度自定義的可視化呈現(xiàn)能力。
3、賦能智能運維,智能基線告警,智能告警收斂,智能故障預(yù)測,智能根因分析,科學(xué)性能管理、容量預(yù)測。
3.2數(shù)據(jù)中臺解決企業(yè)數(shù)字化轉(zhuǎn)型運維痛點
1、針對系統(tǒng)架構(gòu)變化頻繁,又要搭建新的監(jiān)控平臺我們可以采用一體化數(shù)據(jù)采集平臺+可視化平臺,放心引入服務(wù)組件;
2、針對歷史監(jiān)控平臺太多,多平臺反復(fù)橫跳,數(shù)據(jù)不統(tǒng)一;原始數(shù)據(jù)無法直接衡量業(yè)務(wù)&IT服務(wù)的健康程度的問題我們可以統(tǒng)一運維數(shù)據(jù)中臺,打破數(shù)據(jù)孤島,打造統(tǒng)一、規(guī)范的指標(biāo)體系;
3、針對業(yè)務(wù)變動、舉辦活動、領(lǐng)導(dǎo)視察,又要采購新的大屏的問題我們可以高度定制可視化平臺,快速打造酷炫大屏;
4、針對告警來源不統(tǒng)一,告警風(fēng)暴侵?jǐn)_,故障定位困難的問題我們可以搭建智能告警平臺,實現(xiàn)告警相關(guān)性分析,智能化告警、根因分析&故障定位;
5、針對負(fù)載太重、資源空閑過多,容量和成本的平衡、供應(yīng)與需求的平衡等問題我們可以實現(xiàn)科學(xué)性能管理、智能容量預(yù)測。
4、如何建設(shè)運維數(shù)據(jù)中臺
4.1運維數(shù)據(jù)中臺架構(gòu)
4.2運維數(shù)據(jù)中臺數(shù)據(jù)流程
4.3運維數(shù)據(jù)中臺建設(shè)方法論
建設(shè)運維數(shù)據(jù)中臺本質(zhì)上是要減少數(shù)據(jù)的重復(fù)建設(shè),提高數(shù)據(jù)的共享能力。所以建設(shè)運維數(shù)據(jù)中臺需要運用OneData、OneService兩個方法論。OneData要求數(shù)據(jù)平臺的所有數(shù)據(jù)只加工一次,對應(yīng)到數(shù)據(jù)平臺的設(shè)計層面,要求有統(tǒng)一的維度,對于明細(xì)層數(shù)據(jù),相同粒度的度量只加工一次,對于匯總層的數(shù)據(jù),相同粒度的指標(biāo)只存在一份。OneService是統(tǒng)一查詢服務(wù),原先數(shù)據(jù)開發(fā)和應(yīng)用開發(fā)的邊界是比較模糊的,哪些邏輯應(yīng)該是由數(shù)據(jù)開發(fā)完成,哪些應(yīng)該是由應(yīng)用開發(fā)完成。數(shù)據(jù)服務(wù)劃清了數(shù)據(jù)和應(yīng)用的邊界,數(shù)據(jù)服務(wù)提供的是加工好的指標(biāo)數(shù)據(jù),應(yīng)用通過數(shù)據(jù)服務(wù),直接獲取計算的結(jié)果,強制把公共計算邏輯下沉到數(shù)據(jù)層面,提高了數(shù)據(jù)的共享能力。數(shù)據(jù)中臺屏蔽了底層系統(tǒng)之間的差異,讓運維人員可以將業(yè)務(wù)日常的運維工作交給產(chǎn)品、開發(fā)、測試等人員執(zhí)行,實現(xiàn)業(yè)務(wù)發(fā)布、變更等日常工作的自助化,除此之外,為降低非運維人員的操作成本,提供了“輕應(yīng)用”和“職能化”功能,提高自助率。
4.4運維數(shù)據(jù)中臺應(yīng)用場景舉例
4.4.1根因定位
針對根因定位,可以分為以下主要幾個步驟。
設(shè)置時間切片粒度:實時獲取時間切片內(nèi)(1min、5min等)的告警數(shù)據(jù);
告警分類:針對原始的告警數(shù)據(jù),結(jié)合具體的告警信息和監(jiān)控項等信息,根據(jù)訓(xùn)練好的分類模型對原始的告警數(shù)據(jù)從HOST、VM、SOFTWARE三個方面進行分類,例如:vm網(wǎng)卡流量大、host磁盤使用率過高、software_網(wǎng)頁訪問失敗等。
根據(jù)CMDB配置關(guān)系建模
告警因果圖構(gòu)建:基于告警收斂結(jié)果,在圖數(shù)據(jù)庫中按照系統(tǒng)級別查詢每個系統(tǒng)下的所有節(jié)點之間的連接子圖,并將得到的結(jié)果輸入到networkx中,得到某個系統(tǒng)下的各節(jié)點之間的最終連接關(guān)系,即告警因果圖。
根因路徑:基于上述生成的告警因果圖,以及權(quán)重來計算疑似路徑,排序給出根因路徑。
對于上述第一個時間切片中的某個系統(tǒng),在圖數(shù)據(jù)庫中查詢該系統(tǒng)下的所有節(jié)點構(gòu)成的子圖,以“某銀行XX系統(tǒng)”這個系統(tǒng)為例,查詢得到在“一跳”范圍內(nèi)與該系統(tǒng)下的所有節(jié)點之間有關(guān)聯(lián)的節(jié)點的關(guān)系大致如下(紅色表示物理機節(jié)點,棕色表示虛擬機節(jié)點,綠色表示軟件節(jié)點):
上圖中出現(xiàn)的所有節(jié)點中,既包括有告警信息的,也包括沒有告警消息的,因此將上述因果圖輸入到netwokx后,可以得到最終經(jīng)過精簡后的有告警消息發(fā)出的各節(jié)點的因果圖,其中一部分的因果圖展示如下:
可以解釋為:“192.168.xxx.xxx-host-服務(wù)器宕機”導(dǎo)致“10.104.xxx.xxx-vm-服務(wù)器宕機”,進而導(dǎo)致“software-網(wǎng)頁訪問失敗”。
進一步的,根據(jù)上述生成的因果圖,再結(jié)合因果圖中每條邊的權(quán)重,就可以計算出該時間切片下的單個系統(tǒng)層面上的所有疑似根因路徑,經(jīng)過排序后即可得到最終的根因路徑。本例中最終得到的幾條根因路徑如下:
從上圖可以看出,程序最終給出了幾條疑似的根因路徑,其中包括最長的一條,可以解釋為:ip**為192.168.xxx.xxx這臺物理機由于網(wǎng)卡overruns的原因,導(dǎo)致了這臺物理機的宕機,從而使得這臺物理機上的ip為10.104.xxx.xxx的虛擬機宕機,最終導(dǎo)致這臺虛擬機上的相關(guān)的網(wǎng)頁訪問失敗。
4.4.2容量預(yù)測
容量管理服務(wù)覆蓋IT系統(tǒng)的整個生命周期,通過調(diào)用中臺服務(wù)對業(yè)務(wù)容量數(shù)據(jù)(包括用戶數(shù)量、交易與交易量、業(yè)務(wù)模型、業(yè)務(wù)復(fù)雜度等)、服務(wù)容量數(shù)據(jù)(服務(wù)水平等級、TPS、并發(fā)用戶數(shù)、連接數(shù)、系統(tǒng)響應(yīng)時間)和IT基礎(chǔ)架構(gòu)組件容量數(shù)據(jù)(服務(wù)器(CPU、內(nèi)存、IO等)、存儲(磁盤空間、Cache等)、網(wǎng)絡(luò)(帶寬、端口流量等)、數(shù)據(jù)庫、中間件)的分析,建立科學(xué)的容量模型,實現(xiàn)對容量指標(biāo)的分析和預(yù)測,及時發(fā)現(xiàn)容量瓶頸、資源配置不均衡等問題,在確保業(yè)務(wù)系統(tǒng)的穩(wěn)定運行的同時,節(jié)約IT基礎(chǔ)設(shè)施的成本,為客戶提供科學(xué)有效的IT采購與擴容提供科學(xué)依據(jù),為IT資源更合理分配提供決策支持,實現(xiàn)兩個平衡:容量和成本的平衡、供應(yīng)與需求的平衡。
5、運維數(shù)據(jù)中臺建設(shè)難點
運維數(shù)據(jù)中臺的方法論包括One Service和One Data,而One Data的難點和重點就是運維數(shù)據(jù)的治理,數(shù)據(jù)治理是一個長期過程,在運維數(shù)據(jù)體系建設(shè)過程中要有一個持續(xù)演進的運維數(shù)據(jù)治理步驟。
第一階段:摸家底,落地數(shù)據(jù)資產(chǎn)?;谝獙崿F(xiàn)運維數(shù)字化場景,梳理運維數(shù)據(jù)分析涉及監(jiān)控、日志、性能、配置、流程、應(yīng)用運行6類數(shù)據(jù)存儲在哪里,工具或平臺架構(gòu)、數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)實時性,數(shù)據(jù)完整性,數(shù)據(jù)正確性,數(shù)據(jù)標(biāo)準(zhǔn)化程度等方案。
第二階段:建標(biāo)準(zhǔn),提供一站式的管控能力。結(jié)合第一階段的成果,建立數(shù)據(jù)管控的流程、機制、標(biāo)準(zhǔn)、安全體系能力,建立一站式的運維數(shù)據(jù)平臺,從運維數(shù)據(jù)應(yīng)用場景角度梳理企業(yè)數(shù)據(jù)質(zhì)量問題,建立數(shù)據(jù)運營職能崗位、制定數(shù)據(jù)標(biāo)準(zhǔn)及配套的流程?;谶\維數(shù)據(jù)標(biāo)準(zhǔn),結(jié)合運維數(shù)據(jù)項目推動運維數(shù)據(jù)治理模塊的建設(shè),比如:以運維指標(biāo)體系場景驅(qū)動落地數(shù)據(jù)資產(chǎn)管理模塊/系統(tǒng),以CMDB配置數(shù)據(jù)為基礎(chǔ)落地主數(shù)據(jù)庫。
第三階段:促消費,以數(shù)據(jù)消費反向提升數(shù)據(jù)治理能力。首先,提供自助式服務(wù)能力,以用戶為中心,加強運維數(shù)據(jù)運營效能,為用戶提供直接獲取數(shù)據(jù)的能力,直接為用戶提供價值,向用戶提供數(shù)據(jù)服務(wù)化能力,使用戶能夠自助的獲取和使用數(shù)據(jù)。其次,提供人機協(xié)同應(yīng)用能力,將數(shù)據(jù)沉淀為知識,形成運維知識圖譜,結(jié)合AIOps理念將機器優(yōu)勢與運維專家經(jīng)驗相結(jié)合,形成數(shù)據(jù)洞察/預(yù)測、決策/自動化、執(zhí)行/任務(wù)的閉環(huán)。利用豐富的數(shù)據(jù)消費場景如監(jiān)控告警、自動化運維等反向發(fā)現(xiàn)數(shù)據(jù)質(zhì)量問題,來持續(xù)提升數(shù)據(jù)治理水平。
數(shù)據(jù)領(lǐng)域的數(shù)據(jù)治理主要包括元數(shù)據(jù)、主數(shù)據(jù)、數(shù)據(jù)標(biāo)準(zhǔn)、數(shù)據(jù)質(zhì)量、數(shù)據(jù)模型、數(shù)據(jù)安全、數(shù)據(jù)生命周期7部分內(nèi)容,以下結(jié)合運維領(lǐng)域特點,談一下我對運維數(shù)據(jù)治理的內(nèi)容。
1、元數(shù)據(jù)管理
元數(shù)據(jù):元數(shù)據(jù)是指描述數(shù)據(jù)的數(shù)據(jù),是指從信息資源中抽取出來說明數(shù)據(jù)特征、內(nèi)容的結(jié)構(gòu)化的數(shù)據(jù),用于組織、描述、檢索、保存、管理。
2、主數(shù)據(jù)管理
主數(shù)據(jù)管理是指一整套用于生成和維護主數(shù)據(jù)的規(guī)范、技術(shù)和方案,以保證主數(shù)據(jù)的完整性、一致性和準(zhǔn)確性。主數(shù)據(jù)與交易數(shù)據(jù)不同,主數(shù)據(jù)的內(nèi)容具有穩(wěn)定、可共享、權(quán)威幾個特征。運維主數(shù)據(jù)的主要數(shù)據(jù):
與機器相關(guān)的:動環(huán)、網(wǎng)絡(luò)、服務(wù)器、存儲、光纖交換機等。
與軟件相關(guān)的:系統(tǒng)軟件、數(shù)據(jù)庫、中間件、應(yīng)用系統(tǒng)、DNS等。
與流程相關(guān)的:與ITIL相關(guān)的事件、問題、變更、配置等。
3、數(shù)據(jù)標(biāo)準(zhǔn)管理
數(shù)據(jù)標(biāo)準(zhǔn)通常包括組織架構(gòu)、標(biāo)準(zhǔn)制度、管控流程、技術(shù)體系四個方向,應(yīng)用統(tǒng)一的數(shù)據(jù)定義、數(shù)據(jù)分類、編碼規(guī)范,以及數(shù)據(jù)字典等。在運維領(lǐng)域數(shù)據(jù)標(biāo)準(zhǔn)可以考慮如下:
組織架構(gòu):確定運維元數(shù)據(jù)、主數(shù)據(jù)、交易數(shù)據(jù)涉及的管理決策、數(shù)據(jù)業(yè)主、運營、質(zhì)量、消費等團隊或崗位角色。
標(biāo)準(zhǔn)制度:圍繞源端數(shù)據(jù)制定分類、格式、編碼等規(guī)范,制定日志、報警、性能指標(biāo)等數(shù)據(jù)標(biāo)準(zhǔn)。
管控流程:要對運維數(shù)據(jù)管理的供應(yīng)、變更、申請、共享、質(zhì)量、運營等流程進行規(guī)范化、線上化、流程化、表單化。
技術(shù)體系:綜合考慮平臺架構(gòu)、接口規(guī)范、應(yīng)用場景等,圍繞運維數(shù)據(jù)的“采存算管用”建立運維數(shù)據(jù)平臺。
4、數(shù)據(jù)質(zhì)量管理
數(shù)據(jù)質(zhì)量管理是指針對數(shù)據(jù)從獲取、存儲、共享、維護、應(yīng)用、消亡全生命周期的每個階段里可能引發(fā)的數(shù)據(jù)質(zhì)量問題,進行識別、度量、監(jiān)控、預(yù)警等管理活動,并通過改善和提高組織的管理水平提高數(shù)據(jù)質(zhì)量。運維數(shù)據(jù)有如下特點:海量的非結(jié)構(gòu)化數(shù)據(jù)、秒級以內(nèi)的實時數(shù)據(jù)、源端數(shù)據(jù)標(biāo)準(zhǔn)化程度低、應(yīng)用場景對實時性要求高。所以運維數(shù)據(jù)質(zhì)量管理應(yīng)該在有限資源的背景下聚焦實時、在線、準(zhǔn)確、完整、有效、規(guī)范等關(guān)鍵字。
5、數(shù)據(jù)模型管理
運維數(shù)據(jù)的模型管理方面,一是要借鑒傳統(tǒng)業(yè)務(wù)大數(shù)據(jù)的指標(biāo)數(shù)據(jù)模型設(shè)計方法;二要結(jié)合運維數(shù)據(jù)消費場景實時、準(zhǔn)確等特征,利用流式計算方式區(qū)分源端原始數(shù)據(jù),旁路后的加工數(shù)據(jù),根據(jù)規(guī)則生成的指標(biāo)數(shù)據(jù)等方式,設(shè)計運維實時數(shù)據(jù)模型。
6、數(shù)據(jù)安全管理
數(shù)據(jù)安全管理是實現(xiàn)數(shù)據(jù)安全策略和流程的制訂,數(shù)據(jù)安全管理需要遵循國家、行業(yè)的安全政策法規(guī),比如網(wǎng)絡(luò)安全法,等級保護,個人隱私安全等要求。另外,數(shù)據(jù)治理將依賴數(shù)據(jù)來源、內(nèi)容、用途進行分類,所以數(shù)據(jù)安全管理還要求對數(shù)據(jù)內(nèi)容敏感程度、影響等進行分級分類。運維數(shù)據(jù)都是生產(chǎn)數(shù)據(jù),生產(chǎn)數(shù)據(jù)的安全管理,要從技術(shù)、管理兩個角度對產(chǎn)生、運營、消費進行全流程的安全管理。
7、數(shù)據(jù)生命周期管理
數(shù)據(jù)生命周期通常是指數(shù)據(jù)從產(chǎn)生、采集、存儲、整合、分析、消費/應(yīng)用、歸檔、銷毀等過程的數(shù)據(jù)管理。數(shù)據(jù)價值決定著數(shù)據(jù)全生命周期過程的管理方式,數(shù)據(jù)價值可能會隨著時間的變化而遞減,影響著采集粒度、時效性、存儲方式、分析應(yīng)用、場景消費等。對運維數(shù)據(jù)生命周期各個階段的特點采取不同的管理方法和控制手段,能從數(shù)據(jù)中挖掘出更多有效的數(shù)據(jù)價值。
6、運維數(shù)據(jù)中臺的發(fā)展方向
運維數(shù)據(jù)中臺的發(fā)展方向可以從以下兩個方面考慮:
1、云上數(shù)據(jù)中臺,實現(xiàn)應(yīng)用微服務(wù)化、容器化。應(yīng)用可以基于容器鏡像構(gòu)建、運行,實現(xiàn)容器編排、上線和擴容快、秒級伸縮,同時也提升資源使用率和業(yè)務(wù)交互的性能
2、構(gòu)建運維AI中臺,AI中臺是運維數(shù)據(jù)中臺的未來發(fā)展的趨勢,隨著業(yè)務(wù)技術(shù)的發(fā)展,數(shù)據(jù)中臺會向著AI中臺演進,它圍繞智能化服務(wù)為核心,它依賴于數(shù)據(jù)中臺提供給它數(shù)據(jù)服務(wù)的能力,而智能化的技術(shù)開發(fā)能力,又能夠提供給數(shù)據(jù)更便捷和快速的的數(shù)據(jù)分析和預(yù)測,從而提供了更好的數(shù)據(jù)服務(wù)。因此它們之間又是相互依存、共同提升。AI中臺的構(gòu)建貫穿數(shù)據(jù)體系的各個方面,并不是在數(shù)據(jù)中臺的基礎(chǔ)上加上智能化處理就行。AI中臺嘗試解決如下的問題:
拆分服務(wù)構(gòu)建環(huán)節(jié),智能服務(wù)開發(fā)流程化,快速響應(yīng)業(yè)務(wù)需求
利用元數(shù)據(jù)管理方式,提供統(tǒng)一的標(biāo)準(zhǔn)格式,場景可以多人協(xié)同配合開發(fā)
基礎(chǔ)設(shè)施共享化,模型的訓(xùn)練和發(fā)布與數(shù)據(jù)平臺有效綁定,服務(wù)的構(gòu)建自動化
通用AI能力平臺化,降低人員要求,提升協(xié)作效率