狀態(tài)相應(yīng)進(jìn)行處理。通過本發(fā)明的一種監(jiān)測主機(jī)硬件負(fù)載的方法和系統(tǒng),有效地從多主機(jī)集群系統(tǒng)的眾多主機(jī)中獲取各個(gè)主機(jī)運(yùn)行時(shí)的負(fù)載參數(shù)值,并且可以有效地從眾多主機(jī)中定位出是哪個(gè)主機(jī)出現(xiàn)異常,哪個(gè)硬件負(fù)載的哪項(xiàng)參數(shù)指標(biāo)出現(xiàn)異常,從而使得異常狀態(tài)得到及時(shí)處理。
[0043]為了在初步判定某一硬件負(fù)載為第二異常狀態(tài)后,可以迅速確定該硬件負(fù)載是否正常,本發(fā)明在初步判定某一硬件負(fù)載為第二異常狀態(tài)后,調(diào)高監(jiān)測頻率對該硬件負(fù)載再次監(jiān)測。
[0044]同時(shí)本發(fā)明充分考慮到多主機(jī)集群系統(tǒng)的可擴(kuò)展性,適用于主機(jī)節(jié)點(diǎn)數(shù)量不等的不同規(guī)模的多主機(jī)集群系統(tǒng)。
【附圖說明】
[0045]圖1是多主機(jī)集群系統(tǒng)的一種實(shí)施例示意圖。
[0046]圖2是多主機(jī)集群系統(tǒng)的另--種實(shí)施例示意圖。
[0047]圖3是本發(fā)明的監(jiān)測主機(jī)硬件負(fù)載的系統(tǒng)的模塊示意圖。
[0048]圖4是本發(fā)明所述的消息隊(duì)列的封裝序列示意圖。
[0049]圖5是本發(fā)明的消息隊(duì)列的另一種實(shí)施例示意圖。
[0050]圖6是本發(fā)明所述的第一狀態(tài)事件示意圖。
[0051]圖7是本發(fā)明所述的第二狀態(tài)事件示意圖。
[0052]圖8是本發(fā)明的監(jiān)測主機(jī)硬件負(fù)載的方法流程框架圖。
【具體實(shí)施方式】
[0053]下面將結(jié)合附圖以及具體實(shí)施方法來詳細(xì)說明本發(fā)明,在本發(fā)明的示意性實(shí)施例及說明用來解釋本發(fā)明,但并不作為對本發(fā)明的限定。
[0054]如圖1、2所示,本發(fā)明一種監(jiān)測主機(jī)硬件負(fù)載的系統(tǒng),其適用于多主機(jī)集群系統(tǒng)。所述多主機(jī)集群系統(tǒng)包括有NI到Nn總共η個(gè)主機(jī)節(jié)點(diǎn),其中η大于等于2,所述η個(gè)主機(jī)節(jié)點(diǎn)包括I個(gè)管理節(jié)點(diǎn)、m個(gè)監(jiān)控節(jié)點(diǎn)和存儲(chǔ)節(jié)點(diǎn)。
[0055]如圖1所示,若m等于1,即只有I個(gè)監(jiān)控節(jié)點(diǎn)時(shí),且管理節(jié)點(diǎn)和監(jiān)控節(jié)點(diǎn)為同一主機(jī)節(jié)點(diǎn)時(shí),則有η-1存儲(chǔ)節(jié)點(diǎn);
[0056]若m大于等于1,且管理節(jié)點(diǎn)和監(jiān)控節(jié)點(diǎn)不是同一主機(jī)節(jié)點(diǎn),則有n-m-1個(gè)存儲(chǔ)節(jié)點(diǎn)。如圖2所示,m為2,即有兩個(gè)監(jiān)控節(jié)點(diǎn)。
[0057]也即所述監(jiān)控節(jié)點(diǎn)可以只有I個(gè),也可以有多個(gè),可以和管理節(jié)點(diǎn)在同一主機(jī)節(jié)點(diǎn)上,也可以在不同主機(jī)節(jié)點(diǎn)上。
[0058]其中,本發(fā)明所涉及到的主機(jī)硬件負(fù)載包括有主機(jī)板,中央處理器,內(nèi)存儲(chǔ)器,夕卜存儲(chǔ)器,網(wǎng)絡(luò)適配器和冷卻單元,在具體監(jiān)測時(shí),可以根據(jù)需要監(jiān)測所述上述主機(jī)硬件負(fù)載中的一個(gè)或多個(gè),以獲取相應(yīng)的負(fù)載參數(shù)值。
[0059]如圖3所示,本發(fā)明一種監(jiān)測主機(jī)硬件負(fù)載的系統(tǒng),包括有:閾值設(shè)置模塊1、負(fù)載監(jiān)測模塊2、比較判定模塊3以及處理模塊4。
[0060]下面將分別對各模塊進(jìn)行描述說明:
[0061]閾值設(shè)置模塊1:
[0062]所述閾值設(shè)置模塊I集成在多主機(jī)集群系統(tǒng)的管理節(jié)點(diǎn)上;用以將負(fù)載參數(shù)的預(yù)設(shè)閾值和預(yù)設(shè)區(qū)間按照一定的序列封裝成第一消息隊(duì)列,存儲(chǔ)在管理消息數(shù)據(jù)庫中。
[0063]本模塊中涉及到的預(yù)設(shè)閥值包括主機(jī)板的溫度,中央處理器的溫度、中央處理器的使用率,內(nèi)存儲(chǔ)器的溫度、內(nèi)存儲(chǔ)器的占用率,外存儲(chǔ)器的溫度、外存儲(chǔ)器的占用率,網(wǎng)絡(luò)適配器的流量、冷卻單元的運(yùn)行速度的第一閾值和第二閾值。
[0064]其中,主機(jī)板的溫度,中央處理器的溫度、中央處理器的使用率,內(nèi)存儲(chǔ)器的溫度、內(nèi)存儲(chǔ)器的占用率,外存儲(chǔ)器的溫度、外存儲(chǔ)器的占用率,網(wǎng)絡(luò)適配器流量的第一閾值均小于第二閾值。例如主機(jī)板的溫度的第一閾值設(shè)置為40°C,第二閾值設(shè)置為70°C ;中央處理器的使用率的第一閾值設(shè)置為40%,第二閾值設(shè)置為70%。其中,具體預(yù)設(shè)閾值的具體數(shù)值可根據(jù)硬件負(fù)載的常用閾值進(jìn)行自定義設(shè)置。
[0065]進(jìn)一步,根據(jù)預(yù)設(shè)閾值,將小于或等于第一閥值的區(qū)域定義為第一區(qū)間;將大于第一閥值且低于或等于第二閥值的區(qū)域定義為第二區(qū)間;將大于第二閥值的區(qū)域定義為第三區(qū)間。具體的,例如內(nèi)存儲(chǔ)器的溫度的第一閾值為40°C,第二閾值為70°C;將內(nèi)存儲(chǔ)器的溫度小于或等于為40°C的區(qū)域定義為第一區(qū)間,將大于40°C且低于或等于70°C的區(qū)域定義為第二區(qū)間,將大于70°C的區(qū)域定義為第三區(qū)間。
[0066]其中,冷卻單元的運(yùn)行速度的第一閾值大于第二閾值。例如冷卻單元的運(yùn)行速度的第一閾值為70%,第二閾值為40% ;進(jìn)一步地,將冷卻單元的運(yùn)行速度大于或等于70%的區(qū)域定義為第一區(qū)間,將大于或等于40%且小于70%的區(qū)域定義為第二區(qū)間,將小于40%的區(qū)域定義為第三區(qū)間。當(dāng)冷卻單元的運(yùn)行速度小于正常運(yùn)行速度的70%時(shí),冷卻單元即不能良好散熱。
[0067]其中,所述第一消息隊(duì)列可以按照如圖4所示的封裝序列進(jìn)行封裝。即按照主機(jī)板的溫度,中央處理器的溫度、中央處理器的使用率,內(nèi)存儲(chǔ)器的溫度、內(nèi)存儲(chǔ)器的占用率,外存儲(chǔ)器的溫度、外存儲(chǔ)器的占用率,網(wǎng)絡(luò)適配器的流量、冷卻單元的運(yùn)行速度順序,把相應(yīng)負(fù)載參數(shù)的閾值和區(qū)間封裝成第一消息隊(duì)列。
[0068]負(fù)載監(jiān)測模塊2:
[0069]所述負(fù)載監(jiān)測模塊2集成在多主機(jī)集群系統(tǒng)的監(jiān)控節(jié)點(diǎn)上,用以對主機(jī)硬件負(fù)載進(jìn)行實(shí)時(shí)監(jiān)測,獲取主機(jī)硬件負(fù)載的負(fù)載參數(shù)值,其中實(shí)時(shí)監(jiān)測是以一固定監(jiān)測頻率進(jìn)行的,也即每隔一個(gè)固定時(shí)長就去獲取一次多主機(jī)集群系統(tǒng)中各個(gè)主機(jī)的中央處理器的溫度、中央處理器的使用率,內(nèi)存儲(chǔ)器的占用率,外存儲(chǔ)器的溫度、外存儲(chǔ)器的占用率,網(wǎng)絡(luò)適配器流量和冷卻單元運(yùn)行速度。
[0070]所述負(fù)載監(jiān)測模塊2在獲取到負(fù)載參數(shù)值后,按照與第一消息隊(duì)列相同的序列將獲取到的負(fù)載參數(shù)值封裝為第二消息隊(duì)列。例如,如圖4所示,按照中央處理器的溫度、中央處理器的使用率,內(nèi)存儲(chǔ)器的占用率,外存儲(chǔ)器的溫度、外存儲(chǔ)器的占用率,網(wǎng)絡(luò)適配器流量和冷卻單元運(yùn)行速度這樣的序列,將各項(xiàng)負(fù)載參數(shù)值封裝成第二消息隊(duì)列。
[0071]如果只有I個(gè)監(jiān)控節(jié)點(diǎn)且和管理節(jié)點(diǎn)在同一主機(jī)節(jié)點(diǎn)上,則所述第二消息隊(duì)列直接存入消息管理數(shù)據(jù)庫中。
[0072]如果監(jiān)控節(jié)點(diǎn)大于等于I個(gè)且和管理節(jié)點(diǎn)不再同一主機(jī)節(jié)點(diǎn)上,則所述負(fù)載監(jiān)測模塊2會(huì)將第二消息隊(duì)列以臨時(shí)文件的方式先存儲(chǔ)到所述多主機(jī)集群系統(tǒng)的監(jiān)控節(jié)點(diǎn)的監(jiān)控消息數(shù)據(jù)庫中。同時(shí)所述負(fù)載監(jiān)測模塊2將所述第二消息隊(duì)列發(fā)送至所述管理節(jié)點(diǎn)。
[0073]并且在監(jiān)控節(jié)點(diǎn)大于I個(gè)時(shí),在所述負(fù)載監(jiān)測模塊2將所述第二消息隊(duì)列發(fā)送至所述管理節(jié)點(diǎn)前,所述負(fù)載監(jiān)測模塊2會(huì)同步各監(jiān)控節(jié)點(diǎn)之間的第二消息隊(duì)列。待同步完成后,所述負(fù)載監(jiān)測模塊2再將這個(gè)第二消息隊(duì)列發(fā)送到管理節(jié)點(diǎn)。
[0074]其中,當(dāng)完成一次監(jiān)測并獲取負(fù)載參數(shù)值后,所述負(fù)載監(jiān)測模塊2將更新第二消息隊(duì)列中的各負(fù)載參數(shù)值。
[0075]需要說明的是,當(dāng)初次判定某一硬件負(fù)載的狀態(tài)為第二異常狀態(tài)時(shí),然后調(diào)高固定監(jiān)測頻率對該硬件負(fù)載再次監(jiān)測,再次獲取該硬件負(fù)載的負(fù)載參數(shù)值,并且將該負(fù)載參數(shù)值封裝為新的第二消息隊(duì)列。此時(shí),如果只有個(gè)別負(fù)載參數(shù)為第二異常狀態(tài),例如,只有中央處理器的使用率、網(wǎng)絡(luò)適配器流量和冷卻單元的運(yùn)行速度出現(xiàn)第二異常狀態(tài),則此時(shí)只對中央處理器的使用率、網(wǎng)絡(luò)適配器流量和冷卻單元的運(yùn)行速度調(diào)高監(jiān)測頻率再次監(jiān)測并獲取相應(yīng)的負(fù)載參數(shù)值,并將相應(yīng)的負(fù)載參數(shù)值封裝為新的第二消息隊(duì)列。如圖5所示,此時(shí)的第二消息隊(duì)列除了中央處理器的使用率、網(wǎng)絡(luò)適配器流量和冷卻單元的運(yùn)行速度對應(yīng)序列位置,其他序列位置為空。
[0076]其中,主機(jī)板、中央處理器、內(nèi)存儲(chǔ)器、外存儲(chǔ)器、網(wǎng)絡(luò)適配器上均設(shè)置有溫度傳感器,用以監(jiān)測各主機(jī)硬件單元的溫度;冷卻單元上設(shè)置有轉(zhuǎn)速傳感器,用以監(jiān)測冷卻單元的轉(zhuǎn)速。
[0077]所述主機(jī)板上還設(shè)置有監(jiān)控芯片,用以接收溫度傳感器和轉(zhuǎn)速傳感器的信號(hào)。
[0078]其中,所述主機(jī)硬件負(fù)載還包括相應(yīng)的驅(qū)動(dòng)組件,所述驅(qū)動(dòng)組件用以獲取并記錄中央處理器的使用率,內(nèi)存儲(chǔ)器的占用率,外存儲(chǔ)器的占用率,網(wǎng)絡(luò)適配器的流量。
[