一種基于ipmi的冗余計算機系統(tǒng)節(jié)點故障主被動檢測方法
【專利摘要】本發(fā)明公開了一種冗余計算機系統(tǒng)的故障主被動檢測方法。該方法包括第一步:利用冗余待測計算機的IPMI標準接口,故障檢測模塊實時收集冗余系統(tǒng)中待測的主用計算機和備用計算機的狀態(tài)數(shù)據(jù),收集到一定數(shù)量的運行狀態(tài)數(shù)據(jù)后;第二步:故障檢測模塊通過模式匹配方法診斷待測計算機是否出現(xiàn)運行故障;第三步:依據(jù)給定的系統(tǒng)參數(shù)值,預測主用計算機一段時間內出現(xiàn)故障事件的概率。作為實現(xiàn)多臺計算機冗余系統(tǒng)容錯不可或缺的基礎組件之一,本發(fā)明故障主被動檢測方法能夠在一定程度上降低故障檢測的時間延遲、提高故障檢測的準確性、預測故障發(fā)生概率,以支撐關鍵服務系統(tǒng)的快速失效切換和主動容錯等高可用保障機制。
【專利說明】一種基于IPMI的冗余計算機系統(tǒng)節(jié)點故障主被動檢測方法
【技術領域】
[0001]本發(fā)明屬于多臺計算機冗余系統(tǒng)中的故障主被動檢測方法,特別是一種基于IPMI的冗余計算機系統(tǒng)節(jié)點故障主被動檢測方法。
【背景技術】
[0002]計算機技術的迅猛發(fā)展使得計算機系統(tǒng)被廣泛應用于國民經濟的各行各業(yè),人類社會對計算機信息系統(tǒng)的依賴程度越來越高,各領域對計算機信息系統(tǒng)的可靠性和穩(wěn)定性要求也變得越來越高。不僅航空、航天、艦船這樣的高技術和軍事領域要求高可靠的計算機,而且銀行、證券、交通、石油、化工、鋼鐵等金融和工業(yè)部門也要求具有高可靠的計算機。
[0003]多臺計算機冗余備份是一種有效解決系統(tǒng)可靠性的方案,該技術成本相對較低,具有安裝維護簡單、穩(wěn)定可靠、監(jiān)測直觀等優(yōu)點,在關鍵業(yè)務系統(tǒng)中獲得了廣泛的應用。多臺計算機冗余容錯系統(tǒng)中,一個模塊為主用計算機,用以產生系統(tǒng)的輸出,其余計算機作為備用。采用各種故障檢測技術及故障定位技術來確定發(fā)生故障的計算機,若主用計算機發(fā)生故障,則啟動重構機制,將一個正常的備用計算機轉化為主用計算機,從而保障系統(tǒng)服務的正常。
[0004]故障檢測是實現(xiàn)多臺計算機冗余系統(tǒng)容錯不可或缺的基礎組件之一,面向關鍵服務器的計算機故障檢測技術目前在故障檢測延遲和故障檢測準確性方面仍需要很大改進,難以滿足關鍵服務系統(tǒng)的可靠性需求,尤其是航空、航天、艦船這樣的高技術和軍事領域。雖然越來越多的企業(yè)開始在其生產的設備中支持智能平臺管理接口(IntelligentPlatform Management Interface, IPMI)標準,以監(jiān)控系統(tǒng)中和底層硬件相關的設備組件及有關參數(shù)(如電壓、溫度、風扇),但是目前尚未出現(xiàn)利用IPMI監(jiān)控信息數(shù)據(jù)在多臺計算機冗余系統(tǒng)中實現(xiàn)待測計算機故障主被動檢測的技術方法。
[0005]發(fā)明目的
[0006]本發(fā)明的目的在于提供了一種為冗余計算機系統(tǒng)運行期間故障主被動檢測的方法。
[0007]實現(xiàn)本發(fā)明目的的技術解決方案為:一種基于IPMI的冗余計算機系統(tǒng)節(jié)點故障主被動檢測方法,包括以下步驟:
[0008]步驟1、在所有待測計算機上部署并啟用IPMI功能模塊,并通過標準RJ45接口或串行接口與故障檢測模塊相連接;所有待測計算機構成冗余備份系統(tǒng);所述故障檢測模塊是采用FPGA實現(xiàn)的邏輯功能模塊。
[0009]步驟2、通過IPMI協(xié)議周期性地收集上述冗余系統(tǒng)中主備計算機節(jié)點的運行狀態(tài)信息序列P,所述狀態(tài)信息包括CPU、風扇、內存和部件狀態(tài)數(shù)據(jù);
[0010]步驟3、對步驟2采集到的狀態(tài)信息序列p進行分析,通過模式匹配方法分別對主備計算機節(jié)點的運行狀態(tài)進行故障判定,即故障被動檢測;具體為:
[0011 ] 步驟3-1、對于系統(tǒng)預置樣本庫Q中的某個樣本序列q和采集到的待測計算機狀態(tài)序列P,q G Q,對序列p和q進行平均線性分段,得到N個子序列,N為自然數(shù);對于各子序列中相鄰兩點確定的線段,確定各線段對應的斜率值和斜率反正切值;
[0012]步驟3-2、擬合各子序列中斜率反正切值相近的連續(xù)線段,得到其擬合變換后的斜率反正切值序列Hp[l...trp, 1...N]和Hq[l...trq, 1...N],其中t/為序列p第r個子序列的線段數(shù)目;對于某一個子序列r,r e [1,N],其對應線段擬合變換的具體步驟為:
[0013](a)將 n 初始為 I,即 n=l ;
[0014](b)確定子序列r中第n條線段與第n+1條線段的斜率反正切值之差h=H[n,r] -H[n+1, r],以判定兩條線段間的斜率反正切值的相似程度,其中H[n,r]表示子序列r中第n條線段的斜率反正切值,H[n, r] G Hp [1...tx,1...N]或H[n, r] G Hq[l.? ? tx,1.? ? N];
[0015](c)對斜率反正切值之差h進行判斷,若|h|>=e,則n=n+l,轉到步驟(b),直到完成遍歷子序列r中所有的線段;若|h|〈e,利用一元線性回歸函數(shù),確定出序列r中第11條線段和第n+1條線段對應擬合線段的斜率值R,之后執(zhí)行步驟(d) ; e為判定閾值;
[0016](d)更新擬合變換后的斜率反正切值序列,以arctan (R)取代子序列r中第n條線段的斜率反正切值H[n, r],即H[n, r] =arctan (R),并將子序列r中第n+1條線段對應橫坐標跨度并入第n條線段的橫坐標跨度;
[0017](e)刪除子序列r中第n+1條線段,轉到步驟(b),直到完成遍歷子序列r中所有的線段;
[0018]步驟3-3、重復步驟3-1和步驟3-2,確定序列p與樣本庫Q中所有樣本序列相匹配的子序列數(shù);對于某個樣本序列q,q E Q,確定序列p與q相匹配的子序列數(shù)的具體步驟為:
[0019](I)設定偏離誤差@ >0 ;用E(q)表示序列P與樣本序列q之間匹配的子序列數(shù),E(q)初始為0 ;
[0020](2)若q為故障狀態(tài)的樣本序列,F(xiàn)(q)=l ;若q為非故障狀態(tài)的樣本序列,F(xiàn) (q) =0 ;
[0021](3)確定序列p與樣本序列q之間匹配的子序列數(shù)E (q),具體為:比較序列p和序列q的N個子序列,如果子序列中的線段數(shù)不等,則匹配子序列數(shù)不增加;如果子序列中的線段數(shù)相等,進一步確定出子序列對應線段間的偏差,如果平均偏差小于允許的偏離誤差
3,即
【權利要求】
1.一種基于IPMI的冗余計算機系統(tǒng)節(jié)點故障主被動檢測方法,其特征在于:包括以下步驟: 步驟1、在所有待測計算機上部署并啟用IPMI功能模塊,并通過標準RJ45接口或串行接口與故障檢測模塊相連接;所有待測計算機構成冗余備份系統(tǒng); 步驟2、通過IPMI協(xié)議周期性地收集上述冗余系統(tǒng)中主備計算機節(jié)點的運行狀態(tài)信息序列P,所述狀態(tài)信息包括CPU、風扇、內存和部件狀態(tài)數(shù)據(jù); 步驟3、對步驟2采集到的狀態(tài)信息序列p進行分析,通過模式匹配方法分別對主備計算機節(jié)點的運行狀態(tài)進行故障判定,即故障被動檢測; 步驟4、在給定的系統(tǒng)參數(shù)值的前提下,通過對主用計算機節(jié)點故障進行預測,即故障主動檢測,確定在何時對上述冗余系統(tǒng)實施主動式的主備切換。
2.根據(jù)權利要求1所述的基于IPMI的冗余計算機系統(tǒng)節(jié)點故障主被動檢測方法,其特征在于,步驟I中所述故障檢測模塊是采用FPGA實現(xiàn)的邏輯功能模塊。
3.根據(jù)權利要求1所述的基于IPMI的冗余計算機系統(tǒng)節(jié)點故障主被動檢測方法,其特征在于,步驟3中對步驟2采集到的狀態(tài)信息序列進行分析,通過模式匹配方法對主備計算機節(jié)點的運行狀態(tài)進行故障判定,具體為: 步驟3-1、對于系統(tǒng)預置樣本庫Q中的某個樣本序列q和采集到的待測計算機狀態(tài)序列p,q G Q,對序列p和 q進行平均線性分段,得到N個子序列,N為自然數(shù);對于各子序列中相鄰兩點確定的線段,確定各線段對應的斜率值和斜率反正切值; 步驟3-2、擬合各子序列中斜率反正切值相近的連續(xù)線段,得到其擬合變換后的斜率反正切值序列1...N]和Hq[1...trq, 1...N],其中t/為序列p第r個子序列的線段數(shù)目;對于某一個子序列r,r e [1,N],其對應線段擬合變換的具體步驟為: (a)將n初始為I,即n=l; (b)確定子序列r中第n條線段與第n+1條線段的斜率反正切值之差h=H[n,r]-H[n+1, r],以判定兩條線段間的斜率反正切值的相似程度,其中H[n,r]表示子序列r中第n條線段的斜率反正切值,H[n, r] G Hp [1...tx,1...N]或H[n, r] G Hq[l.? ? tx,1.? ? N]; (c)對斜率反正切值之差h進行判斷,若|h|>=e,則n=n+l,轉到步驟(b),直到完成遍歷子序列r中所有的線段;若|h|〈 e,利用一元線性回歸函數(shù),確定出序列r中第n條線段和第n+1條線段對應擬合線段的斜率值R,之后執(zhí)行步驟(d) ; e為判定閾值; (d)更新擬合變換后的斜率反正切值序列,以arctan(R)取代子序列I 中第n條線段的斜率反正切值H[n, r],即H[n, r] =arctan (R),并將子序列r中第n+1條線段對應橫坐標跨度并入第n條線段的橫坐標跨度; (e)刪除子序列r中第n+1條線段,轉到步驟(b),直到完成遍歷子序列r中所有的線段; 步驟3-3、重復步驟3-1和步驟3-2,確定序列p與樣本庫Q中所有樣本序列相匹配的子序列數(shù);對于某個樣本序列q,q G Q,確定序列P與q相匹配的子序列數(shù)的具體步驟為: (1)設定偏離誤差P>0 ;用E(q)表示序列p與樣本序列q之間匹配的子序列數(shù),E (q)初始為0 ; (2)若q為故障狀態(tài)的樣本序列,F(xiàn)(q)=l ;若q為非故障狀態(tài)的樣本序列,F(xiàn) (q) =0 ;(3)確定序列p與樣本序列q之間匹配的子序列數(shù)E(q),具體為:比較序列p和序列q的N個子序列,如果子序列中的線段數(shù)不等,則匹配子序列數(shù)不增加;如果子序列中的線段數(shù)相等,進一步確定出子序列對應線段間的偏差,如果平均偏差小于允許的偏離誤差P,即
4.根據(jù)權利要求1所述的基于IPMI的冗余計算機系統(tǒng)節(jié)點故障主被動檢測方法,其特征在于,步驟4中在給定系統(tǒng)參數(shù)值的前提下對主用計算機節(jié)點故障進行預測具體為:步驟4-1、利用主用計算機節(jié)點運行故障預測的數(shù)學模型f(x)進行預測:
【文檔編號】G06F11/07GK103617104SQ201310634139
【公開日】2014年3月5日 申請日期:2013年12月1日 優(yōu)先權日:2013年12月1日
【發(fā)明者】徐振朋, 翟永寧, 殷進勇, 楊光年, 李韋韋, 吳茂傳, 蘇培培, 樓智翔, 董奇, 史小犇 申請人:中國船舶重工集團公司第七一六研究所