本發(fā)明涉及存儲技術(shù)領(lǐng)域,特別是涉及一種分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法及模塊。
背景技術(shù):
集群中包含多個節(jié)點(diǎn),每個節(jié)點(diǎn)都有其自身的監(jiān)控模塊,監(jiān)控模塊與操作系統(tǒng)通信以獲取該節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。監(jiān)控模塊包括,發(fā)送守護(hù)進(jìn)程和接收守護(hù)進(jìn)程。這些節(jié)點(diǎn)在拓?fù)浣Y(jié)構(gòu)上,分為管理節(jié)點(diǎn)和葉子節(jié)點(diǎn)。葉子節(jié)點(diǎn)所在的監(jiān)控模塊的發(fā)送守護(hù)進(jìn)程只負(fù)責(zé)監(jiān)控自身節(jié)點(diǎn),并將監(jiān)控數(shù)據(jù)發(fā)送給對應(yīng)的管理節(jié)點(diǎn)的接收守護(hù)進(jìn)程。管理節(jié)點(diǎn)的監(jiān)控模塊中的發(fā)送守護(hù)進(jìn)程負(fù)責(zé)監(jiān)控自身節(jié)點(diǎn),并將監(jiān)控數(shù)據(jù)發(fā)送至本監(jiān)控模塊的接收守護(hù)進(jìn)程。另外,管理節(jié)點(diǎn)的監(jiān)控模塊的接收守護(hù)進(jìn)程還需要將管理節(jié)點(diǎn)和葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)進(jìn)行解析并存儲至數(shù)據(jù)庫中。
由于在運(yùn)行過程中,會不斷的加入新的葉子節(jié)點(diǎn),如果新的葉子節(jié)點(diǎn)數(shù)量過多,則管理節(jié)點(diǎn)的監(jiān)控模塊的接收守護(hù)進(jìn)程在將監(jiān)控數(shù)據(jù)存儲至數(shù)據(jù)庫時,會產(chǎn)生大量的IO,并且管理節(jié)點(diǎn)在解析各個葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)時,CPU負(fù)載壓力也會很大。
現(xiàn)有技術(shù)中,當(dāng)接收守護(hù)進(jìn)程的IO負(fù)載過重時,則會通過硬件開銷開啟緩存機(jī)制來保證監(jiān)控數(shù)據(jù)的存儲效率。但是這種方式需要緩存造成成本高,效率低,實時性無法保證等問題。
由此可見,如何在降低數(shù)據(jù)存儲的硬件開銷的前提下,保證監(jiān)控數(shù)據(jù)的存儲效率,可靠性以及實時性是本領(lǐng)域技術(shù)人員亟待解決地問題。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是提供一種分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法及模塊。
為解決上述技術(shù)問題,本發(fā)明提供一種分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法,包括:
管理節(jié)點(diǎn)的監(jiān)控模塊獲取所述管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)以及獲取當(dāng)前系統(tǒng)內(nèi)對應(yīng)的葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù),當(dāng)有新的節(jié)點(diǎn)加入所述系統(tǒng)時,判斷解析所述葉子節(jié)點(diǎn)、所述新的節(jié)點(diǎn)和所述管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)的目標(biāo)工作量是否超過預(yù)設(shè)工作量,如果是則生成激活指令,并依據(jù)所述激活指令生成設(shè)置指令,將所述設(shè)置指令發(fā)送給所述新的節(jié)點(diǎn)的監(jiān)控模塊以使所述新的節(jié)點(diǎn)作為之后加入所述系統(tǒng)的節(jié)點(diǎn)的管理節(jié)點(diǎn)。
優(yōu)選地,根據(jù)所述葉子節(jié)點(diǎn)的數(shù)量和各所述葉子節(jié)點(diǎn)的監(jiān)控指標(biāo)設(shè)置所述預(yù)設(shè)工作量。
優(yōu)選地,所述管理節(jié)點(diǎn)的監(jiān)控模塊獲取所述管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)具體為:
向操作系統(tǒng)發(fā)送包含本節(jié)點(diǎn)信息的請求數(shù)據(jù),并轉(zhuǎn)發(fā)所述操作系統(tǒng)發(fā)送的所述管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù);
接收所述管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
優(yōu)選地,所述管理節(jié)點(diǎn)的監(jiān)控模塊獲取所述葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)具體為:
所述管理節(jié)點(diǎn)的監(jiān)控模塊通過所述葉子節(jié)點(diǎn)的監(jiān)控模塊獲取所述葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
優(yōu)選地,所述葉子節(jié)點(diǎn)的監(jiān)控模塊獲取所述葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)具體為:
向所述操作系統(tǒng)發(fā)送包含本節(jié)點(diǎn)信息的請求數(shù)據(jù),并轉(zhuǎn)發(fā)所述操作系統(tǒng)發(fā)送的所述葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù);
接收所述葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
一種分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控模塊,包括:
接收守護(hù)進(jìn)程,用于獲取所述管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)以及獲取當(dāng)前系統(tǒng)內(nèi)對應(yīng)的葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù),當(dāng)有新的節(jié)點(diǎn)加入所述系統(tǒng)時,判斷解析所述葉子節(jié)點(diǎn)、所述新的節(jié)點(diǎn)和所述管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)的目標(biāo)工作量是否超過預(yù)設(shè)工作量,如果是則生成激活指令;
ICIA守護(hù)進(jìn)程,用于依據(jù)所述激活指令生成設(shè)置指令,將所述設(shè)置指令發(fā)送給所述新的節(jié)點(diǎn)的監(jiān)控模塊以使所述新的節(jié)點(diǎn)作為之后加入所述系統(tǒng)的節(jié)點(diǎn)的管理節(jié)點(diǎn)。
優(yōu)選地,所述接收守護(hù)進(jìn)程中的所述預(yù)設(shè)工作量是根據(jù)所述葉子節(jié)點(diǎn)的數(shù)量和各所述葉子節(jié)點(diǎn)的監(jiān)控指標(biāo)設(shè)置。
優(yōu)選地,還包括:發(fā)送守護(hù)進(jìn)程;
所述發(fā)送守護(hù)進(jìn)程,用于向操作系統(tǒng)發(fā)送包含本節(jié)點(diǎn)信息的請求數(shù)據(jù),并向所述接收守護(hù)進(jìn)程轉(zhuǎn)發(fā)所述操作系統(tǒng)發(fā)送的所述管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
優(yōu)選地,所述管理節(jié)點(diǎn)的監(jiān)控模塊的接收守護(hù)進(jìn)程與所述葉子節(jié)點(diǎn)的監(jiān)控模塊的發(fā)送守護(hù)進(jìn)程連接,用于獲取所述葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
本發(fā)明所提供的分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法及模塊,當(dāng)有新的節(jié)點(diǎn)加入系統(tǒng)時,判斷解析原有葉子節(jié)點(diǎn)、新的節(jié)點(diǎn)和本管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)的目標(biāo)工作量是否超過預(yù)設(shè)工作量,如果是則生成激活指令,并依據(jù)激活指令生成設(shè)置指令,將設(shè)置指令發(fā)送給新的節(jié)點(diǎn)的監(jiān)控模塊以使新的節(jié)點(diǎn)作為新的管理節(jié)點(diǎn)。由此可見,通過在監(jiān)控模塊中增加ICIA守護(hù)進(jìn)程,可以自動改變系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),當(dāng)節(jié)點(diǎn)的規(guī)模增大時,每個管理節(jié)點(diǎn)對應(yīng)的葉子節(jié)點(diǎn)不會無限增多,因此,管理節(jié)點(diǎn)的監(jiān)控模塊的IO負(fù)荷就不會無限增長,對應(yīng)的CPU的負(fù)載增量也會得到抑制,保證了監(jiān)控數(shù)據(jù)的存儲效率和可靠性。另外,無需增加硬件設(shè)備,從而節(jié)約成本。
附圖說明
為了更清楚地說明本發(fā)明實施例,下面將對實施例中所需要使用的附圖做簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明提供的一種分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法的流程圖;
圖2為本發(fā)明提供的一種沒有新的節(jié)點(diǎn)加入時管理節(jié)點(diǎn)和葉子節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)涫疽鈭D;
圖3為本發(fā)明提供的一種有新的節(jié)點(diǎn)加入時管理節(jié)點(diǎn)和葉子節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)涫疽鈭D。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下,所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)范圍。
本發(fā)明的核心是提供一種分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法及模塊。
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明方案,下面結(jié)合附圖和具體實施方式對本發(fā)明作進(jìn)一步的詳細(xì)說明。
本發(fā)明中提到的ICIA(Intelligently Check Cluster Scale and Intelligently Adjust Network topology)守護(hù)進(jìn)程的主要功能是根據(jù)管理節(jié)點(diǎn)集群規(guī)模大小和監(jiān)控指標(biāo)的數(shù)量來調(diào)整系統(tǒng)中網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。
圖1為本發(fā)明提供的一種分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法的流程圖。如圖1所示,分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法包括:
S10:獲取管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)以及獲取當(dāng)前系統(tǒng)內(nèi)對應(yīng)的葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù),當(dāng)有新的節(jié)點(diǎn)加入系統(tǒng)時,判斷解析葉子節(jié)點(diǎn)、新的節(jié)點(diǎn)和管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)的目標(biāo)工作量是否超過預(yù)設(shè)工作量,如果是則生成激活指令。
S11:依據(jù)激活指令生成設(shè)置指令,將設(shè)置指令發(fā)送給新的節(jié)點(diǎn)的監(jiān)控模塊以使新的節(jié)點(diǎn)作為之后加入系統(tǒng)的節(jié)點(diǎn)的管理節(jié)點(diǎn)。
可以理解的是,本文中無論是管理節(jié)點(diǎn)還是葉子節(jié)點(diǎn)都是系統(tǒng)內(nèi)的節(jié)點(diǎn),任何一個節(jié)點(diǎn)都有可能成為管理節(jié)點(diǎn),也有可能成為葉子節(jié)點(diǎn)。因此,一個節(jié)點(diǎn)為葉子節(jié)點(diǎn)時,其能夠執(zhí)行葉子節(jié)點(diǎn)的功能,如果為管理節(jié)點(diǎn),則其能夠執(zhí)行管理節(jié)點(diǎn)的功能。
例如,在當(dāng)前系統(tǒng)中共有6個節(jié)點(diǎn),有一個管理節(jié)點(diǎn),有5個葉子節(jié)點(diǎn),當(dāng)?shù)?個節(jié)點(diǎn),即新的節(jié)點(diǎn)加入時,該節(jié)點(diǎn)有可能成為現(xiàn)有的管理節(jié)點(diǎn)對應(yīng)的葉子節(jié)點(diǎn),也有可能成為新的管理節(jié)點(diǎn),與現(xiàn)有的管理節(jié)點(diǎn)具有相同的功能。
當(dāng)系統(tǒng)內(nèi)有新的節(jié)點(diǎn)加入時,如果該節(jié)點(diǎn)作為葉子節(jié)點(diǎn)的話,則管理節(jié)點(diǎn)就多個了一個葉子節(jié)點(diǎn),因此,管理節(jié)點(diǎn)所在的監(jiān)控模塊解析的工作量除了原有的葉子節(jié)點(diǎn)和管理節(jié)點(diǎn)外,又增加了這個葉子節(jié)點(diǎn),因此,需要先判斷目標(biāo)工作量是否超過預(yù)設(shè)工作量。這里的目標(biāo)工作量就是解析原有的葉子節(jié)點(diǎn)、本管理節(jié)點(diǎn)以及新加入的節(jié)點(diǎn)的工作量。如果目標(biāo)工作量超過預(yù)設(shè)工作量的話,則說明新加入的節(jié)點(diǎn)無法作為本管理節(jié)點(diǎn)的葉子節(jié)點(diǎn),因此,需要生成激活指令。
當(dāng)接收到激活指令后,依據(jù)激活指令生成設(shè)置指令,將設(shè)置指令發(fā)送給新的節(jié)點(diǎn)的監(jiān)控模塊。新的節(jié)點(diǎn)的監(jiān)控模塊在接收到設(shè)置指令后,就執(zhí)行管理節(jié)點(diǎn)對應(yīng)的功能,此時,新的節(jié)點(diǎn)就變?yōu)樾碌墓芾砉?jié)點(diǎn)。如果系統(tǒng)再有新的節(jié)點(diǎn)加入,則該管理節(jié)點(diǎn)就重復(fù)上述步驟即可。通過上述方法可以改變系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),當(dāng)節(jié)點(diǎn)的規(guī)模增大時,每個管理節(jié)點(diǎn)對應(yīng)的葉子節(jié)點(diǎn)不會無限增多,因此,管理節(jié)點(diǎn)的監(jiān)控模塊的IO負(fù)荷就不會無限增長,對應(yīng)的CPU的負(fù)載增量也會得到抑制。
可以理解的是,當(dāng)新的節(jié)點(diǎn)加入時,目標(biāo)工作量沒有超過預(yù)設(shè)工作量,則新的節(jié)點(diǎn)就變?yōu)槿~子節(jié)點(diǎn),與原有的葉子節(jié)點(diǎn)相同。另外,預(yù)設(shè)工作量的設(shè)置并不是固定的,需要根據(jù)實際情況設(shè)置,例如只考慮葉子節(jié)點(diǎn)的數(shù)量,或者葉子節(jié)點(diǎn)的監(jiān)控指標(biāo),但是由于不同的葉子節(jié)點(diǎn)的監(jiān)控指標(biāo)不同,因此如果單獨(dú)考慮不能更合理的設(shè)置預(yù)設(shè)工作量,因此,作為優(yōu)選地實施方式,根據(jù)葉子節(jié)點(diǎn)的數(shù)量和各葉子節(jié)點(diǎn)的監(jiān)控指標(biāo)設(shè)置預(yù)設(shè)工作量。
在具體實施中,管理節(jié)點(diǎn)的監(jiān)控模塊獲取管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)和葉子節(jié)點(diǎn)的監(jiān)控模塊獲取葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)的過程是相同的。如下所述:
1)管理節(jié)點(diǎn)的監(jiān)控模塊獲取管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)具體為:
向操作系統(tǒng)發(fā)送包含本節(jié)點(diǎn)信息的請求數(shù)據(jù),并轉(zhuǎn)發(fā)操作系統(tǒng)發(fā)送的管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù);
接收管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
2)管理節(jié)點(diǎn)的監(jiān)控模塊獲取葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)具體為:
向操作系統(tǒng)發(fā)送包含本節(jié)點(diǎn)信息的請求數(shù)據(jù),并轉(zhuǎn)發(fā)操作系統(tǒng)發(fā)送的葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù);
接收葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
在具體實施中,管理節(jié)點(diǎn)的監(jiān)控模塊通過葉子節(jié)點(diǎn)的監(jiān)控模塊獲取葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
在上述實施例的基礎(chǔ)上,管理節(jié)點(diǎn)的監(jiān)控模塊將獲取到管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)和葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)存儲至數(shù)據(jù)庫中,后續(xù)過程不再贅述。
本實施例提供的分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法,當(dāng)有新的節(jié)點(diǎn)加入系統(tǒng)時,當(dāng)前管理節(jié)點(diǎn)的監(jiān)控模塊判斷解析原有葉子節(jié)點(diǎn)、新的節(jié)點(diǎn)和本管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)的目標(biāo)工作量是否超過預(yù)設(shè)工作量,如果是則生成激活指令,并依據(jù)激活指令生成設(shè)置指令,將設(shè)置指令發(fā)送給新的節(jié)點(diǎn)的監(jiān)控模塊以使新的節(jié)點(diǎn)作為新的管理節(jié)點(diǎn),在此之后,如果又有新的節(jié)點(diǎn)加入,則新的管理節(jié)點(diǎn)重復(fù)上述步驟即可,直到又產(chǎn)生新的管理節(jié)點(diǎn)為止。由此可見,通過上述方法可以改變系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),當(dāng)節(jié)點(diǎn)的規(guī)模增大時,每個管理節(jié)點(diǎn)對應(yīng)的葉子節(jié)點(diǎn)不會無限增多,因此,管理節(jié)點(diǎn)的監(jiān)控模塊的IO負(fù)荷就不會無限增長,對應(yīng)的CPU的負(fù)載增量也會得到抑制,保證了監(jiān)控數(shù)據(jù)的存儲效率和可靠性。另外,無需增加硬件設(shè)備,從而節(jié)約成本。
圖2為本發(fā)明提供的一種沒有新的節(jié)點(diǎn)加入時管理節(jié)點(diǎn)和葉子節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)涫疽鈭D。圖3為本發(fā)明提供的一種有新的節(jié)點(diǎn)加入時管理節(jié)點(diǎn)和葉子節(jié)點(diǎn)的網(wǎng)絡(luò)拓?fù)涫疽鈭D??梢岳斫獾氖?,任意一個節(jié)點(diǎn)都有可能作為管理節(jié)點(diǎn),也有可能為葉子節(jié)點(diǎn),因此,對應(yīng)的監(jiān)控模塊的結(jié)構(gòu)都是相同的。均包含有接收守護(hù)進(jìn)程10,ICIA守護(hù)進(jìn)程11和發(fā)送守護(hù)進(jìn)程12,只不過節(jié)點(diǎn)的類型不同時,每個進(jìn)程的作用不同。具體如下:
如圖2或圖3所示,分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控模塊,包括:
接收守護(hù)進(jìn)程10,用于獲取管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)以及獲取當(dāng)前系統(tǒng)內(nèi)對應(yīng)的葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù),當(dāng)有新的節(jié)點(diǎn)(第一行右側(cè)的節(jié)點(diǎn))加入系統(tǒng)時,判斷解析葉子節(jié)點(diǎn)、新的節(jié)點(diǎn)和管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)的目標(biāo)工作量是否超過預(yù)設(shè)工作量,如果是則生成激活指令;
ICIA守護(hù)進(jìn)程11,用于依據(jù)激活指令生成設(shè)置指令,將設(shè)置指令發(fā)送給新的節(jié)點(diǎn)的監(jiān)控模塊以使新的節(jié)點(diǎn)作為之后加入系統(tǒng)的節(jié)點(diǎn)的管理節(jié)點(diǎn)。
第二行右側(cè)的節(jié)點(diǎn)就是之后加入系統(tǒng)的節(jié)點(diǎn),因此,該節(jié)點(diǎn)對應(yīng)的管理節(jié)點(diǎn)就是第一行右側(cè)的管理節(jié)點(diǎn)。
可以理解的是,葉子節(jié)點(diǎn)中的ICIA守護(hù)進(jìn)程11是空閑的,只有該節(jié)點(diǎn)成為管理節(jié)點(diǎn)時才被調(diào)用。
作為優(yōu)選的實施方式,接收守護(hù)進(jìn)程11中的預(yù)設(shè)工作量是根據(jù)葉子節(jié)點(diǎn)的數(shù)量和各葉子節(jié)點(diǎn)的監(jiān)控指標(biāo)設(shè)置。
可以理解的是,葉子節(jié)點(diǎn)中的接收守護(hù)進(jìn)程11不需要解析監(jiān)控數(shù)據(jù),這里的接收守護(hù)進(jìn)程11指的是管理節(jié)點(diǎn)的監(jiān)控模塊中的接收守護(hù)進(jìn)程。
作為優(yōu)選的實施方式,還包括:發(fā)送守護(hù)進(jìn)程12;
發(fā)送守護(hù)進(jìn)程12,用于向操作系統(tǒng)發(fā)送包含本節(jié)點(diǎn)信息的請求數(shù)據(jù),并向接收守護(hù)進(jìn)程10轉(zhuǎn)發(fā)操作系統(tǒng)發(fā)送的管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
作為優(yōu)選的實施方式,管理節(jié)點(diǎn)的監(jiān)控模塊的接收守護(hù)進(jìn)程10與葉子節(jié)點(diǎn)的監(jiān)控模塊的發(fā)送守護(hù)進(jìn)程12連接,用于獲取葉子節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)。
可以理解的是,上述模塊中各個進(jìn)程都是基于管理節(jié)點(diǎn)的監(jiān)控模塊進(jìn)行描述的,但是由于一個節(jié)點(diǎn)有可能為葉子節(jié)點(diǎn)也有可以為管理節(jié)點(diǎn),因此任意一個節(jié)點(diǎn)的監(jiān)控模塊在現(xiàn)有技術(shù)的基礎(chǔ)上均包含ICIA守護(hù)進(jìn)程11,只不過,具體的實施方式需要根據(jù)該節(jié)點(diǎn)為管理節(jié)點(diǎn)還是葉子節(jié)點(diǎn)而決定。
如果一個節(jié)點(diǎn)為葉子節(jié)點(diǎn),那么其監(jiān)控模塊的ICIA守護(hù)進(jìn)程11是空閑的,其余實施方式與現(xiàn)有技術(shù)相同,這里不再贅述。
由于模塊部分的實施例與方法部分的實施例相互對應(yīng),因此模塊部分的實施例請參見方法部分的實施例的描述,這里暫不贅述。
本實施例提供的分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控模塊,當(dāng)有新的節(jié)點(diǎn)加入系統(tǒng)時,判斷解析原有葉子節(jié)點(diǎn)、新的節(jié)點(diǎn)和本管理節(jié)點(diǎn)的監(jiān)控數(shù)據(jù)的目標(biāo)工作量是否超過預(yù)設(shè)工作量,如果是則生成激活指令,并依據(jù)激活指令生成設(shè)置指令,將設(shè)置指令發(fā)送給新的節(jié)點(diǎn)的監(jiān)控模塊以使新的節(jié)點(diǎn)作為新的管理節(jié)點(diǎn)。由此可見,通過在監(jiān)控模塊中增加ICIA守護(hù)進(jìn)程,可以自動改變系統(tǒng)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),當(dāng)節(jié)點(diǎn)的規(guī)模增大時,每個管理節(jié)點(diǎn)對應(yīng)的葉子節(jié)點(diǎn)不會無限增多,因此,管理節(jié)點(diǎn)的監(jiān)控模塊的IO負(fù)荷就不會無限增長,對應(yīng)的CPU的負(fù)載增量也會得到抑制,保證了監(jiān)控數(shù)據(jù)的存儲效率和可靠性。另外,無需增加硬件設(shè)備,從而節(jié)約成本。
以上對本發(fā)明所提供的分布式集群數(shù)據(jù)的管理節(jié)點(diǎn)的監(jiān)控方法及模塊進(jìn)行了詳細(xì)介紹。說明書中各個實施例采用遞進(jìn)的方式描述,每個實施例重點(diǎn)說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進(jìn)行若干改進(jìn)和修飾,這些改進(jìn)和修飾也落入本發(fā)明權(quán)利要求的保護(hù)范圍內(nèi)。
專業(yè)人員還可以進(jìn)一步意識到,結(jié)合本文中所公開的實施例描述的各示例的單元及算法步驟,能夠以電子硬件、計算機(jī)軟件或者二者的結(jié)合來實現(xiàn),為了清楚地說明硬件和軟件的可互換性,在上述說明中已經(jīng)按照功能一般性地描述了各示例的組成及步驟。這些功能究竟以硬件還是軟件方式來執(zhí)行,取決于技術(shù)方案的特定應(yīng)用和設(shè)計約束條件。專業(yè)技術(shù)人員可以對每個特定的應(yīng)用來使用不同方法來實現(xiàn)所描述的功能,但是這種實現(xiàn)不應(yīng)認(rèn)為超出本發(fā)明的范圍。
結(jié)合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實施。軟件模塊可以置于隨機(jī)存儲器(RAM)、內(nèi)存、只讀存儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或技術(shù)領(lǐng)域內(nèi)所公知的任意其它形式的存儲介質(zhì)中。