欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法

文檔序號(hào):7869163閱讀:957來源:國知局
專利名稱:一種大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法
技術(shù)領(lǐng)域
本發(fā)明屬于計(jì)算機(jī)集群運(yùn)維領(lǐng)域,更具體地,涉及一種大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法。
背景技術(shù)
對(duì)整個(gè)集群的資源和性能進(jìn)行有效監(jiān)控對(duì)于保證集群環(huán)境的高可用性至關(guān)重要。隨著集群規(guī)模越來越大,如何降低監(jiān)控系統(tǒng)的開銷也變的尤為關(guān)鍵。監(jiān)控?cái)?shù)據(jù)的聚合方法的選擇直接影響了集群的負(fù)載等,同時(shí)也要考慮選擇的聚合方法能夠適應(yīng)集群的伸縮變換。傳統(tǒng)的監(jiān)控?cái)?shù)據(jù)聚合方法主要有兩種:一種是集中式的聚合方法,如圖1所示,所有的監(jiān)控節(jié)點(diǎn)直接發(fā)送數(shù)據(jù)給主控節(jié)點(diǎn),這種聚合方法適用于集群規(guī)模較小的情況,實(shí)現(xiàn)起來簡單快速方便;另外一種是分層式的聚合方法,如圖2所示,這種方法適用于集群規(guī)模較大的情況,而且可伸縮性也較好,但是實(shí)現(xiàn)起來相對(duì)復(fù)雜。例如目前常用的開源監(jiān)控系統(tǒng)Ganglia正是采用這種分層式的聚合方法,但是Ganglia聚合樹的構(gòu)建需要手動(dòng)配置,除非重新進(jìn)行手動(dòng)配置,否則運(yùn)行時(shí)的拓?fù)洳粫?huì)發(fā)生變化,另外中間進(jìn)程(監(jiān)控?cái)?shù)據(jù)處理)的異常也會(huì)導(dǎo)致數(shù)據(jù)的丟失。因此,設(shè)計(jì)的聚合方法也要考慮到聚合樹的自動(dòng)配置建立以及中間進(jìn)程失效檢測恢復(fù)的問題。目前對(duì)于大規(guī)模集群環(huán)境來說,一般情況下少則幾百個(gè)節(jié)點(diǎn),多則成千上萬個(gè)節(jié)點(diǎn)。本發(fā)明提出的面向集群環(huán)境的監(jiān)控?cái)?shù)據(jù)聚合方法,主要針對(duì)大規(guī)模的分布式集群。盡管集群中的每個(gè)節(jié)點(diǎn)的監(jiān)控?cái)?shù)據(jù)量是有限的,但是在大規(guī)模分布式計(jì)算場景下,確保主控節(jié)點(diǎn)快速接收到所有監(jiān)控?cái)?shù)據(jù)并維持節(jié)點(diǎn)的負(fù)載均衡具有一定的挑戰(zhàn)。面對(duì)這個(gè)挑戰(zhàn),常見的聚合方法是構(gòu)建樹型結(jié)構(gòu),例如構(gòu)建二叉樹等。這些方法可能在集群規(guī)模達(dá)到一定程度時(shí),主控節(jié)點(diǎn)負(fù)載可能會(huì)成為集群正常運(yùn)行的一個(gè)瓶頸,主要原因是在構(gòu)建聚合樹的過程中,沒有對(duì)聚合樹的高度和寬度做出合適的折中處理,并能實(shí)時(shí)的根據(jù)集群規(guī)模的大小自適應(yīng)動(dòng)態(tài)的做出調(diào)整。

發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)的缺陷,本發(fā)明的目的在于提供一種大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法,旨在克服傳統(tǒng)的監(jiān)控?cái)?shù)據(jù)聚合可能導(dǎo)致的集群節(jié)點(diǎn)負(fù)載不均衡的問題,而且能夠動(dòng)態(tài)的自適應(yīng)集群規(guī)模的伸縮變化。為實(shí)現(xiàn)上述目的,本發(fā)明提供了一種大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法,包括以下步驟:(I)所有監(jiān)控節(jié)點(diǎn)向主控節(jié)點(diǎn)發(fā)起注冊(cè)請(qǐng)求,注冊(cè)請(qǐng)求中攜帶有該節(jié)點(diǎn)所要采集的數(shù)據(jù),并按順序從主控節(jié)點(diǎn)分別獲得一個(gè)唯一的節(jié)點(diǎn)編號(hào)Ni,其中i為自然數(shù),主控節(jié)點(diǎn)編號(hào)設(shè)置為NO ;(2)主控節(jié)點(diǎn)根據(jù)聚合節(jié)點(diǎn)負(fù)載公式以及約束條件計(jì)算聚合樹所需要的聚合節(jié)點(diǎn)個(gè)數(shù),并根據(jù)聚合節(jié)點(diǎn)負(fù)載均衡的原則從所有監(jiān)控節(jié)點(diǎn)中選取合適的聚合節(jié)點(diǎn);(3)根據(jù)步驟(2)中獲得的聚合節(jié)點(diǎn)構(gòu)建聚合樹;具體而言,聚合樹為一顆完全二叉樹,根節(jié)點(diǎn)為主控節(jié)點(diǎn)NO,聚合節(jié)點(diǎn)按照節(jié)點(diǎn)編號(hào)Ni按序從小到大排列并構(gòu)建完全二叉樹;(4)主控節(jié)點(diǎn)判斷是否存在聚合節(jié)點(diǎn)失效或者集群規(guī)模是否發(fā)生改變,如果是則進(jìn)入步驟(5),否則進(jìn)入步驟(6);(5)主控節(jié)點(diǎn)對(duì)聚合節(jié)點(diǎn)的失效或者集群規(guī)模的變化做出實(shí)時(shí)處理;具體而言,如果是由聚合節(jié)點(diǎn)失效,則主控節(jié)點(diǎn)清理該失效的聚合節(jié)點(diǎn)的注冊(cè)信息,并返回步驟(2),如果是有監(jiān)控節(jié)點(diǎn)的注冊(cè)或者注銷,也即集群規(guī)模發(fā)生了變化,則返回步驟(2);(6)完成聚合樹的構(gòu)建;具體而言,監(jiān)控節(jié)點(diǎn)發(fā)送監(jiān)控?cái)?shù)據(jù)給它所在分組的聚合節(jié)點(diǎn),聚合節(jié)點(diǎn)把接收到的該組所有監(jiān)控節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行聚合,并發(fā)送給父節(jié)點(diǎn),最終聚合到主控節(jié)點(diǎn),主控節(jié)點(diǎn)進(jìn)行監(jiān)控?cái)?shù)據(jù)的存儲(chǔ)和數(shù)據(jù)分析,分析的結(jié)果以圖表的方式展示給集群運(yùn)維人員。在步驟(2)中,聚合節(jié)點(diǎn)的負(fù)載度量Loadn滿足目標(biāo)函數(shù):loadn = a*fn+b*gn,其中a,b為權(quán)重因子,且滿足a+b=l,fn為數(shù)據(jù)個(gè)數(shù)對(duì)節(jié)點(diǎn)負(fù)載的影響,gn為數(shù)據(jù)大小對(duì)節(jié)點(diǎn)負(fù)載的影響,且fn,gn都是標(biāo)量。在步驟(2)中,聚合節(jié)點(diǎn)個(gè)數(shù)η彡Max,其中Max為一閾值,其取值范圍為集群節(jié)點(diǎn)數(shù)量的1/50到1/20。步驟(2)包括以下子步驟:(2.1)初始化聚合節(jié)點(diǎn)的個(gè)數(shù)n=2 ;(2.2)利用負(fù)載公式計(jì)算聚合節(jié)點(diǎn)個(gè)數(shù)η時(shí)對(duì)應(yīng)的整體負(fù)載sum_loadn=n*1adx,1adx表示消息個(gè)數(shù)X對(duì)應(yīng)產(chǎn)生的單節(jié)點(diǎn)負(fù)載,X的取值為聚合樹葉子節(jié)點(diǎn)聚合的監(jiān)控節(jié)點(diǎn)
數(shù)量;(2.3)設(shè)置n=n+l,并且判斷η是否小于等于閾值Max,如果是則返回步驟(2.2),否則進(jìn)入步驟(2.4);(2.4)從計(jì)算得到的所有sum_loadn中取最小值對(duì)應(yīng)的聚合節(jié)點(diǎn)個(gè)數(shù)m作為聚合樹所需要的聚合節(jié)點(diǎn)個(gè)數(shù), 即在整個(gè)數(shù)據(jù)聚合的過程中此時(shí)的負(fù)載最低;(2.5)根據(jù)步驟(2.4)中所求得的聚合節(jié)點(diǎn)個(gè)數(shù)m,依據(jù)節(jié)點(diǎn)編號(hào)Ni從小到大按序分為m組;(2.6)在m個(gè)組中隨機(jī)選取一個(gè)監(jiān)控節(jié)點(diǎn)作為該組的聚合節(jié)點(diǎn),初始化各組的監(jiān)控節(jié)點(diǎn)代理,以確定其聚合節(jié)點(diǎn),使得監(jiān)控代理采集的監(jiān)控?cái)?shù)據(jù)發(fā)給它所在分組的聚合節(jié)點(diǎn)。步驟(2-5)中的分組原則為:聚合節(jié)點(diǎn)的子節(jié)點(diǎn)所聚合的監(jiān)控節(jié)點(diǎn)數(shù)量是該聚合節(jié)點(diǎn)所聚合的監(jiān)控節(jié)點(diǎn)數(shù)量的2倍,同時(shí)已知總的監(jiān)控節(jié)點(diǎn)數(shù)量,由此根據(jù)等比數(shù)列求和公式計(jì)算得到各組監(jiān)控節(jié)點(diǎn)的數(shù)量。步驟(4)包括以下子步驟:(4.1)初始化聚合節(jié)點(diǎn)的失效計(jì)數(shù)器cnt=0 ;(4.2)主控節(jié)點(diǎn)判斷是否有新的監(jiān)控節(jié)點(diǎn)的注冊(cè)或者已有的監(jiān)控節(jié)點(diǎn)的注銷,即集群規(guī)模發(fā)生了變化,如果有則進(jìn)入步驟(4.8 ),否則進(jìn)入步驟(4.3 );
(4.3)聚合節(jié)點(diǎn)以固定時(shí)間間隔interval接收子節(jié)點(diǎn)child的聚合的監(jiān)控?cái)?shù)據(jù),并重置cnt=0,利用相關(guān)聚合函數(shù)對(duì)監(jiān)控?cái)?shù)據(jù)進(jìn)行過濾合并處理,發(fā)給該聚合節(jié)點(diǎn)的父節(jié)
占.
(4.4)聚合節(jié)點(diǎn)每隔一個(gè)時(shí)間間隔interval去判斷是否沒有收到子節(jié)點(diǎn)child的消息,如果是則進(jìn)入步驟(4.5),否則返回步驟(4.3);(4.5)設(shè)置cnt=cnt+l,判斷cnt是否大于等于5,如果是則進(jìn)入步驟(4.6),否則返回步驟(4.4);(4.6)聚合節(jié)點(diǎn)向子節(jié)點(diǎn)child連續(xù)三次發(fā)送失效探測報(bào)文;(4.7)聚合節(jié)點(diǎn)判斷是否沒有收到子節(jié)點(diǎn)child的任何反饋,如果是則進(jìn)入步驟(5),否則返回步驟(4.3)。固定時(shí)間間隔interval的取值范圍是I至5秒。通過本發(fā)明所構(gòu)思的以上技術(shù)方案,與現(xiàn)有技術(shù)相比,本發(fā)明具有以下的有益效果:(I)降低了監(jiān)控系統(tǒng)的開銷:由于步驟(2)采用了負(fù)載公式以及集群的所有節(jié)點(diǎn)數(shù)量計(jì)算聚合節(jié)點(diǎn)的個(gè)數(shù),以及步驟(3)根據(jù)步驟(2)獲得的聚合節(jié)點(diǎn)構(gòu)建聚合樹以完成監(jiān)控?cái)?shù)據(jù)的聚合,由此確保在整個(gè)數(shù)據(jù)聚合的過程中對(duì)集群的負(fù)載影響降到最低。(2)適用于大規(guī)模的集群環(huán)境的監(jiān)控:由于采用了步驟(2),聚合節(jié)點(diǎn)數(shù)量會(huì)隨著集群的規(guī)模的增長而增加,由此具有良好的可擴(kuò)展性,適用大規(guī)模的集群環(huán)境的監(jiān)控。(3)動(dòng)態(tài)的自適應(yīng)集群的伸縮變換:由于采用了步驟(5),監(jiān)控節(jié)點(diǎn)向主控節(jié)點(diǎn)的注冊(cè)或者注銷,由此使得在集群的規(guī)模發(fā)生變化時(shí)能夠重建聚合樹。(4)數(shù)據(jù)聚合的魯棒性:由于采用了步驟(5),當(dāng)主控節(jié)點(diǎn)探測到聚合節(jié)點(diǎn)失效時(shí)及時(shí)做出失效處理,由此保證了整個(gè)集群監(jiān)控系統(tǒng)的數(shù)據(jù)聚合的魯棒性。


圖1為現(xiàn)有集群監(jiān)控系統(tǒng)的集中式數(shù)據(jù)聚合方法的架構(gòu)。圖2為現(xiàn)有集群監(jiān)控系統(tǒng)的分層式數(shù)據(jù)聚合方法的架構(gòu)。圖3為本發(fā)明大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法的系統(tǒng)架構(gòu)。圖4為本發(fā)明大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法的流程圖。圖5為本發(fā)明方法中步驟(2)的細(xì)化流程圖。圖6為本發(fā)明方法中步驟(4)的細(xì)化流程圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。在介紹具體方法步驟之前,有必要對(duì)集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合對(duì)監(jiān)控節(jié)點(diǎn)產(chǎn)生負(fù)載的決定因素做個(gè)說明。影響監(jiān)控節(jié)點(diǎn)負(fù)載壓力的因素主要有兩個(gè):一個(gè)是監(jiān)控節(jié)點(diǎn)接收消息的個(gè)數(shù)(子節(jié)點(diǎn)的個(gè)數(shù)),另外一個(gè)是監(jiān)控節(jié)點(diǎn)接收消息的大小,這兩個(gè)因素分別決定了聚合樹的寬度和高度,經(jīng)過試驗(yàn)發(fā)現(xiàn)消息的個(gè)數(shù)對(duì)節(jié)點(diǎn)負(fù)載的影響的比重相對(duì)更大。
本發(fā)明大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法根據(jù)影響監(jiān)控節(jié)點(diǎn)負(fù)載的因素進(jìn)行分析,對(duì)這兩個(gè)因素做出折中的考慮,從而保證了在數(shù)據(jù)聚合的過程中各個(gè)監(jiān)控節(jié)點(diǎn)的負(fù)載均衡,并使得整體的負(fù)載降到最低。同時(shí)通過構(gòu)建聚合樹的方式來進(jìn)行數(shù)據(jù)聚合,使其具有可伸縮性,適用于大規(guī)模的分布式集群。由于應(yīng)用的需求,可能在集群的運(yùn)行過程中,有時(shí)可能會(huì)發(fā)生節(jié)點(diǎn)的增刪或者是在數(shù)據(jù)聚合的過程中發(fā)生聚合節(jié)點(diǎn)的失效狀況,利用該方法可以迅速的重構(gòu)聚合樹,確保監(jiān)控系統(tǒng)的魯棒性。下面就結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明做進(jìn)一步詳細(xì)的說明。如圖3所示,本發(fā)明大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法是應(yīng)用到一種集群監(jiān)控系統(tǒng)架構(gòu)中,該集群監(jiān)控系統(tǒng)包括有一個(gè)主控節(jié)點(diǎn)和多個(gè)監(jiān)控節(jié)點(diǎn)。其中主控節(jié)點(diǎn)的主要功能是接收監(jiān)控節(jié)點(diǎn)注冊(cè)或者注銷,分析計(jì)算并確定聚合節(jié)點(diǎn)的個(gè)數(shù),控制構(gòu)建聚合樹,探測是否有聚合節(jié)點(diǎn)失效的狀況并做出失效的恢復(fù)處理,探測集群規(guī)模是否有發(fā)生改變,并做出自適應(yīng)的調(diào)整;監(jiān)控節(jié)點(diǎn)指的是集群環(huán)境下運(yùn)行監(jiān)控代理的所有節(jié)點(diǎn);聚合節(jié)點(diǎn)指的是指監(jiān)控節(jié)點(diǎn)采集的監(jiān)控?cái)?shù)據(jù)發(fā)往主控節(jié)點(diǎn)的聚合路由中的一個(gè)節(jié)點(diǎn),除了運(yùn)行監(jiān)控代理外,而且對(duì)該聚合節(jié)點(diǎn)在聚合樹的所有子節(jié)點(diǎn)的數(shù)據(jù)以及所在分組內(nèi)所有監(jiān)控節(jié)點(diǎn)數(shù)據(jù)進(jìn)行聚合并發(fā)送給父節(jié)點(diǎn)。如圖4所示,本發(fā)明大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法包括以下步驟:(I)所有監(jiān)控節(jié)點(diǎn)向主控節(jié)點(diǎn)發(fā)起注冊(cè)請(qǐng)求,注冊(cè)請(qǐng)求中攜帶有該節(jié)點(diǎn)所要采集的數(shù)據(jù),并按順序從主控節(jié)點(diǎn)分別獲得一個(gè)唯一的節(jié)點(diǎn)編號(hào)Ni (i為自然數(shù)),主控節(jié)點(diǎn)編號(hào)設(shè)置為NO;具體而言,是通過調(diào)用主控節(jié)點(diǎn)的注冊(cè)請(qǐng)求接口,傳遞的參數(shù)是監(jiān)控節(jié)點(diǎn)所要采集的監(jiān)控?cái)?shù)據(jù),例如cpu、內(nèi)存、網(wǎng)絡(luò)1/0,磁盤I/O等反應(yīng)節(jié)點(diǎn)資源性能指標(biāo)的數(shù)據(jù),如果注冊(cè)成功,則返回一個(gè)節(jié)點(diǎn)編號(hào)給注冊(cè)的監(jiān)控節(jié)點(diǎn),否則返回-1 ;(2)主控節(jié)點(diǎn)根據(jù)聚合節(jié)點(diǎn)負(fù)載公式以及約束條件計(jì)算聚合樹所需要的聚合節(jié)點(diǎn)個(gè)數(shù),并根據(jù)聚合節(jié)點(diǎn)負(fù)載均衡的原則 從所有監(jiān)控節(jié)點(diǎn)中選取合適的聚合節(jié)點(diǎn);具體而言,聚合節(jié)點(diǎn)的負(fù)載度量做如下的定義:設(shè)fn為數(shù)據(jù)個(gè)數(shù)對(duì)節(jié)點(diǎn)負(fù)載的影響,gn為數(shù)據(jù)大小對(duì)節(jié)點(diǎn)負(fù)載的影響,其中fn,8 都是標(biāo)量,通過實(shí)驗(yàn)?zāi)M出不同數(shù)據(jù)個(gè)數(shù)和不同數(shù)據(jù)大小對(duì)單節(jié)點(diǎn)的負(fù)載壓力(cpu利用率)的影響,建立一個(gè)二維表,便于負(fù)載的計(jì)算。定義度量節(jié)點(diǎn)負(fù)載的目標(biāo)函數(shù):load = a*fn+b*gn,其中a, b為權(quán)重因子,且滿足a+b=l。同時(shí)定義一個(gè)約束條件:聚合節(jié)點(diǎn)個(gè)數(shù)n SMax (取值范圍為集群節(jié)點(diǎn)數(shù)量的1/50到1/20)。通過計(jì)算選取不同聚合節(jié)點(diǎn)個(gè)數(shù)時(shí)監(jiān)控?cái)?shù)據(jù)聚合產(chǎn)生的總負(fù)載,總負(fù)載最低時(shí)的聚合節(jié)點(diǎn)個(gè)數(shù)m即為聚合樹的所有非根節(jié)點(diǎn)個(gè)數(shù)。為了盡可能保證所有聚合節(jié)點(diǎn)的負(fù)載均衡,聚合節(jié)點(diǎn)的子節(jié)點(diǎn)所聚合的監(jiān)控節(jié)點(diǎn)個(gè)數(shù)是該聚合節(jié)點(diǎn)所聚合的監(jiān)控節(jié)點(diǎn)個(gè)數(shù)的2倍,按照該原則,根據(jù)步驟(I)中獲取的節(jié)點(diǎn)編號(hào)Ni按序進(jìn)行分組,并在每組中隨機(jī)選取一個(gè)節(jié)點(diǎn)作為聚合節(jié)點(diǎn),然后初始化各組的監(jiān)控節(jié)點(diǎn)的監(jiān)控代理,以確定其聚合節(jié)點(diǎn),使得監(jiān)控代理采集的監(jiān)控?cái)?shù)據(jù)發(fā)給它所在分組的聚合節(jié)點(diǎn);(3)根據(jù)步驟(2)中獲得的聚合節(jié)點(diǎn)構(gòu)建聚合樹;具體而言,聚合樹為一顆完全二叉樹,根節(jié)點(diǎn)為主控節(jié)點(diǎn)NO,聚合節(jié)點(diǎn)按照節(jié)點(diǎn)編號(hào)Ni按序從小到大排列并構(gòu)建完全二叉樹;(4)主控節(jié)點(diǎn)判斷聚合樹中是否存在聚合節(jié)點(diǎn)失效或者集群規(guī)模是否發(fā)生改變,如果是則進(jìn)入步驟(5),否則進(jìn)入步驟(6);每個(gè)聚合節(jié)點(diǎn)與其父節(jié)點(diǎn)要保持聯(lián)系,主控節(jié)點(diǎn)會(huì)及時(shí)感知是否有聚合節(jié)點(diǎn)失效,而且主控節(jié)點(diǎn)一直能夠接收監(jiān)控節(jié)點(diǎn)的注冊(cè)或者注銷即集群規(guī)模發(fā)生伸縮變換;(5)主控節(jié)點(diǎn)對(duì)聚合節(jié)點(diǎn)的失效或者集群規(guī)模的變化做出實(shí)時(shí)處理;具體而言,如果有聚合節(jié)點(diǎn)失效,則主控節(jié)點(diǎn)清理該失效的聚合節(jié)點(diǎn)的注冊(cè)信息,并返回步驟(2),如果有監(jiān)控節(jié)點(diǎn)的注冊(cè)或者注銷,也即集群規(guī)模是否發(fā)生了變化,則返回步驟(2);(6)完成聚合樹的構(gòu)建;具體而言,監(jiān)控節(jié)點(diǎn)發(fā)送監(jiān)控?cái)?shù)據(jù)給它所在分組的聚合節(jié)點(diǎn),聚合節(jié)點(diǎn)把接收到的該組所有監(jiān)控節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行聚合,并發(fā)送給父節(jié)點(diǎn),最終聚合到主控節(jié)點(diǎn),主控節(jié)點(diǎn)進(jìn)行監(jiān)控?cái)?shù)據(jù)的存儲(chǔ)和數(shù)據(jù)分析,分析的結(jié)果以圖表的方式展示給集群運(yùn)維人員。如圖5所示,本發(fā)明方法中的步驟(2)包括以下子步驟:(2.1)初始化聚合節(jié)點(diǎn)的個(gè)數(shù)n=2 ;(2.2)利用負(fù)載公式計(jì)算聚合節(jié)點(diǎn)個(gè)數(shù)η時(shí)對(duì)應(yīng)的整體負(fù)載sum_loadn=n*1adx,1adx表示消息個(gè)數(shù)X對(duì)應(yīng)產(chǎn)生的單節(jié)點(diǎn)負(fù)載,X的取值為聚合樹葉子節(jié)點(diǎn)聚合的監(jiān)控節(jié)點(diǎn)
數(shù)量;(2.3)設(shè)置n=n+l,并且判斷η是否小于等于一個(gè)閾值Max (取值范圍為集群節(jié)點(diǎn)數(shù)量的1/50到1/20),如果是則返回步驟(2.2),否則進(jìn)入步驟(2.4);(2.4)從計(jì)算得到的所有sum_loadn中取最小值對(duì)應(yīng)的聚合節(jié)點(diǎn)個(gè)數(shù)m作為聚合樹所需要的聚合節(jié)點(diǎn)個(gè)數(shù),即在整個(gè)數(shù)據(jù)聚合的過程中此時(shí)的負(fù)載最低;(2.5)根據(jù)步驟(2.4)中所求得的聚合節(jié)點(diǎn)個(gè)數(shù)m,依據(jù)節(jié)點(diǎn)編號(hào)Ni從小到大按序分為m組,如圖3所示,為了保證各個(gè)聚合節(jié)點(diǎn)的負(fù)載均衡,分組原則為:聚合節(jié)點(diǎn)的子節(jié)點(diǎn)所聚合的監(jiān)控節(jié)點(diǎn)數(shù)量是該聚合節(jié)點(diǎn)所聚合的監(jiān)控節(jié)點(diǎn)數(shù)量的2倍,同時(shí)已知總的監(jiān)控節(jié)點(diǎn)數(shù)量,由此根據(jù)等比數(shù)列求和公式計(jì)算得到各組監(jiān)控節(jié)點(diǎn)的數(shù)量;(2.6)在m個(gè)組中隨機(jī)選取一個(gè)監(jiān)控節(jié)點(diǎn)作為該組的聚合節(jié)點(diǎn),初始化各組的監(jiān)控節(jié)點(diǎn)代理,以確定其聚合節(jié)點(diǎn),使得監(jiān)控代理采集的監(jiān)控?cái)?shù)據(jù)發(fā)給它所在分組的聚合節(jié)點(diǎn)。如圖6所示,本發(fā)明方法中步驟(4)包括以下子步驟:(4.1)初始化聚合節(jié)點(diǎn)的失效計(jì)數(shù)器cnt=0 ;(4.2)主控節(jié)點(diǎn)判斷是否有新的監(jiān)控節(jié)點(diǎn)的注冊(cè)或者已有的監(jiān)控節(jié)點(diǎn)的注銷,即集群規(guī)模發(fā)生了變化,如果有則進(jìn)入步驟(4.8 ),否則進(jìn)入步驟(4.3 );(4.3)聚合節(jié)點(diǎn)以固定時(shí)間間隔interval (其取值范圍為1_5秒)接收子節(jié)點(diǎn)child的聚合的監(jiān)控?cái)?shù)據(jù),并重置cnt=0,利用相關(guān)聚合函數(shù)對(duì)監(jiān)控?cái)?shù)據(jù)進(jìn)行過濾合并處理,發(fā)給該聚合節(jié)點(diǎn)的父節(jié)點(diǎn);(4.4)聚合節(jié)點(diǎn)每隔一個(gè)固定時(shí)間間隔interval去判斷是否沒有收到子節(jié)點(diǎn)child的消息,如果是則進(jìn)入步驟(4.5),否則返回步驟(4.3);(4.5)設(shè)置cnt=cnt+l,判斷cnt是否大于等于5,如果是則進(jìn)入步驟(4.6),否則返回步驟(4.4);(4.6)聚合節(jié)點(diǎn)向子節(jié)點(diǎn)child連續(xù)三次發(fā)送失效探測報(bào)文;(4.7)聚合節(jié)點(diǎn)判斷是否沒有收到子節(jié)點(diǎn)child的任何反饋,如果是則進(jìn)入步驟
(5),否則返回步驟(4.3)。
本領(lǐng)域的技術(shù)人員容易理解,以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法,其特征在于,包括以下步驟: (1)所有監(jiān)控節(jié)點(diǎn)向主控節(jié)點(diǎn)發(fā)起注冊(cè)請(qǐng)求,注冊(cè)請(qǐng)求中攜帶有該節(jié)點(diǎn)所要采集的數(shù)據(jù),并按順序從主控節(jié)點(diǎn)分別獲得一個(gè)唯一的節(jié)點(diǎn)編號(hào)Ni,其中i為自然數(shù),主控節(jié)點(diǎn)編號(hào)設(shè)置為NO ; (2)主控節(jié)點(diǎn)根據(jù)聚合節(jié)點(diǎn)負(fù)載公式以及約束條件計(jì)算聚合樹所需要的聚合節(jié)點(diǎn)個(gè)數(shù),并根據(jù)聚合節(jié)點(diǎn)負(fù)載均衡的原則從所有監(jiān)控節(jié)點(diǎn)中選取合適的聚合節(jié)點(diǎn); (3)根據(jù)步驟(2)中獲得的聚合節(jié)點(diǎn)構(gòu)建聚合樹;具體而言,聚合樹為一顆完全二叉樹,根節(jié)點(diǎn)為主控節(jié)點(diǎn)NO,聚合節(jié)點(diǎn)按照節(jié)點(diǎn)編號(hào)Ni按序從小到大排列并構(gòu)建完全二叉樹; (4)主控節(jié)點(diǎn)判斷聚合樹中是否存在聚合節(jié)點(diǎn)失效或者集群規(guī)模是否發(fā)生改變,如果是則進(jìn)入步驟(5),否則進(jìn)入步驟(6); (5)主控節(jié)點(diǎn)對(duì)聚合節(jié)點(diǎn)的失效或者集群規(guī)模的變化做出實(shí)時(shí)處理;具體而言,如果是由聚合節(jié)點(diǎn)失效,則主控節(jié)點(diǎn)清理該失效的聚合節(jié)點(diǎn)的注冊(cè)信息,并返回步驟(2),如果是有監(jiān)控節(jié)點(diǎn)的注冊(cè)或者注銷,也即集群規(guī)模發(fā)生了變化,則返回步驟(2); (6)完成聚合樹的構(gòu)建;具體而言,監(jiān)控節(jié)點(diǎn)發(fā)送監(jiān)控?cái)?shù)據(jù)給它所在分組的聚合節(jié)點(diǎn),聚合節(jié)點(diǎn)把接收到的該組所有監(jiān)控節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行聚合,并發(fā)送給父節(jié)點(diǎn),最終聚合到主控節(jié)點(diǎn),主控節(jié)點(diǎn)進(jìn)行監(jiān)控?cái)?shù)據(jù)的存儲(chǔ)和數(shù)據(jù)分析,分析的結(jié)果以圖表的方式展示給集群運(yùn)維人員。
2.根據(jù)權(quán)利要求1所述的監(jiān)控?cái)?shù)據(jù)聚合方法,其特征在于,在步驟(2)中,聚合節(jié)點(diǎn)的負(fù)載度量Loadn滿足目標(biāo)函數(shù):1adn = a*fn+b*gn,其中a, b為權(quán)重因子,且滿足a+b=l, fn為數(shù)據(jù)個(gè)數(shù)對(duì)節(jié)點(diǎn)負(fù)載的影響,gnS數(shù)據(jù)大小對(duì)節(jié)點(diǎn)負(fù)載的影響,且fn,gn都是標(biāo)量。
3.根據(jù)權(quán)利要求2所述的監(jiān)控?cái)?shù)據(jù)聚合方法,其特征在于,在步驟(2)中,聚合節(jié)點(diǎn)個(gè)數(shù)η彡Max,其中Max為一閾值,其取值范圍為集群節(jié)點(diǎn)數(shù)量的1/50到1/20。
4.根據(jù)權(quán)利要求3所述的監(jiān)控?cái)?shù)據(jù)聚合方法,其特征在于,步驟(2)包括以下子步驟: (2.1)初始化聚合節(jié)點(diǎn)的個(gè)數(shù)n=2 ; (2.2)利用負(fù)載公式計(jì)算聚合節(jié)點(diǎn)個(gè)數(shù)η時(shí)對(duì)應(yīng)的整體負(fù)載sum_loadn=n*loadx, 1adx表示消息個(gè)數(shù)X對(duì)應(yīng)產(chǎn)生的單節(jié)點(diǎn)負(fù)載,X的取值為聚合樹葉子節(jié)點(diǎn)聚合的監(jiān)控節(jié)點(diǎn)數(shù)量; (2.3)設(shè)置n=n+l,并且判斷η是否小于等于閾值Max,如果是則返回步驟(2.2),否則進(jìn)入步驟(2.4); (2.4)從計(jì)算得到的所有Sun^loadn中取最小值對(duì)應(yīng)的聚合節(jié)點(diǎn)個(gè)數(shù)m作為聚合樹所需要的聚合節(jié)點(diǎn)個(gè)數(shù),即在整個(gè)數(shù)據(jù)聚合的過程中此時(shí)的負(fù)載最低; (2.5)根據(jù)步驟(2.4)中所求得的聚合節(jié)點(diǎn)個(gè)數(shù)m,依據(jù)節(jié)點(diǎn)編號(hào)Ni從小到大按序分為m組; (2.6)在m個(gè)組中隨機(jī)選取一個(gè)監(jiān)控節(jié)點(diǎn)作為該組的聚合節(jié)點(diǎn),初始化各組的監(jiān)控節(jié)點(diǎn)代理,以確定其聚合節(jié)點(diǎn),使得監(jiān)控代理采集的監(jiān)控?cái)?shù)據(jù)發(fā)給它所在分組的聚合節(jié)點(diǎn)。
5.根據(jù)權(quán)利要求4所述的監(jiān)控?cái)?shù)據(jù)聚合方法,其特征在于,步驟(2-5)中的分組原則為:聚合節(jié)點(diǎn)的子節(jié)點(diǎn)所聚合的監(jiān)控節(jié)點(diǎn)數(shù)量是該聚合節(jié)點(diǎn)所聚合的監(jiān)控節(jié)點(diǎn)數(shù)量的2倍,同時(shí)已知總的監(jiān)控節(jié)點(diǎn)數(shù)量,由此根據(jù)等比數(shù)列求和公式計(jì)算得到各組監(jiān)控節(jié)點(diǎn)的數(shù)量。
6.根據(jù)權(quán)利要求1所述的監(jiān)控?cái)?shù)據(jù)聚合方法,其特征在于,步驟(4)包括以下子步驟: (4.1)初始化聚合節(jié)點(diǎn)的失效計(jì)數(shù)器cnt=0 ; (4.2)主控節(jié)點(diǎn)判斷是否有新的監(jiān)控節(jié)點(diǎn)的注冊(cè)或者已有的監(jiān)控節(jié)點(diǎn)的注銷,即集群規(guī)模發(fā)生了變化,如果有則進(jìn)入步驟(4.8 ),否則進(jìn)入步驟(4.3 ); (4.3)聚合節(jié)點(diǎn)以固定時(shí)間間隔interval接收子節(jié)點(diǎn)child的聚合的監(jiān)控?cái)?shù)據(jù),并重置cnt=0,利用相關(guān)聚合函數(shù)對(duì)監(jiān)控?cái)?shù)據(jù)進(jìn)行過濾合并處理,發(fā)給該聚合節(jié)點(diǎn)的父節(jié)點(diǎn); (4.4)聚合節(jié)點(diǎn)每隔一個(gè)時(shí)間間隔interval去判斷是否沒有收到子節(jié)點(diǎn)child的消息,如果是則進(jìn)入步驟(4.5),否則返回步驟(4.3); (4.5)設(shè)置cnt=cnt+l,判斷cnt是否大于等于5,如果是則進(jìn)入步驟(4.6),否則返回步驟(4.4); (4.6)聚合節(jié)點(diǎn)向子節(jié)點(diǎn)child連續(xù)三次發(fā)送失效探測報(bào)文; (4.7)聚合節(jié)點(diǎn)判斷是否沒有收到子節(jié)點(diǎn)child的任何反饋,如果是則進(jìn)入步驟(5),否則返回步驟(4.3)。
7.根據(jù)權(quán)利要求6所述的監(jiān)控?cái)?shù)據(jù)聚合方法,其特征在于,固定時(shí)間間隔interval的取值范圍 是I至5秒。
全文摘要
本發(fā)明公開了一種大規(guī)模集群環(huán)境下的監(jiān)控?cái)?shù)據(jù)聚合方法,包括所有監(jiān)控節(jié)點(diǎn)向主控節(jié)點(diǎn)發(fā)起注冊(cè)請(qǐng)求,注冊(cè)請(qǐng)求中攜帶有該節(jié)點(diǎn)所要采集的數(shù)據(jù),并按順序從主控節(jié)點(diǎn)分別獲得一個(gè)唯一的節(jié)點(diǎn)編號(hào)Ni,主控節(jié)點(diǎn)編號(hào)設(shè)置為N0,主控節(jié)點(diǎn)根據(jù)聚合節(jié)點(diǎn)負(fù)載公式以及約束條件計(jì)算聚合樹所需要的聚合節(jié)點(diǎn)個(gè)數(shù),并根據(jù)聚合節(jié)點(diǎn)負(fù)載均衡的原則從所有監(jiān)控節(jié)點(diǎn)中選取合適的聚合節(jié)點(diǎn),根據(jù)聚合節(jié)點(diǎn)構(gòu)建聚合樹,主控節(jié)點(diǎn)判斷聚合樹中是否存在聚合節(jié)點(diǎn)失效或者集群規(guī)模是否發(fā)生改變,如果是則主控節(jié)點(diǎn)對(duì)聚合節(jié)點(diǎn)的失效或者集群規(guī)模的變化做出實(shí)時(shí)處理。本發(fā)明的方法可以克服傳統(tǒng)的監(jiān)控?cái)?shù)據(jù)聚合導(dǎo)致的集群節(jié)點(diǎn)負(fù)載不均衡,而且能夠動(dòng)態(tài)的自適應(yīng)集群規(guī)模的伸縮變化。
文檔編號(hào)H04L12/803GK103095598SQ201210550330
公開日2013年5月8日 申請(qǐng)日期2012年12月17日 優(yōu)先權(quán)日2012年12月17日
發(fā)明者蔣文斌, 金海 , 黃永, 徐慧, 盧志偉, 肖暢 申請(qǐng)人:華中科技大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
四会市| 江孜县| 周口市| 凭祥市| 寿阳县| 嘉鱼县| 中卫市| 都匀市| 新津县| 驻马店市| 怀仁县| 灵川县| 新疆| 库车县| 徐州市| 新乐市| 西昌市| 弥渡县| 荣昌县| 左贡县| 阳东县| 新巴尔虎左旗| 中阳县| 抚顺县| 清涧县| 呼图壁县| 宁海县| 永川市| 西乌珠穆沁旗| 固始县| 青铜峡市| 邻水| 万荣县| 江油市| 兴宁市| 奉节县| 视频| 祁东县| 大埔区| 河间市| 西林县|