王慧
關鍵詞 機器學習 大數據 內控管理
結合長時間積累的運維內控管理經驗,本文創新提出了“ 4P ” 運維內控管理理念, 從人員畫像( Persona )、規范分析( Prescriptive )、風險防范(Prevent)、行為預測(Predictive)四個維度,將之融入大數據運維內控管理平臺設計和應用中,于全方位拓展運維內控管理的工作理念和管理思路,促使運維內控管理工作更具全面性、系統性和前瞻性[1] 。
1系統主體設計理念和實現功能
人員畫像(Persona):綜合展示每個運維人員的工作現狀、操作習慣、行為特征、合規情況等信息全貌,可視化展現運維人員360°立體式畫像。
規范分析(Prescriptive):全過程跟蹤運維人員進出ECC 的行為交互路徑,實現命令、操作和行為的過程回放和模擬復盤,精準定位不合規操作異動,提升運維內控的事后管理效率。
風險防范(Prevent):對生產操作中的高危命令、違規行為、系統訪問軌跡等進行實時監控和自動隔離,通過規則匹配方式強化運維操作風險防范,加固運維內控的事中監督機制。
行為預測(Predictive):基于大數據存儲和分布式計算環境,引入機器學習算法,挖掘海量運維數據中的潛在規律,提前預判變更行為和實施風險,強化運維內控的事前管理能力。
2基于大數據和機器學習的“4P” 運維內控管理平臺設計
大數據運維內控管理平臺將各運維監控平臺、ECC 管理系統、ISO20000 流程系統的海量多結構化數據集中長久存儲、分布式計算分析。總體系統架構由運維監控層、數據采集層、數據分析層、數據應用層和數據展現層構成,基于大數據架構,“4P”運維內控管理功能實現技術設計如下。
2.1面向運維內控管理的人員畫像模型
人員畫像作為一種能將定性與定量方法很好結合在一起的載體,通過定量化的數據分析獲得對運維人員較為精準的認識,從而從龐大的運維群體將特征相似的群體凸顯出來。進行歸納、分類、比較,進而對某個或某類現象的性質和特征做出概括,對人員行為進行規范性分析和預測。對可能出現的違規行為進行預先干預,從而消除由人為引發的風險。其具體實現可歸納為四個步驟。
第一步,設置用戶標簽。標簽通常是人為規定的高度精練的特征標識,結合運維內控的實際特點,我們將人員畫像的用戶標簽分為四類,分別是操作量、合規性、安全意識、關鍵程度。
第二步,數據集成。運維內控相關數據主要分為兩類,即靜態類數據和動態類數據。靜態類數據即相對穩定的用戶屬性信息,可直接使用并轉化為用戶數據;動態類數據即不斷變化的行為用戶信息,可通過對接流程平臺或運維數據倉庫并加以甄別、過濾、清洗來獲得。
第三步,數據建模。通過建立標準規則庫,構建用戶畫像的數據模型,該模型公式可以簡要概括為“人員基本屬性+觸發時間+行為類型+具體用戶數據=用戶標簽評價”。
第四步,關聯評價。為更為直觀地描述用戶畫像特征,可以通過五星評級方式,展示用戶標簽的程度性,使得人員畫像模型適用于橫向比較。
2.2端到端的人員操作行為規范分析
規范分析是對已有的事物現象、事物運行狀態做出是非曲直的價值判斷,對應該具有的規范性和結果進行闡述和說明。在實際的運維內控實際操作過程中,對人員進入ECC 到離開的全過程進行記錄。從登記進入ECC 到操作完成登記離開ECC 的全過程進行記錄,對其操作內容能夠全部記錄并實時分析,一旦發現異動操作行為即終止操作。另外,能夠對其在執行過程中的命令、操作和行為進行回放,規范分析其每一項操作的合規性。
2.3基于規則匹配的人員操作風險防范
人員操作風險防范是指風險管理者采取各種預防性措施和方法,消滅或減少風險事件發生的概率或者減少風險事件發生時造成的損失。大數據運維內控管理平臺中,實時獲取對數據庫執行的每一條SQL語句、用戶登錄和退出信息、系統訪問以及系統日志數據,基于預定義的規則庫實時比對后,將結果輸送給監控告警和報表展示,實現對高危操作實時監控、違規行為統計報告以及系統訪問軌跡自動識別[2] 。
2.3.1高危操作實時監控
記錄每一次對數據庫直接訪問和前臺應用程序對數據庫間接訪問,每一條記錄實時比對自定義數據庫高危操作命令規則庫,自定義策略的條件組合包括:訪問數據庫的庫名、用戶名、應用軟件名稱,訪問端的IP 地址、操作系統主機名、操作系統用戶名,訪問操作時間、原始操作指令、操作回應內容、操作返回的代碼,訪問數據庫的對象名等。
2.3.2違規行為統計報告
系統自動將標準化的系統日志轉化為標準的可讀事件,包含常見的系統安全相關的預定義規則,并支持自定義規則擴充,當系統日志中的相關記錄匹配了安全事件規則后觸發告警。
2.3.3系統訪問軌跡自動識別
根據系統登錄類型日志中的源地址、源用戶名、目標地址、登錄成功日志等信息,自動生成訪問軌跡圖,通過系統訪問軌跡,發現非受控終端違規登錄、跳板機、頻繁登錄行為等內控管理關注點。
2.4基于關聯分析和分類算法的行為預測研究
在人類漫長的發展歷史中,人類的行為并不是隨機的,并不是泊松分布的,而是存在一定的規則。通過對大數據的分析可以看到人類的行為規則是基于優先級排布的問題。每個人都有自己的任務列表,而如何按照優先級排列順序則產生了不同的影響。換言之,在大量的歷史數據之上,人類的行為是可以被預測的。在這樣一個理論前提下,數據中心基于大數據平臺結合機器學習算法,對如下兩個場景進行了嘗試。
2.4.1監控報警導致的變更行為預測研究
監控報警與變更行為之間有某種必然關系,通常我們能夠通過人為經驗建立其一小部分關系。隨著大數據技術的發展,使用關聯分析算法在海量數據中進行挖掘成為可能,為我們帶來更為全面乃至意想不到的結果。
關聯分析是一種非監督式的機器學習算法,“啤酒與尿布”的數據挖掘經典案例要說明的即是這種算法。關聯分析主要有兩個關鍵概念,即頻繁項集和關聯規則。頻繁項集(frequent item sets)是從所有對象組成的候選項集(items sets)中發現的經常一起出現的對象集合。其中,頻繁的概念可以用支持度來定義。支持度(support)被定義為數據集中包含該項集的記錄所占的比例,保留滿足最小支持度的項集;關聯規則(association rules) 暗示兩種事物之間可能存在很強的關系。關聯的概念可用置信度或可信度來定義[3] 。
結合數據中心具體場景,即通過日常積累的大量系統歷史告警信息及運維方案知識庫,分析系統告警信息與變更處理方案間的關聯關系,從而依據告警信息預測出未來可能發生的變更維護。我們將告警信息與變更都看作候選項集(Items sets,I),通過變更維護平臺及工單系統得到監控告警與變更間的關聯信息數據庫(Database,D),庫中每一項為一次事件(Transaction,T),如某次變更內容為文件系統擴容,通過變更管理平臺上的信息得知此項變更是由于文件系統使用率超過90% 告警而引發。采用經典的Apriori 算法,從歷史大規模監控告警以及變更信息中尋找兩者之間的隱含關系。設最小支持度為20%,算法過程如下。
第一步,經過算法的第一次迭代,對事務數據庫進行一次掃描,計算出D 中所包含的每個項目出現的次數,生成候選1?項集的集合C1。
第二步,根據設定的最小支持度,從C1 中確定頻繁1?項集L1。
第三步,由L1 產生候選2?項集C2,然后掃描事務數據庫對C2 中的項集進行計數。
第四步,根據最小支持度,從候選集C2 中確定頻繁集L2。
第五步,由頻繁2?項集L2 生成候選3?項集C3。
循環上述過程,直到Ck 為空,沒有符合最小支持度的候選集合為止。
由此找到了頻繁項集(frequent item sets),可以得出集合中系統告警信息與變更之間的支持度(support)與置信度(confidence),來描述告警信息A 與變更B 間的并集在所有事務集合中出現的概率support(A B)= P(A U B),以及所有事務中出現告警A 之后,出現變更B 的置信度P(B|A),即confidence (A B)。
通過上述方法,基于大量歷史告警信息與變更行為之間的關聯分析,得到告警信息與變更間的關聯關系,當后續產生新的告警信息時,通過比對關聯關系預測出近期可能出現的變更行為。比對預測結果與變更管理平臺變更信息,為違規變更操作內控檢查提供依據。
2.4.2 變更實施方案風險預測研究變更是影響系統穩定運行的重要因素之一[4] ,因此科學、全面評估變更可能對生產運行造成影響的實施風險程度具有重要意義,分類算法較適用此場景。
我們采用基于樸素貝葉斯的文本分類算法,將變更實施風險程度劃分為高、中、低三類,通過歷史變更信息以及對應實施風險高、中、低評判數據的訓練學習以建立分類器,后續新變更產生時通過分類器預測其分別屬于高、中、低實施風險的概率。
第一步是準備工作階段。將變更步驟中詳細的操作命令,進行分詞及TF?IDF 計算,得到變更步驟中的命令及命令頻率,某變更步驟就可以表示為向量d=(t1,t2,…,tk),tk 是該變更步驟中出現過的命令,通過變更管理平臺結合已有知識庫中的歷史變更步驟及其實施風險(高,中,低),經分詞得到訓練樣本數據。
第二步是分類器訓練階段。計算得到如下兩個概率值:“先驗概率P(risk)= 某類實施風險下命令總數/ 整個訓練樣本的命令總數” “類條件概率P(tk |risk)= (某類實施風險下命令tk 在各個變更方案中出現過的次數之和+1) / (某類實施風險下的單詞總數+|V|)”,V 是訓練樣本的命令表,|V|則表示訓練樣本包含多少種命令。
第三步是應用階段。后續有新的變更出現,通過分詞方法得到文檔向量d=(t1,t2,..,tk),采用樸素貝葉斯文本分類算法的多項式模型,結合先驗概率P(risk) 與類條件概率P(tk|risk),計算出P(risk|d)=P(risk|(t1,t2,…,tk)),即此變更方案的實施風險分別屬于高、中、低三種情況的概率。例如,給定某變更方案,屬于高風險的概率為0.005,屬于中風險的概率為0.002,屬于低風險的概率為0.003。
3結束語
大數據運維內控管理平臺引入了大數據、機器學習等新技術,從數據中心日常運維積累的龐大多結構化數據中挖掘出對內控管理有價值的數據,分為人員畫像(Persona )、規范分析( Prescriptive )、風險防范(Prevent)和行為預測(Predictive)四個維度,強化運維內控的事前管理能力、加固運維內控的事中監督機制、提升運維內控的事后管理效率,實現了全面、精準、高效、量化的內控管理,為數據中心安全保駕護航。