本申請涉及集群技術(shù)領(lǐng)域,特別涉及一種集群節(jié)點健康狀態(tài)預(yù)警方法及系統(tǒng)。
背景技術(shù):
隨著信息技術(shù)的發(fā)展,集群技術(shù)作為一項新型技術(shù)已經(jīng)在天氣預(yù)報、核試驗?zāi)M等計算密集型應(yīng)用中大顯身手,它不僅可以大幅度提高系統(tǒng)計算性能,還可以增強系統(tǒng)的可靠性。
集群具體是指一組相互獨立的、通過高速網(wǎng)絡(luò)互聯(lián)的計算機等服務(wù)實體,集群中的每一個服務(wù)實體都是一個節(jié)點,這些節(jié)點組成一個組統(tǒng)一對外提供服務(wù),具有高于單一服務(wù)實體的擴展性、可用性。
由于集群一般包含多個節(jié)點,因此有必要對集群中每個節(jié)點的健康狀態(tài)進行監(jiān)控并設(shè)置預(yù)警機制,用以在預(yù)警事件發(fā)生時提醒管理員。
現(xiàn)有技術(shù)中提供了一種集群節(jié)點健康狀態(tài)預(yù)警的方法。該方法在集群中的每個節(jié)點上部署監(jiān)控模塊和預(yù)警模塊,監(jiān)控模塊用于收集其所在節(jié)點的健康狀態(tài)數(shù)據(jù),以便預(yù)警模塊對該節(jié)點的健康狀態(tài)數(shù)據(jù)進行分析處理,當判斷預(yù)警事件發(fā)生時,預(yù)警模塊則生成預(yù)警事件,向管理員進行提示。
然而,由于現(xiàn)有技術(shù)中在集群中的每一個節(jié)點中均部署了預(yù)警模塊,因此,采用現(xiàn)有技術(shù)提供的技術(shù)方案將無法避免部署工作繁瑣的缺點。此外,由于集群中每一個節(jié)點均部署有預(yù)警模塊,因此,當應(yīng)用系統(tǒng)須要對節(jié)點健康狀態(tài)的預(yù)警機制進行修改時,則須要逐一對各個節(jié)點中預(yù)警配置文件的相關(guān)數(shù)據(jù)進行修改,同樣十分繁瑣。
技術(shù)實現(xiàn)要素:
本申請的目的在于提供一種集群節(jié)點健康狀態(tài)預(yù)警方法及系統(tǒng),在實現(xiàn)對集群節(jié)點健康狀態(tài)預(yù)警的基礎(chǔ)上,可以有效地簡化對預(yù)警模塊的部署工作和預(yù)警配置文件的修改工作。
為解決上述技術(shù)問題,本申請?zhí)峁┮环N集群節(jié)點健康狀態(tài)預(yù)警方法,包括:
各個節(jié)點的監(jiān)控模塊獲取本節(jié)點的健康狀態(tài)數(shù)據(jù);
監(jiān)控管理模塊獲取所述各個節(jié)點的所述健康狀態(tài)數(shù)據(jù),并將所述健康狀態(tài)數(shù)據(jù)和其節(jié)點標識發(fā)送給預(yù)警模塊;所述監(jiān)控管理模塊和所述預(yù)警模塊部署在管理節(jié)點上;
所述預(yù)警模塊判斷所述健康狀態(tài)數(shù)據(jù)是否符合預(yù)警配置文件中的預(yù)設(shè)條件;若否,則判定所述節(jié)點標識對應(yīng)的節(jié)點發(fā)生預(yù)警事件;并將所述預(yù)警事件加入預(yù)警通知隊列,進行預(yù)警通知。
可選地,所述各個節(jié)點的監(jiān)控模塊獲取本節(jié)點的健康狀態(tài)數(shù)據(jù)包括:
所述各個節(jié)點的所述監(jiān)控模塊獲取本節(jié)點的硬件信息和性能指標;
所述預(yù)警模塊判斷所述健康狀態(tài)數(shù)據(jù)是否符合預(yù)警配置文件中的預(yù)設(shè)條件包括:
所述預(yù)警模塊判斷所述硬件信息是否符合所述預(yù)警配置文件中設(shè)定的狀態(tài)值;所述預(yù)警模塊判斷所述性能指標是否符合所述預(yù)警配置文件中設(shè)定的閾值范圍。
可選地,所述監(jiān)控管理模塊獲取所述各個節(jié)點的所述健康狀態(tài)數(shù)據(jù),并將所述健康狀態(tài)數(shù)據(jù)和其節(jié)點標識發(fā)送給預(yù)警模塊包括:
所述監(jiān)控管理模塊以守護進程的方式獲取所述各個節(jié)點的所述健康狀態(tài)數(shù)據(jù),并將所述健康狀態(tài)數(shù)據(jù)和其節(jié)點標識發(fā)送給所述預(yù)警模塊。
可選地,所述監(jiān)控管理模塊在獲取所述各個節(jié)點的所述健康狀態(tài)數(shù)據(jù)之后,還包括:
在管理界面上將所述健康狀態(tài)數(shù)據(jù)和其節(jié)點標識進行圖形化展示,以便于實時監(jiān)控所述各個節(jié)點的健康狀態(tài)。
可選地,還包括:
所述監(jiān)控管理模塊將所述各個節(jié)點的所述健康狀態(tài)數(shù)據(jù)和其節(jié)點標識存入數(shù)據(jù)庫;并將已經(jīng)發(fā)送給所述預(yù)警模塊的健康狀態(tài)數(shù)據(jù)和其節(jié)點標識在所述數(shù)據(jù)庫中進行標記,以避免重復(fù)發(fā)送。
可選地,所述預(yù)警模塊將所述預(yù)警事件加入預(yù)警通知隊列之后,還包括:
判斷是否第一次將所述預(yù)警事件加入預(yù)警通知隊列;
若否,則判斷是否到達所述預(yù)警配置文件中設(shè)定的延遲時間;
若到達所述延遲時間,則執(zhí)行進行預(yù)警通知的步驟。
本申請還提供了一種集群節(jié)點健康狀態(tài)預(yù)警系統(tǒng),包括:
監(jiān)控模塊:用于獲取其所在節(jié)點的健康狀態(tài)數(shù)據(jù);所述監(jiān)控模塊分別部署在各個節(jié)點上;
監(jiān)控管理模塊:用于獲取所述各個節(jié)點的所述健康狀態(tài)數(shù)據(jù),并將所述健康狀態(tài)數(shù)據(jù)和其節(jié)點標識發(fā)送給預(yù)警模塊;所述監(jiān)控管理模塊部署在管理節(jié)點上;
所述預(yù)警模塊:用于判斷所述健康狀態(tài)數(shù)據(jù)是否符合預(yù)警配置文件中的預(yù)設(shè)條件;若否,則判定所述節(jié)點標識對應(yīng)的節(jié)點發(fā)生預(yù)警事件;并將所述預(yù)警事件加入預(yù)警通知隊列,進行預(yù)警通知;所述預(yù)警模塊部署在所述管理節(jié)點上。
可選地,所述監(jiān)控模塊具體用于:
獲取其所在節(jié)點的硬件信息和性能指標;
所述預(yù)警模塊具體用于:
判斷所述各個節(jié)點的所述硬件信息是否符合所述預(yù)警配置文件中設(shè)定的狀態(tài)值;判斷所述各個節(jié)點的所述性能指標是否符合所述預(yù)警配置文件中設(shè)定的閾值范圍。
可選地,所述監(jiān)控管理模塊還用于:
在獲取所述各個節(jié)點的所述健康狀態(tài)數(shù)據(jù)之后,將所述健康狀態(tài)數(shù)據(jù)和其節(jié)點標識在管理界面上進行圖形化展示,以便于實時監(jiān)控所述各個節(jié)點的健康狀態(tài)。
可選地,所述預(yù)警模塊還用于:
在將所述預(yù)警事件加入預(yù)警通知隊列之后,判斷是否第一次將所述預(yù)警事件加入預(yù)警通知隊列;
若否,則判斷是否到達所述預(yù)警配置文件中設(shè)定的延遲時間;
若到達所述延遲時間,則執(zhí)行進行預(yù)警通知的步驟。
本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警方法中,各個節(jié)點的監(jiān)控模塊獲取本節(jié)點的健康狀態(tài)數(shù)據(jù);監(jiān)控管理模塊獲取所述各個節(jié)點的所述健康狀態(tài)數(shù)據(jù),并將所述健康狀態(tài)數(shù)據(jù)和其節(jié)點標識發(fā)送給預(yù)警模塊;所述監(jiān)控管理模塊和所述預(yù)警模塊部署在管理節(jié)點上;所述預(yù)警模塊判斷所述健康狀態(tài)數(shù)據(jù)是否符合預(yù)警配置文件中的預(yù)設(shè)條件;若否,則判定所述節(jié)點標識對應(yīng)的節(jié)點發(fā)生預(yù)警事件;并將所述預(yù)警事件加入預(yù)警通知隊列,進行預(yù)警通知。
可見,本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警方法中,通過在管理節(jié)點中設(shè)置監(jiān)控管理模塊,對各個監(jiān)控模塊獲取到的集群中各個節(jié)點的健康狀態(tài)數(shù)據(jù)統(tǒng)一進行匯總和管理,以便于提供給預(yù)警模塊進行分析和處理,從而可以在預(yù)警事件發(fā)生時進行預(yù)警通知。此外,相比于現(xiàn)有技術(shù),本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警方法中,預(yù)警模塊只須部署在管理節(jié)點上,相應(yīng)地,預(yù)警配置文件也只須存儲在管理節(jié)點中,預(yù)警模塊可以通過監(jiān)控管理模塊并依據(jù)預(yù)警配置文件對集群中各個節(jié)點的健康狀態(tài)數(shù)據(jù)進行分析和處理。因此,本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警方法可以極大程度地簡化預(yù)警模塊的部署工作和預(yù)警配置文件的修改工作,進而可以提高效率并降低系統(tǒng)運營成本。本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警系統(tǒng)同樣具有上述有益效果。
附圖說明
為了更清楚地說明本申請實施例中的技術(shù)方案,下面將對本申請實施例描述中需要使用的附圖作簡要的介紹。當然,下面有關(guān)本申請實施例的附圖描述的僅僅是本申請中的一部分實施例,對于本領(lǐng)域普通技術(shù)人員來說,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖,所獲得的其他附圖也屬于本申請的保護范圍。
圖1為本申請實施例所提供的一種集群節(jié)點健康狀態(tài)預(yù)警方法的流程圖;
圖2為本申請實施例所提供的另一種集群節(jié)點健康狀態(tài)預(yù)警方法的流程圖;
圖3為本申請所提供的一種集群節(jié)點健康狀態(tài)預(yù)警系統(tǒng)的結(jié)構(gòu)框圖。
具體實施方式
為了對本申請實施例中的技術(shù)方案進行更加清楚、完整地描述,下面將結(jié)合本申請實施例中的附圖,對本申請實施例中的技術(shù)方案進行介紹。顯然,所描述的實施例僅僅是本申請一部分實施例,而不是全部的實施例。基于本申請中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本申請保護的范圍。
請參考圖1,圖1為本申請實施例所提供的一種集群節(jié)點健康狀態(tài)預(yù)警方法的流程圖,主要包括以下步驟:
步驟101:各個節(jié)點的監(jiān)控模塊獲取本節(jié)點的健康狀態(tài)數(shù)據(jù)。
集群中的各個節(jié)點均部署有監(jiān)控模塊,可以獲取本節(jié)點的健康狀態(tài)數(shù)據(jù)。所述健康狀態(tài)數(shù)據(jù)具體可以包括該節(jié)點的硬件信息,例如電源是否接通、風(fēng)扇是否開啟、網(wǎng)卡是否可用等;還可以包括該節(jié)點的性能指標,例如cpu利用率、內(nèi)存利用率等。通過這些健康狀態(tài)數(shù)據(jù),可以在經(jīng)過一系列分析后判斷該節(jié)點是否故障以及故障的具體情況。
步驟102:監(jiān)控管理模塊獲取各個節(jié)點的健康狀態(tài)數(shù)據(jù)。
在一個集群的諸多節(jié)點中,一般有一個為管理節(jié)點,可以與其他節(jié)點進行通信,并對其他節(jié)點進行管理。本申請實施例所提供的集群節(jié)點健康狀態(tài)預(yù)警方法中,在管理節(jié)點中部署有監(jiān)控管理模塊,主要用于匯總和管理各個節(jié)點所獲取的本節(jié)點的健康狀態(tài)數(shù)據(jù)。通過管理節(jié)點和其他節(jié)點之間的數(shù)據(jù)傳輸,監(jiān)控管理模塊可以獲取匯總各個節(jié)點的健康狀態(tài)數(shù)據(jù),以便后續(xù)步驟中對所述健康狀態(tài)數(shù)據(jù)進行處理。
步驟103:監(jiān)控管理模塊將健康狀態(tài)數(shù)據(jù)和其節(jié)點標識發(fā)送給預(yù)警模塊。
在本申請實施例所提供的集群節(jié)點健康狀態(tài)預(yù)警方法中,預(yù)警模塊同監(jiān)控管理模塊一樣,部署在管理節(jié)點上,主要用于分析、判斷和處理預(yù)警事件。
集群中各個節(jié)點均有各自對應(yīng)的節(jié)點標識,用以辨識節(jié)點。監(jiān)控管理模塊在與各個節(jié)點進行通信以獲取該節(jié)點的健康狀態(tài)數(shù)據(jù)的同時,也同樣可以獲取該節(jié)點的節(jié)點標識。為了便于預(yù)警模塊對各個節(jié)點的健康狀態(tài)數(shù)據(jù)進行分析和判斷,監(jiān)控管理將各個節(jié)點的健康狀態(tài)數(shù)據(jù)連同其所對應(yīng)的節(jié)點標識一同發(fā)送給預(yù)警模塊,以便預(yù)警模塊對其進行分析和判斷,從而對發(fā)生的預(yù)警事件進行處理。
值得一提的是,在步驟102和步驟103中所提到的監(jiān)控管理模塊優(yōu)選以守護進程的方式運行,使得監(jiān)控管理模塊的運行不受任何終端的影響和控制,以便于第一時間發(fā)現(xiàn)各個節(jié)點發(fā)生的預(yù)警事件并進行預(yù)警提示,從而有效地保障集群中各個節(jié)點的正常運行。
步驟104:預(yù)警模塊判斷健康狀態(tài)數(shù)據(jù)是否符合預(yù)警配置文件中的預(yù)設(shè)條件;若否,進入步驟105。
預(yù)警模塊可以對其從監(jiān)控管理模塊接收到的各個節(jié)點的健康狀態(tài)數(shù)據(jù)進行分析,從而判斷是否有節(jié)點發(fā)生預(yù)警事件。預(yù)警模塊在進行判斷時,具體是依據(jù)預(yù)警配置文件中的相關(guān)數(shù)據(jù):如果節(jié)點的健康狀態(tài)數(shù)據(jù)符合預(yù)警配置文件中的預(yù)設(shè)條件,則說明該節(jié)點健康狀態(tài)良好,無預(yù)警事件發(fā)生;相反,如果節(jié)點的健康狀態(tài)數(shù)據(jù)不符合預(yù)警配置文件中的預(yù)設(shè)條件,則說明該節(jié)點的健康狀態(tài)欠佳,有預(yù)警事件發(fā)生,需要進行預(yù)警處理,則進入步驟105。并且,預(yù)警模塊可以通過節(jié)點健康狀態(tài)數(shù)據(jù)的節(jié)點標識來識別究竟是哪一個節(jié)點發(fā)生了預(yù)警事件。
預(yù)警模塊在進行判斷預(yù)警事件是否發(fā)生時,其判斷內(nèi)容具體可以包括節(jié)點的硬件信息是否符合預(yù)警配置文件中設(shè)定的狀態(tài)值,以及節(jié)點的性能指標是否符合預(yù)警配置文件中設(shè)定的閾值范圍。若節(jié)點的硬件信息不符合預(yù)警配置文件中的設(shè)定的狀態(tài)值,如電源沒有接通、風(fēng)扇沒有運行等;或者節(jié)點的性能指標不符合預(yù)警配置文件中設(shè)定的閾值范圍,如cpu利用率過低、內(nèi)存利用率過低等,則說明此時該節(jié)點的健康狀態(tài)欠佳,預(yù)警模塊需要對該節(jié)點發(fā)生的該預(yù)警事件進行預(yù)警通知,以便管理員在接收到預(yù)警通知后及時對該節(jié)點進行相應(yīng)的修復(fù)和處理,保障集群節(jié)點的健康。
預(yù)警配置文件中各個節(jié)點硬件信息的狀態(tài)值和性能指標的閾值范圍是預(yù)先設(shè)定的,具體可以參考工程經(jīng)驗進行相應(yīng)設(shè)定;涉及到具體取值范圍的,本申請實施例對具體取值大小并不做限定,本領(lǐng)域技術(shù)人員可根據(jù)實際使用情況自行選擇和設(shè)置。
步驟105:預(yù)警模塊將預(yù)警事件加入預(yù)警通知隊列。
預(yù)警模塊將其在步驟104中經(jīng)判斷得到的預(yù)警事件加入預(yù)警通知隊列,等待進行預(yù)警通知。特別地,當集群中的預(yù)警事件較多時,還可以以預(yù)警事件的嚴重程度為判別標準,將嚴重程度較大的預(yù)警事件優(yōu)先加入預(yù)警隊列,以便在最短的時間內(nèi)進行預(yù)警通知。
步驟106:進行預(yù)警通知。
針對預(yù)警通知隊列中的預(yù)警事件進行預(yù)警通知時,可以采用多種方式,例如向集群系統(tǒng)的管理員發(fā)送短信或者郵件等,還可以直接在集群的管理軟件的管理界面上采用文字、圖像、警示燈等方式進行提示,本申請實施例對具體采用何種通知方式并不做限定,本領(lǐng)域技術(shù)人員可以根據(jù)實際使用情況自行進行選擇。
可見,本申請實施例所提供的集群節(jié)點健康狀態(tài)預(yù)警方法中,通過部署在管理節(jié)點上的監(jiān)控管理模塊和預(yù)警模塊,分別對各個節(jié)點的健康狀態(tài)數(shù)據(jù)進行匯總和分析,從而完成對預(yù)警事件的預(yù)警通知處理。相比于現(xiàn)有技術(shù),本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警方法無須在各個節(jié)點上均部署預(yù)警模塊及設(shè)置預(yù)警配置文件,而是僅僅將預(yù)警模塊部署在管理節(jié)點上,同時,在修改配置文件時也只須在管理節(jié)點上進行一次修改。因此,本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警方法可以極大程度地簡化預(yù)警模塊的部署工作和預(yù)警配置文件的修改工作,進而可以提高效率并降低系統(tǒng)運營成本,同時也降低了修改工作帶來的風(fēng)險。
請參考圖2,圖2為本申請實施例所提供的又一種集群節(jié)點健康狀態(tài)預(yù)警方法的流程圖,主要包括以下步驟:
步驟201:各個節(jié)點的監(jiān)控模塊獲取本節(jié)點的健康狀態(tài)數(shù)據(jù)。
步驟202:監(jiān)控管理模塊獲取各個節(jié)點的健康狀態(tài)數(shù)據(jù)。
如前所述,這里所述的節(jié)點的健康狀態(tài)數(shù)據(jù)可以包括節(jié)點的硬件信息和性能指標。
以上步驟201和步驟202中的具體內(nèi)容可以分別參考圖1中的步驟101和步驟102,由于內(nèi)容相似,這里就不再贅述。
步驟203:監(jiān)控管理模塊將健康狀態(tài)數(shù)據(jù)和其節(jié)點標識在管理界面上進行圖形化展示。
監(jiān)控管理模塊在從集群中的各個節(jié)點上的監(jiān)控模塊獲取到各個節(jié)點的健康狀態(tài)數(shù)據(jù)之后,為了便于直觀地顯示各個節(jié)點的健康狀態(tài),方便管理員利用集群的管理軟件進行實時的監(jiān)控,可以進一步將其所獲取的各個節(jié)點的健康狀態(tài)數(shù)據(jù)與對應(yīng)的節(jié)點標識在管理軟件的管理界面上進行圖形化展示,使得各個節(jié)點當前的健康狀態(tài)可以一目了然,極大地方便對節(jié)點的實時監(jiān)控。
步驟204:監(jiān)控管理模塊將健康狀態(tài)數(shù)據(jù)和其節(jié)點標識存入數(shù)據(jù)庫。
為了便于對各個節(jié)點的健康狀態(tài)數(shù)據(jù)進行分析和管理,監(jiān)控管理模塊可以將所述健康狀態(tài)數(shù)據(jù)與其節(jié)點標識存入數(shù)據(jù)庫以進行保存。
步驟205:監(jiān)控管理模塊將健康狀態(tài)數(shù)據(jù)和其節(jié)點標識發(fā)送給預(yù)警模塊,并在數(shù)據(jù)庫中進行標記。
與步驟103相類似,監(jiān)控管理模塊將其獲取到的各個節(jié)點的健康狀態(tài)數(shù)據(jù)和其節(jié)點標識一同發(fā)送給預(yù)警模塊,以便預(yù)警模塊在后續(xù)步驟中根據(jù)預(yù)警配置文件對各個節(jié)點的健康狀態(tài)進行判斷,并在預(yù)警事件發(fā)生時進行預(yù)警處理。
此外,監(jiān)控管理模塊在將節(jié)點的健康狀態(tài)數(shù)據(jù)和其節(jié)點標識發(fā)送給預(yù)警模塊之后,還可以在步驟204中所建立的數(shù)據(jù)庫中,對已經(jīng)發(fā)送了的節(jié)點的健康狀態(tài)數(shù)據(jù)及其節(jié)點標識進行標記,由此可以避免對同一數(shù)據(jù)的重復(fù)發(fā)送,避免不必要的帶寬消耗。
同樣,本申請實施例所提供的集群節(jié)點健康狀態(tài)預(yù)警方法中,監(jiān)控管理模塊優(yōu)先以守護進程的方式運行,以便在第一時間發(fā)現(xiàn)預(yù)警事件的發(fā)生,從而進行預(yù)警通知,保障系統(tǒng)的正常運行。
步驟206:預(yù)警模塊判斷健康狀態(tài)數(shù)據(jù)是否符合預(yù)警配置文件中的預(yù)設(shè)條件;若否,進入步驟207。
步驟207:預(yù)警模塊將預(yù)警事件加入預(yù)警通知隊列。
同樣地,以上步驟206和步驟207中的具體操作內(nèi)容可以分別參考圖1中的步驟104和步驟105,同樣的內(nèi)容這里就不再贅述。
步驟208:預(yù)警模塊判斷是否第一次將該預(yù)警事件加入預(yù)警通知隊列,若否,進入步驟209;若是,進入步驟210。
由于預(yù)警事件發(fā)生后,對相應(yīng)故障設(shè)備的修復(fù)需要一定的時間,因此,在此修復(fù)時間內(nèi),系統(tǒng)可能會對該預(yù)警事件進行頻繁的預(yù)警通知。為了防止此類問題的發(fā)生,預(yù)警模塊可以在將預(yù)警事件加入預(yù)警通知隊列后對其進行判斷:判斷該預(yù)警事件是否是第一次加入預(yù)警通知隊列;如果是,則說明此前該預(yù)警事件并沒有進行過預(yù)警通知,則可以直接進入步驟210,執(zhí)行預(yù)警通知的步驟;如果否,則說明該預(yù)警事件很可能在此之前已經(jīng)進行過了預(yù)警通知,則可以進入步驟209。
步驟209:預(yù)警模塊判斷是否到達預(yù)警配置文件中設(shè)定的延遲時間,若是,進入步驟210。
經(jīng)步驟208判斷為非首次加入預(yù)警通知隊列的預(yù)警事件,很可能在此之前已經(jīng)進行過預(yù)警通知,因此,為了防止與上次預(yù)警通知之間的時間間隔過短而導(dǎo)致通知過于頻繁,此時預(yù)警模塊可以對是否已經(jīng)到達預(yù)警配置文件中設(shè)定的延遲時間進行判斷,如果尚未到達則繼續(xù)等待,如果已經(jīng)到達了延遲時間,則可以進入步驟210,執(zhí)行預(yù)警通知的步驟。
延遲時間是預(yù)先在預(yù)警配置文件中設(shè)置的,例如可以設(shè)置為15秒;當然,也可以設(shè)置為其他時間參數(shù),本申請實施例對此不進行限定,本領(lǐng)域技術(shù)人員可以根據(jù)具體使用情況進行選擇。
步驟210:進行預(yù)警通知。
同樣,對預(yù)警事件的預(yù)警通知,可以采用向管理員發(fā)送郵件或短信、在管理軟件的管理界面上顯示文字、圖像或警示燈等方式進行通知,本申請實施例對此不做限定,本領(lǐng)域技術(shù)人員可以根據(jù)實際使用情況自行選擇。
可見,本申請所提供的又一種集群節(jié)點健康狀態(tài)預(yù)警方法,在本申請所提供的第一種方法的基礎(chǔ)上,增加了對各個節(jié)點健康狀態(tài)數(shù)據(jù)在管理界面上進行圖形化展示的步驟,可以更加直觀地實時監(jiān)控各個節(jié)點的健康狀態(tài);同時還對已經(jīng)發(fā)送給預(yù)警模塊的節(jié)點健康狀態(tài)數(shù)據(jù)進行了標記,避免了同一份健康狀態(tài)數(shù)據(jù)的重復(fù)發(fā)送;除此之外,還增加了對非首次加入預(yù)警通知隊列的預(yù)警事件設(shè)置延遲通知時間的步驟,因此可以避免對同一個預(yù)警事件的頻繁通知。由此可見,本申請實施例所提供的集群節(jié)點健康狀態(tài)預(yù)警方法,在實現(xiàn)簡化預(yù)警模塊的部署工作和與預(yù)警配置文件的修改工作的基礎(chǔ)上,可以進一步提高用戶體驗。
下面對本申請實施例所提供的集群節(jié)點健康狀態(tài)預(yù)警系統(tǒng)進行介紹。下文描述的集群節(jié)點健康狀態(tài)預(yù)警系統(tǒng)與上文描述的集群節(jié)點健康狀態(tài)預(yù)警方法可相互對應(yīng)參照。
請參閱圖3,圖3為本申請所提供的一種集群節(jié)點健康狀態(tài)預(yù)警系統(tǒng)的結(jié)構(gòu)框圖;包括監(jiān)控模塊301、監(jiān)控管理模塊302和預(yù)警模塊303。
多個監(jiān)控模塊301分別部署在集群中的各個節(jié)點中,用于獲取其所在節(jié)點的健康狀態(tài)數(shù)據(jù)。所述健康狀態(tài)數(shù)據(jù)可以包括節(jié)點的硬件信息,例如電源是否接通、風(fēng)扇是否開啟、網(wǎng)卡是否可用等;還可以包括節(jié)點的性能指標,例如cpu利用率、內(nèi)存利用率等。通過對監(jiān)控模塊301獲取到的節(jié)點的健康狀態(tài)數(shù)據(jù)進行分析,可以對該節(jié)點的健康狀態(tài)進行評判,進而可以在預(yù)警事件發(fā)生時進行預(yù)警通知。
監(jiān)控管理模塊302部署在集群中的管理節(jié)點上,用于從各個監(jiān)控模塊301獲取各個節(jié)點的健康狀態(tài)數(shù)據(jù),并將所述健康狀態(tài)數(shù)據(jù)及其節(jié)點標識發(fā)送給預(yù)警模塊303,以便預(yù)警模塊303依據(jù)預(yù)警配置文件對各個節(jié)點的健康狀態(tài)數(shù)據(jù)進行分析和判斷。
另外,監(jiān)控管理模塊302還可以具體用于在獲取到各個節(jié)點的健康狀態(tài)數(shù)據(jù)之后,將各個節(jié)點的健康狀態(tài)數(shù)據(jù)及其節(jié)點標識在管理軟件的管理界面上進行圖形化展示,以便更加直觀地顯示各個節(jié)點的健康狀態(tài),便于實時監(jiān)控。除此之外,監(jiān)控管理模塊302還可以具體用于將各個節(jié)點的健康狀態(tài)數(shù)據(jù)和節(jié)點標識存入數(shù)據(jù)庫,進行保存,并將已經(jīng)發(fā)送給預(yù)警模塊303的節(jié)點健康數(shù)據(jù)及其節(jié)點標識在數(shù)據(jù)庫中進行標記,以避免重復(fù)發(fā)送,造成不必要的帶寬消耗。
預(yù)警模塊303部署在集群中的管理節(jié)點上,用于對各個節(jié)點的健康狀態(tài)數(shù)據(jù)進行分析,通過判斷其是否符合預(yù)警配置文件中的預(yù)設(shè)條件,來判斷其節(jié)點標識所對應(yīng)的節(jié)點是否發(fā)生預(yù)警事件,并對發(fā)生的預(yù)警事件進行處理。預(yù)警配置文件中預(yù)先設(shè)置有正常狀態(tài)下節(jié)點硬件信息的狀態(tài)值和性能指標的閾值范圍,預(yù)警模塊303在判斷節(jié)點是否發(fā)生預(yù)警事件時,具體用于判斷節(jié)點的硬件信息是否符合預(yù)警配置文件中設(shè)定的狀態(tài)值,以及判斷節(jié)點的性能指標是否符合預(yù)警配置文件中設(shè)定的閾值范圍,若節(jié)點的硬件信息或者性能指標出現(xiàn)異常,即預(yù)警事件發(fā)生,則預(yù)警模塊303用于將該節(jié)點所發(fā)生的該預(yù)警事件加入預(yù)警通知隊列,以進行預(yù)警通知。具體地,預(yù)警通知可以采用向管理員發(fā)送郵件或者短信、或者在管理軟件的管理界面上顯示文字、圖像、警示燈等方式。
此外,預(yù)警模塊303還可以具體用于在將預(yù)警事件加入預(yù)警通知隊列之后,對該預(yù)警事件是否為首次加入預(yù)警通知隊列進行判斷,如果是首次加入,則可以直接執(zhí)行預(yù)警通知步驟;如果是非首次加入,則說明該預(yù)警事件很可能已經(jīng)進行過預(yù)警通知,為了防止對該預(yù)警事件的預(yù)警通知過于頻繁,預(yù)警模塊303可以判斷是否到達預(yù)警配置文件中設(shè)定的延遲時間,并在所述延遲時間到達時,才對該預(yù)警事件進行本次預(yù)警通知。
可見,本身申請所提供的集群節(jié)點健康狀態(tài)預(yù)警通知系統(tǒng)中,預(yù)警模塊303僅需部署在管理節(jié)點上,其可以通過部署在管理節(jié)點上的監(jiān)控管理模塊302,對各個節(jié)點的健康狀態(tài)數(shù)據(jù)進行分析和判斷。當判斷有節(jié)點發(fā)生預(yù)警事件時,預(yù)警模塊303即可以對該預(yù)警事件進行預(yù)警通知,以保障集群系統(tǒng)的正常運行。因此,本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警系統(tǒng)無須在各個節(jié)點中均部署預(yù)警模塊,由此可以大大簡化預(yù)警模塊的部署工作和預(yù)警配置文件的修改工作,進而提高工作效率并降低系統(tǒng)運行成本。
此外,本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警通知系統(tǒng)可以進一步在管理界面上對各個節(jié)點的健康狀態(tài)數(shù)據(jù)進行圖形化展示,能夠便于更加直觀地實時監(jiān)控各個節(jié)點的健康狀態(tài);還可以通過設(shè)置預(yù)警通知的延遲時間,避免對同一個預(yù)警事件的預(yù)警通知過于頻繁。因此,本申請所提供的集群節(jié)點健康狀態(tài)預(yù)警通知系統(tǒng)還可以進一步提高用戶體驗。
本申請中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的系統(tǒng)而言,由于其與實施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。
專業(yè)人員還可以進一步意識到,結(jié)合本文中所公開的實施例描述的方法步驟,能夠以電子硬件、計算機軟件或者二者的結(jié)合來實現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各實施例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認為超出本申請的范圍。
結(jié)合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實施。軟件模塊可以置于隨機存儲器(ram)、內(nèi)存、只讀存儲器(rom)、電可編程rom、電可擦除可編程rom、寄存器、硬盤、可移動磁盤、cd-rom、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲介質(zhì)中。
以上對本申請所提供的技術(shù)方案進行了詳細介紹。本文中應(yīng)用了具體個例對本申請的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本申請的方法及其核心思想。應(yīng)當指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本申請原理的前提下,還可以對本申請進行若干改進和修飾,這些改進和修飾也落入本申請權(quán)利要求的保護范圍內(nèi)。