一種運維自動化系統(tǒng)及方法
【技術領域】
[0001] 本發(fā)明設及一種監(jiān)控分析系統(tǒng),尤其是設及一種信息系統(tǒng)運維自動化系統(tǒng)及方 法。
【背景技術】
[0002] 現(xiàn)有技術目前對各信息系統(tǒng)及網絡情況有告警監(jiān)控,集團信息系統(tǒng)主要通過信息 運維綜合監(jiān)管平臺(IM巧監(jiān)控告警,服務器主機通過主機監(jiān)控系統(tǒng)進行監(jiān)控告警,數據中 屯、機房環(huán)境通過環(huán)控系統(tǒng)進行監(jiān)控告警,網絡通過告警系統(tǒng)監(jiān)控告警,SAP業(yè)務系統(tǒng)通過 OCC進行監(jiān)控告警,但總體各監(jiān)控系統(tǒng)還比較分散,未進行集成整合,同時也缺乏自動化的 故障分析定位,故障分析和形成知識庫和自定義的數據分析模型,實現(xiàn)對隱患、性能瓶頸和 可能事件的預警。同時,集團內服務器集群規(guī)模大、結構復雜,服務器負載隨時間變化,并且 存儲數據量隨時間而積累,一旦服務器某些節(jié)點負載過重或存儲空間溢出,會為整個電力 系統(tǒng)造成巨大損失。
[0003] 根據運維業(yè)務現(xiàn)狀來看,目前服務器、存儲、數據庫等運維不僅耗費大量人力,而 且運維效率底、成本高。現(xiàn)階段,傳統(tǒng)的、被動的、孤立的、半自動式的運維管理模式經常讓 運維部口疲急不堪,其問題主要表現(xiàn)在W下幾個方面:
[0004] 1)無統(tǒng)一的運維平臺 陽〇化]一方面,各個運維監(jiān)控平臺(如信息運維綜合監(jiān)管平臺、主機監(jiān)控系統(tǒng)等)之間相 互獨立工作,運維信息分散、管理不集中,各類資源沒有進行整合,運維管理人員往往需要 對多個平臺進行監(jiān)管,不僅工作量大,而且效率低下;另一方面,服務器各節(jié)點、磁盤各個分 區(qū)使用情況、數據庫及表的使用率等分別使用不同的監(jiān)控查詢機制,可視化效果差,各個監(jiān) 控設備的狀態(tài)信息顯示形式互異,不能對查詢結果進行對比,更不能在全局范圍內統(tǒng)計整 個集群設備狀態(tài)信息,無法實現(xiàn)對集群狀態(tài)信息的全局掌控。
[0006] 2)缺乏危險預測機制
[0007] 由于運維系統(tǒng)缺乏危險預測功能,通常運維人員需要保持24小時開機,時刻要警 惕服務器安全問題的發(fā)生。如果服務器出現(xiàn)故障,或磁盤、數據庫空間寫滿,而運維人員不 能立刻到達現(xiàn)場,會對集團造成重大損失。
[0008] 3)缺乏輔助決策機制
[0009] 當前運維監(jiān)控系統(tǒng)只是簡單扮演"監(jiān)控告警"角色,當各設備的實際監(jiān)測值大于所 設定闊值時,進行告警?,F(xiàn)階段運維監(jiān)控系統(tǒng)普遍缺乏輔助決策機制,當告警、故障出現(xiàn)時 不能有效幫助運維人員進行事務處理,提供指導參考。同時由于運維自動化水平的低下,很 多簡單的故障都需要運維人員手動進行處理,加大了工作負擔。所W,亟需建立輔助決策機 制。
[0010] 為推進運檢自動化管理,提升運檢人員工作效率,提升運維標準化和自動化水平, 實現(xiàn)運維工作可靠、高效和信息系統(tǒng)的"可控、能控、在控",進行運維自動化應用勢在必行。
【發(fā)明內容】
[0011] 本發(fā)明的目的在于克服現(xiàn)有技術的不足,提供一種運維自動化系統(tǒng)及方法,W服 務器集群運維為中屯、,建設統(tǒng)一運維監(jiān)控管理與負載預測系統(tǒng),管理監(jiān)控CPU、內存、磁盤、 數據庫表運行、使用狀態(tài)信息,并設計存儲與預測模型,實現(xiàn)整個服務器運維集群中的存儲 資源預測管理與計算資源分配管理。
[0012] 本發(fā)明的目的是通過W下技術方案來實現(xiàn)的:一種運維自動化系統(tǒng),它包括W下 功能模塊:
[0013] 數據采集模塊:用于通過網管協(xié)議或者日志文件獲取運維系統(tǒng)中各個被監(jiān)控單元 的關鍵性能指標和運行狀態(tài),為運維數據處理、分析W及預測提供數據基礎。
[0014] 預處理與存儲模塊:對數據采集模塊采集得到的數據進行清洗、過濾、補缺失處理 和自動刪除預處理,同時對于結構化和非結構化的數據進行數據轉化和元數據提取,對于 不同類別的運維數據進行分類存儲。
[0015] 預測模塊:根據預處理與存儲模塊處理之后的數據,針對不同的預測方式建立不 同的預測模型并進行預測,所述的預測模塊包括CPU負載預測模塊和磁盤負載預測模塊。
[0016] 算法評價模塊:建立預測模塊的預測算法的評價標準,將實際值與預測算法的預 測值進行對比,建立自學習過程:當預測算法的預測值不滿足規(guī)定誤差時,根據實際值修改 預測模塊的預測模型參數,保證在特定環(huán)境和特定時間內選擇出合適的算法模型。
[0017] 運維監(jiān)控管理模塊:負責和運維管理人員按進行交互,其包括W下子模塊:
[0018] (1)數據展示單元:將數據采集模塊采集到的監(jiān)控單元的數據經過預處理與存儲 模塊的分析和加工之后,向運維管理人員進行展示。
[0019] 似預測信息展示單元:將預測模塊預測得到的CPU負載和磁盤空間使用情況的 預測信息展示給運維管理人員。
[0020] (3)告警單元:監(jiān)聽被監(jiān)控設備的狀態(tài)信息,包括當前狀態(tài)信息和預測狀態(tài)信息, 當設備某一狀態(tài)數據值超過所設置的闊值時,告警模塊將按提前設置好的告警方式進行告 警,并且根據常見運維故障構建知識庫,在做出告警信息的同時并給出輔助決策。
[0021] 所述的數據采集模塊采集的數據來自于集群中主機服務器、數據庫、存儲設備和 監(jiān)控設備,包括非云環(huán)境下的數據采集和云環(huán)境下的數據采集,其中,對于非云環(huán)境下的數 據采集,針對不同的數據采集環(huán)境,提供集中式數據采集和分層式數據采集的框架,并且采 用SY化0G、SNMP、肥B沈RVICE、JMS協(xié)議的采集方式;對于云環(huán)境下的數據采集,提供多級多 域的數據采集框架,直接對云環(huán)境下的中的管理節(jié)點進行數據采集。
[0022] 所述的運維監(jiān)控管理模塊還包括一個用戶管理單元,所述的用戶管理單元用于權 限管理、用戶信息管理、用戶注冊和用戶登錄。
[0023] 所述的告警單元還包括對于有相應權限的用戶提供告警級別設置、告警方式設置 和告警闊值設置子模塊。
[0024] 一種運維自動化的方法,它包括W下步驟:
[00巧]Sl:數據采集,用于通過網管協(xié)議或者日志文件獲取運維系統(tǒng)中各個被監(jiān)控單元 的關鍵性能指標和運行狀態(tài),為運維數據處理、分析W及預測提供數據基礎;
[00%] S2:預處理與存儲,對采集得到的數據進行清洗、過濾、補缺失處理和自動刪除預 處理,同時對于結構化和非結構化的數據進行數據轉化和元數據提取,對于不同類別的運 維數據進行分類存儲;
[0027] S3:預測,利用預處理后的數據,根據不同的預測方式建立不同的預測模型并進行 預測,所述的預測模型包括CPU負載預測模型和磁盤負載預測模型;
[0028]S4:模型評價,建立預測模型的評價標準,將實際值與預測模型的預測值進行對 比,建立自學習過程:當預測模型的預測值不滿足規(guī)定誤差時,根據實際值修改預測模型的 預測模型參數,保證在特定環(huán)境和特定時間內選擇出合適的模型;
[0029] S5 :運維監(jiān)控管理,負責和運維管理人員按進行交互,其包括W下子步驟:
[0030] S51 :數據展示,將采集到的監(jiān)控單元的數據經過預處理與存儲后,向運維管理人 員進行展示;
[00川 S52 :預測信息展示,將預測得到的CPU負載和磁盤空間使用情況展示給運維管理 人員;
[0032]S53:告警,監(jiān)聽被監(jiān)控設備的狀態(tài)信息,包括當前狀態(tài)信息和預測狀態(tài)信息,當設 備某一狀態(tài)數據值超過所設置的闊值時,告警模塊將按提前設置好的告警方式進行告警, 并且根據常見運維故障構建知識庫,在做出告警信息的同時并給出輔助決策。
[0033] 所述的磁盤負載預測模型為磁盤使用空間增長隨業(yè)務量與季節(jié)的變化而變化的 規(guī)律模型,其建模過程包括W下子步驟:
[0034]S311:建立基于時間序列的線性季節(jié)性增長模型,公式如下:
[0035] Yt= (a+bt)+S t+It;
[0036] 式中,yt為磁盤空間使用量,t為時間,St為季節(jié)變化,It為新增業(yè)務上線,a與b 均為常數;
[0037]S312:確定步驟S311中的模型的輸入值,包括W下子步驟:
[0038]A :根據預處理與存儲,獲取服務器磁盤空間的已用空間、增長量、磁盤剩余空間;
[0039]B:通過增長量變化率即平均日增長量增量At'計算得出季節(jié)變化St:設日增長 量為At,平均日增長量增量為At' =Ati-At2,St即為平均日增長量增量At'在[t1,t2] 時間段內的積分值,即
[00川 C:新增業(yè)務上線It與用戶使用量U相關,用戶使用量U由每日業(yè)務點擊量計量, 經業(yè)務數據與磁盤存儲之間的關系計算,獲得新增業(yè)務上線It;
[00創(chuàng) D:通過平均日增長量At'計算得出a與b,a與b的值為線性增長;
[0043]S313:根據步驟S312獲得的磁盤空間使用量yt的數據輸入值帶入步驟S311中的 增長模型,經過計算得到磁盤使用空間值yt;
[0044]S314:根據步驟S313得到的磁盤使用空間值yt,進行反解獲得告警時間,并發(fā)送 至運維監(jiān)控管理模塊;當運維監(jiān)控管理模塊得到數據之后,通知運維監(jiān)控人員進行磁盤容 量擴充或磁盤信息整理。
[0045] 所述的CPU負載預測模型包括基于模式的預測算法模型,其建模過程包括W下子 步驟:
[0046] S321 :獲取經過預處理之后提取出來的CPU運行狀態(tài)信息和CPU自身性能信息的 CPU負載歷史數據,并且計算出各個時間節(jié)點上的CPU負載Load。。。,公式如下:
|;0048] 式中,used_cpu表示已使用的CPU,all_cpu表示總共的CPU,二者均W百萬條指令 每秒MIPS為單位;
[0049] S322 :對輸入的CPU負載歷史數據進行計算預處理,并計算CPU負載在每個時間節(jié) 點上的變化率CR,公式如下:
[0051] 式中,為ti時刻的CPU負載數值,i= 0, 1,2,. ..,n;
[0052] S323 :選取當前模式匹配長度以構造CPU負載歷史數據及當前負載模式、CPU負載 的變化率及當前的變化率模式;
[0053] S324 :對輸入的CPU負載歷史數據進行分段,段數為N,逐段計算相似性程度,包括 W下子步驟:
[0054] S3241 :令變量i的值為0 ;
[0055] S3242 :判斷i的值是否比N小的條件是否符合:
[0056] (1)如果條件不符合進入步驟S325 ;
[0057] 似如果條件符合,包括W下子步驟:
[005引A:計算SDcR(ti)和SDcpu(ti),其中SDcR(ti)表示在CPU歷史記錄數據中從ti-L至。t逛段時間中記錄的CPU負載的標準差,SDcpu(ti)為當前模式記錄的CPU負載的標準差; [0059]B:判斷W下兩個條件中的至少一項是否成立,如果成立則進入步驟S3243,如果 不成立則對i的值進行加1操作之后返回步驟S3242 : 1^0060]條件 1:SDcpu(ti)《SDcpu_threshold;
[006^1]條件 2:SDcpu(ti)《SDcpu_ /TOLERANCE并且SDck(ti)《SDck ^THRESHOLD
[00創(chuàng)式中,SDcp。胃表示相似模式標準的最大CPU負載標準方差, SDcpL)_T0LERANCE表習^ CPU負載標準方差的寬限值,SDttTHKESHaD表示相似模式標準的最大CPU負載變化率標準方 差;
[0063] S3243 :將ti處的SDCK(ti)和SDcpu(ti)加入相似模式集合Q中;
[0064] S325 :將集合Q中的相似模式按距離當前模式時間的遠近進行排序,并賦予不同 權值;
[00化]S326 :將不同權重的相似模式的截止時間點ti點及其對應權重保存在集合P中, 公式如下:
陽067] 式中,Pcpu(ti)表示距當前模式第i個CPU負載模式,i= 0, 1,2, . . .,n;i越大表 示離當前模式的時間越遠,a1表示相似模式i的權重;P? (t。)表示當前CPU負載模式;W側S327 :遍歷集合P,計算各個預測值,比較得到最終預測值;
[0069] S328 :將得到的一