專利名稱:平臺事件過濾系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種平臺事件過濾系統(tǒng)及其實現(xiàn)方法,特別是涉及一種符合智能化平臺管理接口(IPMI)規(guī)范的平臺事件過濾系統(tǒng)及其實現(xiàn)方法。
背景技術(shù):
新經(jīng)濟(jì)時代企業(yè)面臨的一個主要問題是既要保證應(yīng)用系統(tǒng)不間斷運行,又要不斷降低運行成本。誰能更好地控制網(wǎng)絡(luò)管理成本,誰就有可能在競爭中站在前列。
市場的需求決定著技術(shù)與產(chǎn)業(yè)的發(fā)展方向。業(yè)界的一些主要廠商從1997年開始連手,步入服務(wù)器管理智能化的研發(fā)之路。它們的出發(fā)點是解決服務(wù)器硬件管理能力低的問題。經(jīng)過數(shù)年努力,于2001年推出了IPMI(Intelligent Platform Management Interface,智能化平臺管理接口)標(biāo)準(zhǔn)。
IPMI是使硬件管理具備智能化的新一代通用接口標(biāo)準(zhǔn)。用戶可以利用IPMI監(jiān)視服務(wù)器的物理健康特征,如溫度、電壓、電扇工作狀態(tài)、電源供應(yīng)以及機箱入侵等,為系統(tǒng)管理、恢復(fù)以及資產(chǎn)管理提供信息。
IPMI技術(shù)的“智能化”來自于一個管理微控制器。在一個主機系統(tǒng)里,這個控制器被稱為BMC(Baseboard Management Controller,基板管理控制器)。BMC自備電源,并自動地監(jiān)控系統(tǒng)健康狀況。如果發(fā)現(xiàn)任何被控單元異常,它能立即采取行動,例如記錄事件、報警、自動關(guān)機或重啟動。與BMC相關(guān)聯(lián)的是一組無源內(nèi)存,用來存儲傳感器的數(shù)據(jù)(Sensor Data Records,SDR)、系統(tǒng)事件記錄文件以及一些單元信息如序列號和部件號信息等。IPMI通過指定通用、精簡、基于消息的接口,將信息傳輸?shù)焦芾砦⒖刂破鳎瑢崿F(xiàn)軟件與硬件信息的分離。
在IPMI規(guī)范中,PEF(Platform Event Filter,平臺事件過濾)的作用就是對于BMC周期產(chǎn)生或者接收到的事件進(jìn)行相關(guān)的處理。在BMC中,包含一個事件過濾窗體(Event Filter Table),可以用來記錄對于什么樣的事件所能觸發(fā)的動作(Action)。至于觸發(fā)怎樣的動作,也可以在事件過濾窗體中事先定義。這樣,當(dāng)BMC接收到事件時,會進(jìn)入該事件過濾窗體中進(jìn)行查詢,如果得到事件匹配(Event Match),那么就相應(yīng)的執(zhí)行該過濾器窗體所指明的動作。
平臺事件過濾所執(zhí)行的動作,大體可以分為兩類(1)電源控制動作(Power Control Action),這一類的動作可以包括關(guān)機(Power Off),重新關(guān)機再開機(Power Cycle),主機重置(Reset)等等;這些動作使得當(dāng)有緊急事件(Critical Event)產(chǎn)生時,可以迅速的保護(hù)服務(wù)器(Server)不受傷害;(2)告警動作(Alert Action),這一類的動作可以發(fā)送警訊,這樣,通過接收平臺事件陷阱(Platform Event Trap),用戶就可以了解在服務(wù)器上發(fā)生的某個或者是某幾個事件。平臺事件是一種警報或特定狀況,直接由計算機的BIOS或硬件組件(例如微處理器或芯片)產(chǎn)生。事件的發(fā)生與操作系統(tǒng)或系統(tǒng)管理軟件和硬件無關(guān)。
然而,盡管IPMI規(guī)范提出了平臺事件過濾的相關(guān)功能,但如何實現(xiàn)這種功能,并沒有做出任何指導(dǎo)或規(guī)定,因此,如何能按照IPMI規(guī)范實現(xiàn)平臺事件過濾的相關(guān)功能已經(jīng)成為業(yè)界急待解決的問題。
發(fā)明內(nèi)容
本發(fā)明為解決上述問題而提供一種平臺事件過濾系統(tǒng)及方法,用以遵照IPMI(智能化平臺管理接口)規(guī)范在新事件與事件過濾窗體中的設(shè)置相匹配時執(zhí)行相應(yīng)的動作。
本發(fā)明提供一種平臺事件過濾系統(tǒng),包括初始化模塊,用以初始化與平臺事件有關(guān)的參數(shù)與窗體;事件接收模塊,用以接收發(fā)生的事件;系統(tǒng)事件日志,用以記錄未處理的事件;日志查詢模塊,用以在該系統(tǒng)事件日志中查詢符合要求的事件;未處理事件緩沖區(qū),用以緩存該日志查詢模塊所查詢到的符合要求的未處理事件;匹配模塊,用以對要執(zhí)行的未處理事件進(jìn)行匹配性分析;任務(wù)執(zhí)行模塊,用以根據(jù)事件參數(shù)完成與該匹配模塊匹配的事件相應(yīng)的動作。
本發(fā)明進(jìn)而提供一種平臺事件過濾方法,首先初始化與平臺過濾有關(guān)的參數(shù)和窗體,然后接收所發(fā)生的事件并將未處理的事件寫入系統(tǒng)事件日志,查詢該系統(tǒng)事件日志中的事件并將符合要求的事件寫入未處理事件緩沖區(qū),查詢該未處理事件緩沖區(qū)中的事件記錄,對查詢結(jié)果進(jìn)行匹配性分析,根據(jù)分析結(jié)果執(zhí)行與事件對應(yīng)的動作。
本發(fā)明通過對事件的接收與分析,而將未處理事件存于緩沖區(qū),在任務(wù)執(zhí)行模塊被喚醒后執(zhí)行相應(yīng)的動作,從而遵照IPMI規(guī)范而實現(xiàn)了平臺事件過濾的功能。
圖1為本發(fā)明的平臺事件過濾系統(tǒng)架構(gòu)圖;圖2為本發(fā)明的平臺事件過濾方法流程圖;圖3為本發(fā)明所提供的事件接收模塊運作流程圖;圖4為本發(fā)明所提供的日志查詢模塊運作流程圖;及圖5為本發(fā)明所提供的任務(wù)執(zhí)行模塊運作流程圖。
圖中標(biāo)號說明101 初始化模塊102 事件接收模塊103 系統(tǒng)事件日志104 日志查詢模塊105 未處理事件緩沖區(qū)106 匹配模塊107 任務(wù)執(zhí)行模塊步驟201 初始化與平臺過濾有關(guān)的參數(shù)和窗體步驟202 接收所發(fā)生的事件并將未處理的事件寫入系統(tǒng)事件日志步驟203 查詢該系統(tǒng)事件日志中的事件并將符合要求的事件寫入未處理事件緩沖區(qū)步驟204 查詢該未處理事件緩沖區(qū)中的事件記錄步驟205 對查詢結(jié)果進(jìn)行匹配性分析步驟206 最后根據(jù)分析結(jié)果執(zhí)行與事件對應(yīng)的動作步驟301 接收事件步驟302 對事件數(shù)據(jù)進(jìn)行分析步驟303 寫入系統(tǒng)事件日志中步驟401 查詢系統(tǒng)事件日志步驟402 得到最后一個由SMS處理的事件ID號以及最后一個由BMC處理的事件ID號步驟403 得到上述兩值中較大的一個步驟404 逐一查詢每一條事件的ID號步驟405 是否有大于上述較大值的ID號步驟406 得到該未處理事件步驟407 將該未處理事件寫入未處理事件緩沖區(qū)步驟408 喚醒任務(wù)執(zhí)行模塊步驟501 判斷該模塊是否被喚醒步驟502 查詢未處理事件緩沖區(qū)步驟503 判斷是否得到未被處理的事件步驟504 判斷是否需要延遲定時步驟505 進(jìn)行延時處理步驟506 得到最后一個由SMS處理的事件ID號步驟507 判斷所接收的事件的ID是否大于上述最后處理ID號步驟508 匹配性分析步驟509 判斷是否匹配步驟510 執(zhí)行對應(yīng)的動作具體實施方式
如圖1所示,該圖為本發(fā)明的平臺事件過濾系統(tǒng)架構(gòu)圖,包括初始化模塊101、事件接收模塊102、系統(tǒng)事件日志(System Event Log)103、日志查詢模塊104、未處理事件緩沖區(qū)105、匹配模塊106、任務(wù)執(zhí)行模塊107。
其中,初始化模塊101用以初始化與平臺事件有關(guān)的參數(shù)與窗體,事件接收模塊102用以接收發(fā)生的事件;系統(tǒng)事件日志103用以記錄未處理事件;日志查詢模塊104用以在該系統(tǒng)事件日志中查詢符合要求的事件;未處理事件緩沖區(qū)105用以緩存該日志查詢模塊104所查詢到的符合要求的事件;匹配模塊106用以對送至任務(wù)執(zhí)行模塊107的查詢結(jié)果進(jìn)行匹配性分析;任務(wù)執(zhí)行模塊107用以根據(jù)事件參數(shù)完成與該事件相應(yīng)的動作。
考慮到當(dāng)一個事件發(fā)生時,平臺事件過濾系統(tǒng)可以立即執(zhí)行與該事件對應(yīng)的動作,也可以先延遲一段時間,由SMS(System ManagementSoftware,系統(tǒng)管理軟件)來處理這個事件,因此,還可以設(shè)置一個延遲定時器,當(dāng)該定時器到時(Timeout)后,如果SMS沒有對這個事件進(jìn)行處理,則由平臺時間過濾系統(tǒng)處理。
其中該日志查詢模塊104的查詢要求包括驗證該事件的延遲定時已滿,如果滿足該要求則將該事件寫入該未處理事件緩沖區(qū)105。
其中該任務(wù)執(zhí)行模塊107查詢該未處理事件緩沖區(qū)105,將查詢結(jié)果送至任務(wù)分析模塊的匹配模塊106進(jìn)行匹配性分析,如果匹配則執(zhí)行該事件對應(yīng)的動作。
請參閱圖2,該圖為本發(fā)明的平臺事件過濾方法流程圖,首先初始化與平臺過濾有關(guān)的參數(shù)和窗體(步驟201);接收所發(fā)生的事件并將未處理的事件寫入系統(tǒng)事件日志(步驟202);查詢該系統(tǒng)事件日志中的事件并將符合要求的事件寫入未處理事件緩沖區(qū)(步驟203);查詢該未處理事件緩沖區(qū)中的事件記錄(步驟204);對查詢結(jié)果進(jìn)行匹配性分析(步驟205);最后根據(jù)分析結(jié)果執(zhí)行與事件對應(yīng)的動作(步驟206)。
請參閱圖3,該圖為本發(fā)明所提供的事件接收模塊的運作流程圖,首先接收事件(步驟301);然后對事件數(shù)據(jù)進(jìn)行分析(步驟302),這是基于傳感器類(Sensor Class)的;如果該事件為未處理事件則將其寫入系統(tǒng)事件日志中(步驟303),然后喚醒任務(wù)執(zhí)行模塊并結(jié)束該流程。
請參閱圖4,該圖為本發(fā)明所提供的日志查詢模塊的運作流程圖,該模塊不停的查詢系統(tǒng)事件日志(步驟401);得到最后一個由SMS處理的事件ID號以及最后一個由BMC處理的事件ID號(步驟402);然后經(jīng)過比較得到上述兩值中較大的一個(步驟403);然后逐一查詢每一條事件的ID號(步驟404);判斷是否有大于上述較大值的ID號(步驟405),如果沒有則繼續(xù)查詢,如果有則得到該未處理事件(步驟406);將該未處理事件寫入未處理事件緩沖區(qū)(步驟407);最后喚醒任務(wù)執(zhí)行模塊(步驟408)。
請參閱圖5,該圖為本發(fā)明所提供的任務(wù)執(zhí)行模塊的運作流程圖,首先判斷該模塊是否被喚醒(步驟501),查詢未處理事件緩沖區(qū)(步驟502),接著判斷是否得到未被處理的事件(步驟503),如果得到則接著判斷是否需要延遲定時(步驟504),如果需要則進(jìn)行延時處理(步驟505),再得到最后一個由SMS處理的事件ID號(步驟506),判斷所接收的事件的ID是否大于上述最后處理ID號(步驟507),如果大于則說明是未被處理事件,對該事件通過事件過濾窗體在匹配模塊中進(jìn)行匹配性分析(步驟508),判斷是否匹配(步驟509),如果與窗體中的內(nèi)容匹配,則執(zhí)行對應(yīng)的動作(步驟510)。
以上所述,僅為本發(fā)明其中的較佳實施例而已,并非用來限定本發(fā)明的實施范圍;即凡依本發(fā)明申請專利范圍所作的均等變化與修飾,皆為本發(fā)明的專利保護(hù)范圍所涵蓋。
權(quán)利要求
1.一種平臺事件過濾系統(tǒng),用以遵照智能化平臺管理接口規(guī)范在新事件與事件過濾窗體中的設(shè)置相匹配時執(zhí)行相應(yīng)的動作,其中該系統(tǒng)包括一初始化模塊,用以初始化與平臺事件有關(guān)的參數(shù)與窗體;一事件接收模塊,用以接收發(fā)生的事件;一系統(tǒng)事件日志,用以記錄未處理的事件;一日志查詢模塊,用以在該系統(tǒng)事件日志中查詢符合要求的事件;一未處理事件緩沖區(qū),用以緩存該日志查詢模塊所查詢到的符合要求的未處理事件;一匹配模塊,用以對要執(zhí)行的未處理事件進(jìn)行匹配性分析;及一任務(wù)執(zhí)行模塊,用以根據(jù)事件參數(shù)完成與該匹配模塊匹配的事件相應(yīng)的動作。
2.如權(quán)利要求1所述的平臺事件過濾系統(tǒng),其中還包括一延遲定時器,用以監(jiān)視接收事件的延時處理時間。
3.如權(quán)利要求1所述的平臺事件過濾系統(tǒng),其中該事件接收模塊接收事件后依序為事件賦予一ID值。
4.如權(quán)利要求1所述的平臺事件過濾系統(tǒng),其中該日志查詢模塊是通過查詢每一事件的ID值來判斷是否符合未處理的要求。
5.如權(quán)利要求1所述的平臺事件過濾系統(tǒng),其中該任務(wù)執(zhí)行模塊從該未處理事件緩沖區(qū)獲得未處理的事件。
6.一種平臺事件過濾方法,用以遵照智能化平臺管理接口規(guī)范在新事件與事件過濾窗體中的設(shè)置相匹配時執(zhí)行相應(yīng)的動作,其中該方法包括初始化與平臺過濾有關(guān)的參數(shù)和窗體;接收所發(fā)生的事件并將未處理的事件寫入系統(tǒng)事件日志;查詢該系統(tǒng)事件日志中的事件并將符合要求的事件寫入未處理事件緩沖區(qū);查詢該未處理事件緩沖區(qū)中的事件記錄;對查詢結(jié)果進(jìn)行匹配性析;及根據(jù)分析結(jié)果執(zhí)行與事件對應(yīng)的動作。
7.如權(quán)利要求6所述的平臺事件過濾方法,其中該接收事件的步驟還包括為新接收的事件順序賦予一ID值。
8.如權(quán)利要求6所述的平臺事件過濾方法,其中該查詢系統(tǒng)事件日志的步驟,是通過查詢每一事件的ID值來判斷是否符合未處理的要求。
9.如權(quán)利要求6所述的平臺事件過濾方法,其中該匹配分析的步驟,是將所接收事件在事件過濾窗體中進(jìn)行匹配性分析。
全文摘要
一種平臺事件過濾系統(tǒng)及方法,該系統(tǒng)包括初始化模塊、事件接收模塊、系統(tǒng)事件日志、日志查詢模塊、未處理事件緩沖區(qū)、匹配模塊及任務(wù)執(zhí)行模塊,該方法首先初始化參數(shù)和窗體,接收并分析事件數(shù)據(jù),然后將其寫入系統(tǒng)事件日志及未處理事件緩沖區(qū),然后查詢該未處理事件緩沖區(qū)中的事件記錄,將查詢結(jié)果送至任務(wù)分析模塊的匹配模塊進(jìn)行匹配性分析,最后根據(jù)分析結(jié)果執(zhí)行對應(yīng)的事件動作,本發(fā)明遵照IPMI規(guī)范而實現(xiàn)了平臺事件過濾的功能。
文檔編號H04L12/24GK1642103SQ200410001970
公開日2005年7月20日 申請日期2004年1月16日 優(yōu)先權(quán)日2004年1月16日
發(fā)明者劉文涵, 陳玄同, 孟聰 申請人:英業(yè)達(dá)股份有限公司