王麗君, 張銀鐵, 萬晶
(國網電力科學研究院有限公司, 南京 江蘇 211106)
智能運維相較于傳統運維更能滿足大數據時代的需求,近年來隨著機器學習技術發展,將人工智能與IT運維相結合,出現了智能運維技術。數據中心信息系統故障檢測、故障預測及故障恢復技術是確保數據中心正常運營的重要支撐,相關研究在近幾年迅速成為熱點。
通過故障檢測技術,能利用信息系統當前及過去狀態檢測出已出現的故障。而故障預測技術能根據當前的系統狀態預測出未來時刻系統可能會出現的狀況,主要是為了避免信息系統出現故障,在故障發生前進行預測并采用相應的故障預防策略避免故障的發生,也可幫助縮短故障恢復時間,提高系統的安全性、可靠性與可用性。故障恢復技術是在故障發生并檢測出來后根據運維經驗及故障恢復策略,將信息系統盡可能恢復至故障發生前的狀態,保證系統能繼續正常運行。近幾年來,企業運維人員和研究者們越來越關注預防性運維技術[1]。Ahmed F, Erman J等[2]在 2015 年提出了一種端到端的異常檢測與定位方法,但是該方法只是根據關聯規則挖掘描述了一個大概的方案,并沒有具體的方案細節。Qingwei Lin等[3]針對問題報告數量這一多維監測指標提出了名為 iDice 根因分析算法,該算法通過三種剪枝策略來減少各維度下屬性值之間的組合,從而減少運維人員的工作量。清華大學和百度公司在 2018 年提出一種名為 HotSpot 的根因分析算法[4],該算法將根因分析轉化為一個巨大的空間搜索問題,通過啟發式的搜索算法來定位導致異常發生的根本原因。故障預測可以幫助運維人員進行預防性運維,預測時間與信息系統的可靠性緊密相關[5]。
故障恢復方面的研究主要聚焦在高可用系統的設計上[6-7]。文獻[8]提出了一種全新的雙機熱備算法,該算法基于共享存儲,并實現了一種虛擬機層面的故障恢復工具集。故障預測聚焦于在線故障預測[9],可采用分類算法的評價指標——準確率、召回率和 F-Measure,作為故障預測能力的評價指標[10]。對于故障檢測方法的評價,可采用檢測準確、誤檢率和平均檢測準確率作為評價指標[11-12]。
目前,國內外有關故障檢測、故障預測和故障恢復技術的研究有不少,在故障檢測和預測領域,相關研究中通常會采取經典評價指標來驗證故障檢測和預測方法的準確性、有效性。然而,故障恢復能力評估方面研究并不多見,也沒有統一的評價方法。因此,關于故障恢復能力的評估方法研究還存在較大的研究空間,本文針對數據中心保障要點與故障恢復驗證方法進行了研究。
為了從整體評估數據中心保障要點與故障恢復能力,構建主機、系統、網絡、數據庫、中間件等運維對象恢復評估模型,構建了智能運維五維模型。覆蓋從業務、事務、拓撲、物理鏈路和基礎設施多維度,貫穿業務和軟硬件資源,既是運維保障的要點,也是輔助運維人員快速判斷故障恢復成效的評價方法。
構建的五維模型,共分為5個維度,自下而上分別是:基礎設施層、物理鏈路層、邏輯拓撲層、功能事務層、業務流程層。邏輯關系是業務流程依賴功能節點的運行支撐,功能事務運行在邏輯架構上,邏輯架構運行在物理設備中,物理設備運行在基礎設施環境中。如圖1所示。

圖1 五維模型
這五個維度含義介紹如下。
(1) 業務流程層:記錄了系統業務對應的功能項,以及業務流程間的依賴關系。每個功能都對應系統的一個菜單按鈕,菜單按鈕又對應該按鈕訪問的后臺的URL路徑。研究不同業務恢復驗證的核心業務流包括哪些,例如查詢、交易等核心流程等,這是保障和恢復要點中必須最終確認的內容;
(2) 功能事務層:記錄了在系統運行時軟件內的請求調用關系,主要包含請求的發起源信息、目的信息以及整個請求的用時等信息,同時還包括代碼的調用棧信息以及SQL的執行信息。支持業務流程的功能節點或程序集成的狀態,可判斷各功能是否處于正常運行中,資源消費是否正常等,避免僵尸進程等虛假運行狀態;
(3) 邏輯拓層:記錄了軟件連接關系與軟件運行指標、日志,軟件連接關系主要包括業務系統中間件之間的連接關系,負載均衡與應用的連接關系,應用系統與數據庫的連接關系,軟件集群、數據庫集群或RAC(oracle)的連接關系。指標主要為應用系統工單量、業務量、數據庫連接并發讀寫、中間件隊列等指標。日志主要包含中間件、數據庫自身的日志,也包含用戶打印操作等日志。可判斷分析所有應用節點之間的通信是否狀態協調一致,避免任何環節的邏輯不通造成的上層應用失效;
(4) 物理鏈路層:記錄了機房內IT設備的實際連接關系與設備運行指標以及設備運行日志。連接關系主要包含主機與交換機之間的連接關系,主機與負載均衡之間的連接關系,防火墻與交換機之間的連接關系。指標主要包含CPU、內存、IO的使用率,網絡接口的延遲丟包率,存儲的使用率與吞吐量等。日志主要對應主機、網絡、存儲及安全設備的運行日志。可判斷具體承載業務全局的基礎架構設備狀態,如計算設備、存儲設備、網絡設備是否還存在告警或物理缺陷等;
(5) 基礎設施層:記錄了機房的物理設備與動力環境指標。主要指標包括設備臺賬、機房溫度、設備溫度、設備異常告警、設備投運時長等。可判斷影響業務的關鍵基礎設施狀態是否恢復,例如核心網絡鏈路,重要設備的供電和空調環境等狀態。
在第1節中,我們對五維模型進行了介紹。另外,為了更加準確地評估數據中心保障要點與故障恢復能力,將故障檢測時間也作為評估的一個重要指標。因此,根據故障檢測時間、業務流程恢復時間、業務流程恢復程度、功能事務恢復時間、功能事務恢復程度、邏輯拓撲恢復時間、邏輯拓撲恢復程度、物理鏈路恢復時間、物理鏈路恢復程度、基礎設施恢復時間、基礎設施恢復程度等指標,我們可全面考慮數據中心業務及軟硬件資源恢復情況,可全方位評估數據中心保障要點與故障恢復能力。
為了便于在不同場景下評估,將時間類指標進行歸一化,各維度的恢復程度是與故障前的狀態進行比較,用百分比表示。然后,將各指標值加權求和得到故障恢復能力得分,也可利用雷達圖觀察各指標得分,從各維度分析故障恢復能力的優勢與劣勢。
基于歸一化與多維評估的方法,設計評估模型,對數據中心保障要點與故障恢復能力進行量化評估。首先,針對每個時間指標,進行歸一化處理,將這些測試指標值映射到[0,1]的區間之中。然后,對每個測試指標,便可通過歸一化的值,比較好壞的程度。
以故障檢測時間為例,時間越短,表示故障檢測能力越強,歸一化函數式如式(1)。

(1)
其中,t表示采集的時間指標;Tnor表示歸一化的時間指標;tmin表示當時間不超過該值,能力較好,為1;tmax表示當時間超過該值時,能力較差,為0。
為了綜合考慮數據中心保障要點與故障恢復能力,采用加權求和的計算方法,可通過最后得分評估故障恢復能力。根據前面建立的指標體系,提出數據中心保障要點與故障恢復能力評估模型如式(2)。

(2)
其中,y為數據中心保障要點與故障恢復能力綜合得分;xi為第i個指標的得分;wi為第i個指標的權重。
為了便于從各個維度評估數據中心保障要點與故障恢復能力,可以利用雷達圖進行多維指標評價展示。雷達圖形式如圖2所示。

圖2 指標雷達圖
通過雷達圖,可以更直觀地看到各個指標的得分情況,哪些指標的得分較高,哪些指標得分偏低。從而幫助運維人員分析數據中心故障恢復情況,可以反過來為故障檢測與恢復方法提供改進建議。
對某電力系統的電費充值服務注入故障,在一次充值服務中,由于服務器斷網,導致用戶充值失敗。記錄下該故障注入時間點t1,根據故障檢測策略檢測出故障并記錄時間點t2,則故障檢測時間為t2-t1。由第一章所述,該故障涉及到業務流程層和物理鏈路層指標的恢復。然后根據故障恢復策略恢復服務,這個過程所經歷的時間為故障恢復時間,分別記為t3、t4。
根據第1、2章所述的評估方法,得到數據如表1所示。

表1 實驗數據
將故障檢測時間、業務流程層恢復時間和物理鏈路層恢復時間分別設置tmax和tmin,分別為:100、50;50、10;50、10。各指標權重根據可根據實際運維經驗設定,本文設為0.2。
由3.1可得到,score=0.2×0.88+0.2×0.875+0.2×1+0.2×0.825+0.2×1=0.916。根據評估模型,Score值在[0,1]區間,并且越接近于 1 能力越強,因此判定被測故障恢復能力較強。
隨著機器學習技術的發展,國內外關于數據中心信息系統故障檢測、故障預測和故障恢復技術的研究成為熱點。在故障檢測和預測領域,相關研究中通常會采取經典評價指標來驗證故障檢測和預測方法的準確性、有效性。但是對于數據中心保障要點與故障恢復能力的評估方法研究還非常少,且不成體系。因此,本文聚焦數據中心保障要點與故障恢復驗證方法研究,構建包含主機、系統、網絡、數據庫、中間件等運維對象恢復評估模型,形成智能運五維模型,覆蓋從業務、事務、拓撲、物理鏈路和基礎設施多維度,貫穿業務和軟硬件資源,全面評估數據中心保障要點與故障恢復能力。