本發(fā)明涉及高校教學(xué)服務(wù)器系統(tǒng)領(lǐng)域。更具體地,涉及一種用于高校教學(xué)服務(wù)器故障診斷的方法及專家系統(tǒng)。
背景技術(shù):
隨著高校辦學(xué)規(guī)模的不斷擴(kuò)大和學(xué)生數(shù)量的不斷增加,現(xiàn)代化的教學(xué)方式已經(jīng)離不開教學(xué)服務(wù)器的輔助。雖然近些年來(lái)云計(jì)算技術(shù)發(fā)展迅速,高??梢宰庥迷瀑Y源作為教學(xué)服務(wù)器,但多數(shù)高校仍然選擇就近部署服務(wù)器在各子單位的機(jī)房中,用于滿足不同子單位的教學(xué)及管理需求。
服務(wù)器數(shù)量的不斷增加,給學(xué)校IT服務(wù)人員日常維護(hù)及故障排查帶來(lái)了極大的不便,主要體現(xiàn)在:
(1)IT服務(wù)人員由于不清楚出現(xiàn)故障的教學(xué)服務(wù)器的問(wèn)題原因,經(jīng)常要去現(xiàn)場(chǎng)排查,大大延長(zhǎng)了維修時(shí)間;
(2)由于服務(wù)器的數(shù)量很可能非常多,其地理位置分散,需要很多IT服務(wù)人員共同協(xié)作完成檢修,大大增加了人力資源成本;
(3)對(duì)于一些故障很難確定原因,對(duì)于低級(jí)別的IT服務(wù)人員根本無(wú)法判斷故障原因所在,也無(wú)法給出處理方法,而專家的數(shù)量有限,造成一些故障很難在第一時(shí)間得到解決,影響教學(xué)需要。
與現(xiàn)有的IT服務(wù)人員直接進(jìn)行日常維護(hù)及故障排查不同,專家系統(tǒng)是一個(gè)智能計(jì)算機(jī)程序系統(tǒng),其內(nèi)部含有大量的某個(gè)領(lǐng)域?qū)<宜降闹R(shí)與經(jīng)驗(yàn),能夠利用人類專家的知識(shí)和解決問(wèn)題的方法來(lái)處理該領(lǐng)域問(wèn)題。因此,專家系統(tǒng)是一個(gè)具有大量專門知識(shí)與經(jīng)驗(yàn)的程序系統(tǒng),應(yīng)用人工智能技術(shù)和計(jì)算機(jī)技術(shù),根據(jù)某領(lǐng)域一個(gè)或多個(gè)專家提供的知識(shí)和經(jīng)驗(yàn),進(jìn)行推理和判斷,模擬人類專家的決策過(guò)程,以便解決那些需要人類專家處理的復(fù)雜問(wèn)題。簡(jiǎn)而言之,專家系統(tǒng)是一種模擬人類專家解決領(lǐng)域問(wèn)題的計(jì)算機(jī)程序系統(tǒng)。
因此,需要提供一種用于高校教學(xué)服務(wù)器故障診斷的方法及專家系統(tǒng),用于解決上述不便,及時(shí)給出故障服務(wù)器的失效原因及解決方法,降低人力資源成本,提高高校教學(xué)服務(wù)器的日常維護(hù)和故障診斷效率,滿足教學(xué)及管理需求。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的一個(gè)目的在于提供一種用于高校教學(xué)服務(wù)器故障診斷的方法,用于高校教學(xué)服務(wù)器的故障診斷檢測(cè)與診斷。
本發(fā)明基于教學(xué)服務(wù)器集群的故障信息采集和整理,分析并建立故障診斷專家系統(tǒng),在對(duì)教學(xué)服務(wù)器集群日志故障信息分析的基礎(chǔ)上,設(shè)計(jì)生成故障樹,進(jìn)一步通過(guò)故障樹知識(shí)建立專家系統(tǒng)的知識(shí)庫(kù),并根據(jù)該知識(shí)庫(kù)進(jìn)行故障診斷,用于高校教學(xué)服務(wù)器的日常維護(hù)和故障診斷,實(shí)現(xiàn)教學(xué)服務(wù)器故障診斷專家系統(tǒng)的功能。
為達(dá)到上述目的,本發(fā)明采用下述技術(shù)方案:
一種用于高校教學(xué)服務(wù)器的故障診斷方法,該方法包括以下步驟:
獲得專家知識(shí);
基于專家知識(shí)建立故障樹;
將故障樹存儲(chǔ)于知識(shí)庫(kù)中;
獲取教學(xué)服務(wù)器集群的故障信息;
將故障信息存儲(chǔ)于輔助存儲(chǔ)庫(kù)中;
將故障樹與故障信息進(jìn)行比對(duì),獲得服務(wù)器故障處理辦法;
對(duì)故障處理辦法進(jìn)行解釋;
輸出解釋過(guò)的故障處理辦法。
優(yōu)選地,故障樹還包括每個(gè)故障的邏輯表、條件表、結(jié)論表和數(shù)據(jù)集表,其中
邏輯表,包括邏輯推理代碼字段、邏輯名稱字段、邏輯描述字段和邏輯分類字段;
條件表,用于存放與該邏輯推理代碼相匹配的條件信息;
結(jié)論表,用于存放決策信息;
數(shù)據(jù)集表,用于保存推理過(guò)程中條件值類型、范圍和默認(rèn)值信息。
進(jìn)一步優(yōu)選地,步驟“將故障樹與故障信息進(jìn)行比對(duì),獲得服務(wù)器故障處理辦法”具體包括:
推理機(jī)從輔助存儲(chǔ)庫(kù)中讀取故障信息,并提取故障信息描述關(guān)鍵詞;
通過(guò)模糊匹配算法計(jì)算匹配相似度來(lái)區(qū)分故障信息類別,并以此建立故障類別優(yōu)先級(jí)排序;
逐一讀取知識(shí)庫(kù)中邏輯表優(yōu)先級(jí)最高的故障樹規(guī)則;
通過(guò)讀取與之關(guān)聯(lián)的條件表和數(shù)據(jù)集表中提供的條件值,與故障發(fā)生時(shí)的對(duì)應(yīng)參數(shù)值進(jìn)行對(duì)比,若條件滿足,則選取該故障樹規(guī)則;若條件不滿足,則進(jìn)入下一個(gè)低級(jí)別優(yōu)先級(jí)故障類別中;
重復(fù)上述步驟直至找到與之匹配的故障樹規(guī)則;
讀取與該故障樹相關(guān)聯(lián)結(jié)論表中的決策信息,完成本次推理工作。
優(yōu)選地,專家知識(shí)通過(guò)人機(jī)交互模塊獲得,包括基于對(duì)教學(xué)服務(wù)器故障產(chǎn)生原因分析得出的故障樹邏輯。
優(yōu)選地,知識(shí)庫(kù)包括用于保存故障樹中的規(guī)則,每一條規(guī)則由多個(gè)IF<條件>與Then<結(jié)論>組成。
優(yōu)選地,故障信息獲取模塊實(shí)時(shí)獲取各個(gè)教學(xué)服務(wù)器集群的故障信息。
優(yōu)選地,輔助存儲(chǔ)庫(kù)用于保存故障信息,包括故障發(fā)生具體時(shí)間、位置、表現(xiàn)、優(yōu)先級(jí)、以及關(guān)聯(lián)信息。
優(yōu)選地,知識(shí)庫(kù)與輔助存儲(chǔ)庫(kù)為MySQL關(guān)系型數(shù)據(jù)庫(kù)。
本發(fā)明的另一個(gè)目的在于提供一種應(yīng)用上述專家系統(tǒng)的教學(xué)服務(wù)器故障診斷的專家系統(tǒng)。
一種用于高校教學(xué)服務(wù)器故障診斷的專家系統(tǒng),該專家系統(tǒng)包括人機(jī)交互模塊、故障樹建立模塊、知識(shí)庫(kù)、故障信息獲取模塊、輔助存儲(chǔ)庫(kù)、推理機(jī)和解釋器;故障樹建立模塊基于通過(guò)人機(jī)交互模塊獲得的專家信息建立故障樹并存儲(chǔ)于知識(shí)庫(kù)中,故障信息獲取模塊用于獲得教學(xué)服務(wù)器集群的故障信息并存儲(chǔ)于輔助存儲(chǔ)庫(kù)中,解釋器通過(guò)將故障信息與故障樹進(jìn)行比對(duì)得出故障處理辦法,解釋器將故障處理辦法進(jìn)行解釋并通過(guò)人機(jī)交互模塊輸出。
本發(fā)明的有益效果如下:
本發(fā)明采取故障樹分析方法準(zhǔn)確找出服務(wù)器出現(xiàn)故障原因并給出檢修方案,可用于高校教學(xué)用服務(wù)器的故障診斷及維護(hù)使用,克服了原有面臨IT服務(wù)人員短缺而無(wú)法及時(shí)做出修復(fù)的不便,大幅度降低高校教學(xué)服務(wù)器運(yùn)行成本和維護(hù)費(fèi)用,顯著提高服務(wù)器的穩(wěn)定性及可靠性。
附圖說(shuō)明
下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式作進(jìn)一步詳細(xì)的說(shuō)明。
圖1示出用于高校教學(xué)服務(wù)器故障診斷的專家系統(tǒng)的組成示意圖。
圖2示出用于高校教學(xué)服務(wù)器的故障診斷方法步驟圖。
圖3示出實(shí)施例中故障信息描述表。
具體實(shí)施方式
為了更清楚地說(shuō)明本發(fā)明,下面結(jié)合優(yōu)選實(shí)施例和附圖對(duì)本發(fā)明做進(jìn)一步的說(shuō)明。附圖中相似的部件以相同的附圖標(biāo)記進(jìn)行表示。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,下面所具體描述的內(nèi)容是說(shuō)明性的而非限制性的,不應(yīng)以此限制本發(fā)明的保護(hù)范圍。
本發(fā)明基于教學(xué)服務(wù)器集群的故障信息采集和整理,分析并建立故障診斷專家系統(tǒng),在對(duì)教學(xué)服務(wù)器集群日志故障信息分析的基礎(chǔ)上,設(shè)計(jì)生成故障樹,進(jìn)一步通過(guò)故障樹知識(shí)建立專家系統(tǒng)的知識(shí)庫(kù),并根據(jù)該知識(shí)庫(kù)進(jìn)行故障診斷,用于高校教學(xué)服務(wù)器的日常維護(hù)和故障診斷,實(shí)現(xiàn)教學(xué)服務(wù)器故障診斷專家系統(tǒng)的功能。
本發(fā)明中,一種用于高校教學(xué)服務(wù)器故障診斷的專家系統(tǒng),該專家系統(tǒng)包括人機(jī)交互模塊、故障樹建立模塊、知識(shí)庫(kù)、故障信息獲取模塊、輔助存儲(chǔ)庫(kù)、推理機(jī)和解釋器;故障樹建立模塊基于通過(guò)人機(jī)交互模塊獲得的專家信息建立故障樹并存儲(chǔ)于知識(shí)庫(kù)中,故障信息獲取模塊用于獲得教學(xué)服務(wù)器集群的故障信息并存儲(chǔ)于輔助存儲(chǔ)庫(kù)中,解釋器通過(guò)將故障信息與故障樹進(jìn)行比對(duì)得出故障處理辦法,解釋器將故障處理辦法進(jìn)行解釋并通過(guò)人機(jī)交互模塊輸出。
下面對(duì)本發(fā)明中的各模塊做進(jìn)一步地解釋:人機(jī)交互模塊指人機(jī)接口,人機(jī)接口是指人與計(jì)算機(jī)之間建立聯(lián)系、交換信息的輸入/輸出設(shè)備的接口,這些設(shè)備包括鍵盤、顯示器、打印機(jī)、鼠標(biāo)器等;知識(shí)庫(kù)是結(jié)構(gòu)化、易操作、易利用、全面有組織的知識(shí)集群,是針對(duì)高校教學(xué)服務(wù)器故障診斷需要,采用存儲(chǔ)、組織、管理和使用的互相聯(lián)系的知識(shí)片集合;輔助存儲(chǔ)庫(kù)為一種數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)(Database)是按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù);推理機(jī)(Inference Engine)是專家系統(tǒng)中實(shí)現(xiàn)基于知識(shí)推理的部件,是基于知識(shí)的推理在計(jì)算機(jī)中的實(shí)現(xiàn),主要包括推理和控制二個(gè)方面,是知識(shí)系統(tǒng)中不可缺少的重要組成部分;解釋器(Interpreter),又譯為直譯器,是一種計(jì)算機(jī)程序,能夠把本發(fā)明中推理機(jī)產(chǎn)生的決策信息逐行直接轉(zhuǎn)譯成用戶可以識(shí)別的文本信息。
本發(fā)明中,一種用于高校教學(xué)服務(wù)器的故障診斷方法,該方法包括以下步驟:
步驟一:獲得專家知識(shí),專家知識(shí)通過(guò)人機(jī)交互模塊獲得,包括基于對(duì)教學(xué)服務(wù)器故障產(chǎn)生原因分析得出的故障樹邏輯。
步驟二:基于專家知識(shí)建立故障樹,故障樹還包括每個(gè)故障的邏輯表、條件表、結(jié)論表和數(shù)據(jù)集表,其中邏輯表,包括邏輯推理代碼字段、邏輯名稱字段、邏輯描述字段和邏輯分類字段;條件表,用于存放與該邏輯推理代碼相匹配的條件信息;結(jié)論表,用于存放決策信息;數(shù)據(jù)集表,用于保存推理過(guò)程中條件值類型、范圍和默認(rèn)值信息。
步驟三:將故障樹存儲(chǔ)于知識(shí)庫(kù)中,知識(shí)庫(kù)包括用于保存故障樹中的規(guī)則,每一條規(guī)則由多個(gè)IF<條件>與Then<結(jié)論>組成。
步驟四:獲取教學(xué)服務(wù)器集群的故障信息,故障信息獲取模塊實(shí)時(shí)獲取各個(gè)教學(xué)服務(wù)器集群的故障信息。
步驟五:將故障信息存儲(chǔ)于輔助存儲(chǔ)庫(kù)中,輔助存儲(chǔ)庫(kù)用于保存故障信息,包括故障發(fā)生具體時(shí)間、位置、表現(xiàn)、優(yōu)先級(jí)、以及關(guān)聯(lián)信息。
本發(fā)明中,知識(shí)庫(kù)與輔助存儲(chǔ)庫(kù)為MySQL關(guān)系型數(shù)據(jù)庫(kù)。
步驟六:將故障樹與故障信息進(jìn)行比對(duì),獲得服務(wù)器故障處理辦法,具體包括以下步驟:推理機(jī)從輔助存儲(chǔ)庫(kù)中讀取故障信息,并提取故障信息描述關(guān)鍵詞;通過(guò)模糊匹配方法計(jì)算匹配相似度來(lái)區(qū)分故障信息類別,并以此建立故障類別優(yōu)先級(jí)排序;逐一讀取知識(shí)庫(kù)中邏輯表優(yōu)先級(jí)最高的故障樹規(guī)則;通過(guò)讀取與之關(guān)聯(lián)的條件表和數(shù)據(jù)集表中提供的條件值,與故障發(fā)生時(shí)的對(duì)應(yīng)參數(shù)值進(jìn)行對(duì)比,若條件滿足,則選取該故障樹規(guī)則;若條件不滿足,則進(jìn)入下一個(gè)低級(jí)別優(yōu)先級(jí)故障類別中;重復(fù)上述步驟直至找到與之匹配的故障樹規(guī)則;讀取與該故障樹相關(guān)聯(lián)結(jié)論表中的決策信息,完成本次推理工作。
步驟七:對(duì)故障處理辦法進(jìn)行解釋,解釋器將處理辦法翻譯成用戶可以識(shí)別的文字信息。
步驟八:通過(guò)人機(jī)交互模塊輸出解釋過(guò)的故障處理辦法,用于幫助前端IT服務(wù)人員解決服務(wù)器故障。
本發(fā)明中,用于高校教學(xué)服務(wù)器故障診斷的方法及專家系統(tǒng),其工作方式如下:(1)、專家或IT服務(wù)人員分析服務(wù)器的故障原因,并考慮可能的故障因素,設(shè)計(jì)并生成故障樹;(2)、保存故障樹至知識(shí)庫(kù);(3)、故障信息獲取模塊實(shí)時(shí)采集各服務(wù)器集群的故障信息;(4)、根據(jù)采集到的故障信息調(diào)用推理機(jī)結(jié)合知識(shí)庫(kù)判定產(chǎn)生故障的原因;(5)、生成故障解決方案至人機(jī)界面,供前端IT服務(wù)人員用于解決服務(wù)器故障。
下面結(jié)合一個(gè)具體實(shí)施例進(jìn)行說(shuō)明
如圖1所示,一種用于高校教學(xué)服務(wù)器故障診斷的專家系統(tǒng),該專家系統(tǒng)包括人機(jī)交互模塊、故障樹建立模塊、知識(shí)庫(kù)、故障信息獲取模塊、輔助存儲(chǔ)庫(kù)、推理機(jī)和解釋器;故障樹建立模塊基于通過(guò)人機(jī)交互模塊獲得的專家信息建立故障樹并存儲(chǔ)于知識(shí)庫(kù)中,故障信息獲取模塊用于獲得教學(xué)服務(wù)器集群的故障信息并存儲(chǔ)于輔助存儲(chǔ)庫(kù)中,解釋器通過(guò)將故障信息與故障樹進(jìn)行比對(duì)得出故障處理辦法,解釋器將故障處理辦法進(jìn)行解釋并通過(guò)人機(jī)交互模塊輸出。上述專家系統(tǒng)支持Window、Linux操作系統(tǒng),通過(guò)以太網(wǎng)與教學(xué)服務(wù)器相連接。
如圖2所示,一種用于高校教學(xué)服務(wù)器的故障診斷方法,該方法包括以下步驟:
首先專家或IT服務(wù)人員通過(guò)分析教學(xué)服務(wù)器故障產(chǎn)生原因,給出故障樹邏輯,通過(guò)故障樹建立模塊預(yù)置數(shù)據(jù)庫(kù)并保存故障樹;故障信息獲取模塊實(shí)時(shí)采集教學(xué)服務(wù)器集群中故障信息,并保存至輔助存儲(chǔ)庫(kù);推理機(jī)通過(guò)輔助存儲(chǔ)返回的故障信息,與知識(shí)庫(kù)中存在的故障樹進(jìn)行比對(duì),獲得服務(wù)器故障處理辦法,通過(guò)解釋器模塊把處理辦法翻譯成用戶可以識(shí)別的文字信息;在推理的過(guò)程中,若遇到故障樹中某一信息缺失,則該信息可以通過(guò)詢問(wèn)用戶方式獲取。
本實(shí)施例中,一個(gè)具體的故障信息描述表如圖3所示。
推理機(jī)中故障樹與故障信息比對(duì)算法描述如下:1)推理機(jī)從輔助存儲(chǔ)數(shù)據(jù)庫(kù)中讀取一條故障信息,并提取故障信息描述關(guān)鍵詞,通過(guò)模糊匹配方法計(jì)算匹配相似度來(lái)區(qū)分故障信息類別,并以此建立故障類別優(yōu)先級(jí)排序,如W1->W2->W3;2)根據(jù)預(yù)先設(shè)置的故障診斷程序,在優(yōu)先級(jí)高的故障類別中逐一讀取知識(shí)庫(kù)邏輯表(LogicTable)中W類別中故障樹規(guī)則,通過(guò)讀取與之關(guān)聯(lián)的條件表(ConditionTable)和數(shù)據(jù)集表(DatasetTable)中提供的條件值,并與故障發(fā)生時(shí)的對(duì)應(yīng)參數(shù)值進(jìn)行對(duì)比,若條件滿足,則選取故障樹規(guī)則;若條件不滿足,進(jìn)入下一個(gè)低級(jí)別優(yōu)先級(jí)故障類別中,重復(fù)2)直到找到與之匹配的故障樹規(guī)則;3)讀取與該故障樹相關(guān)聯(lián)結(jié)論表(ConclusionTable)中的決策信息,完成本次推理工作。
該故障診斷的專家系統(tǒng),可單獨(dú)部署在一個(gè)的服務(wù)器上,通過(guò)局域網(wǎng)與教學(xué)服務(wù)器集群進(jìn)行連接,適用于目前主流的操作系統(tǒng)(如Windows、Linux系列),實(shí)現(xiàn)跨平臺(tái)連接。知識(shí)庫(kù)與輔助存儲(chǔ)都采用MySQL關(guān)系型數(shù)據(jù)庫(kù)。知識(shí)庫(kù)用于保存故障樹中的所有規(guī)則,每一條規(guī)則由若干IF<條件>與Then<結(jié)論>組成。輔助存儲(chǔ)用于保存故障信息,包括故障發(fā)生具體時(shí)間、位置、表現(xiàn)、優(yōu)先級(jí)、以及關(guān)聯(lián)信息(包括電源、散熱空調(diào)等輔助設(shè)施狀況)。
故障樹規(guī)則設(shè)計(jì)是以處理策略的推理邏輯為基礎(chǔ),本發(fā)明設(shè)計(jì)四個(gè)基本的表結(jié)構(gòu),分別是:1)邏輯表(LogicTable),其中包含邏輯推理代碼字段(LogicID)、邏輯名稱字段(LogicName)、邏輯描述字段(LogicDescription)、邏輯分類字段(LogicClassification);2)條件表(ConditionTable)存放與該邏輯推理代碼相匹配的條件信息;3)結(jié)論表(ConclusionTable)中存放決策有關(guān)的信息;4)數(shù)據(jù)集表(DatasetTable)用于保存推理過(guò)程中條件值類型、范圍、默認(rèn)值信息。四個(gè)表中都包含LogicID字段作為唯一主鍵,實(shí)現(xiàn)各表結(jié)構(gòu)之間的關(guān)聯(lián)。在實(shí)施過(guò)程中,一條故障樹規(guī)則被分解成上述4類信息,分別存放于上述四個(gè)表中。比如更換服務(wù)器電源規(guī)則存儲(chǔ)表示如下:LogicTable表存放ReplacePower(LogicID字段),更換服務(wù)器電源(LogicName字段);條件表中存放條件名稱(如該故障服務(wù)器的停機(jī)時(shí)間tstop、間隔停機(jī)次數(shù)ninterval);數(shù)據(jù)詞典表中提供電源故障狀態(tài)下停機(jī)時(shí)間值tz1與間隔停機(jī)次數(shù)值nz1;結(jié)論表中用于存放電源狀態(tài)結(jié)論電源工作異常pfault及處理策略建議更換電源策略tr1。高校教學(xué)服務(wù)器故障診斷專家知識(shí)庫(kù)的建立是以有經(jīng)驗(yàn)的IT服務(wù)人員提供的知識(shí)為依據(jù),根據(jù)故障樹建立模塊進(jìn)行提取,細(xì)分成邏輯描述,分別對(duì)應(yīng)上述四個(gè)表中,形成知識(shí)庫(kù)。
以故障樹規(guī)則中電源更換邏輯舉例如下:
本發(fā)明中高校教學(xué)服務(wù)器故障診斷的方法及專家系統(tǒng),能實(shí)現(xiàn)遠(yuǎn)程診斷高校教學(xué)服務(wù)器故障,便于IT服務(wù)人員實(shí)時(shí)準(zhǔn)確定位故障地點(diǎn),給出故障原因及維修辦法,節(jié)約了維修時(shí)間與成本。
顯然,本發(fā)明的上述實(shí)施例僅僅是為清楚地說(shuō)明本發(fā)明所作的舉例,而并非是對(duì)本發(fā)明的實(shí)施方式的限定,對(duì)于所屬領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在上述說(shuō)明的基礎(chǔ)上還可以做出其它不同形式的變化或變動(dòng),這里無(wú)法對(duì)所有的實(shí)施方式予以窮舉,凡是屬于本發(fā)明的技術(shù)方案所引伸出的顯而易見的變化或變動(dòng)仍處于本發(fā)明的保護(hù)范圍之列。