專利名稱:用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及一種用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)和方法。
背景技術(shù):
隨著網(wǎng)絡(luò)的快速發(fā)展,出現(xiàn)了需要為大量用戶服務(wù)的網(wǎng)絡(luò)系統(tǒng)。這些網(wǎng)絡(luò)系統(tǒng)具有分布在各個(gè)地址的大量服務(wù)器,而這些服務(wù)器通常構(gòu)建為集群的方式來為用戶服務(wù)。隨著提供服務(wù)的服務(wù)器越來越多,如何對(duì)這些服務(wù)器的性能進(jìn)行監(jiān)控成為目前需要迫切解決的問題。
目前比較普遍采用的監(jiān)控系統(tǒng)主要有Cacti監(jiān)控系統(tǒng)和Ganglia監(jiān)控系統(tǒng)。
Cacti監(jiān)控系統(tǒng)是基于PHP、MySQL、SNMP及RRDTooI開發(fā)的網(wǎng)絡(luò)流量監(jiān)測圖形分析工具。它用PHP語言實(shí)現(xiàn),并通過RRDTool而使使用者感覺更方便。它主要是通過snmp 獲取數(shù)據(jù),然后用RRDTool儲(chǔ)存和更新數(shù)據(jù),當(dāng)用戶需要查看數(shù)據(jù)的時(shí)候用RRDTool生成圖表呈現(xiàn)給用戶,但并不需要了解RRDtool復(fù)雜的參數(shù)。因此,snmp和RRDTool是cacti的關(guān)鍵。其中snmp關(guān)系著數(shù)據(jù)的收集,RRDTool關(guān)系著數(shù)據(jù)存儲(chǔ)和圖表的生成。
Cacti除了基本的snmp流量和系統(tǒng)資訊監(jiān)控外,還可外掛Scripts及加上模板來作出各式各樣的監(jiān)控圖。另外,MySQL配合PHP可以存儲(chǔ)一些變量數(shù)據(jù)并對(duì)變量數(shù)據(jù)進(jìn)行調(diào)用,如主機(jī)名、主機(jī)IP、snmp團(tuán)體名、端口號(hào)、模板信息等變量。
Cacti將snmp獲取的數(shù)據(jù)存儲(chǔ)在RRDTool生成的rrd文件中。RRDTool對(duì)數(shù)據(jù)的更新和存儲(chǔ)就是對(duì)rrd文件的處理,rrd文件是大小固定的檔案文件(Round Robin Archive),它能夠存儲(chǔ)的數(shù)據(jù)筆數(shù)在創(chuàng)建時(shí)就已經(jīng)定義。因此,它存在著可擴(kuò)展性差、可復(fù)用性低、可靠性低的問題,另外,由于只能存儲(chǔ)少量的歷史數(shù)據(jù),所以難以查看長期的歷史數(shù)據(jù)。
Ganglia監(jiān)控系統(tǒng)是UC Berkeley發(fā)起的一個(gè)跨平臺(tái)可擴(kuò)展的,高性能計(jì)算系統(tǒng)下的開源集群監(jiān)控系統(tǒng),它是基于分層設(shè)計(jì),用于測量數(shù)以千計(jì)的節(jié)點(diǎn)。Ganglia的核心包含gmond、gmetad以及一個(gè)Web前端。它主要用來監(jiān)控系統(tǒng)性能,如cpu、mem、硬盤利用率, 1/0負(fù)載、網(wǎng)絡(luò)流量情況等,通過曲線很容易見到每個(gè)節(jié)點(diǎn)的工作狀態(tài)。
然而,Ganglia沒有內(nèi)置的通知系統(tǒng),需要另外開發(fā)通知報(bào)警機(jī)制才能實(shí)現(xiàn)通知報(bào)警功能,另外,其采用RRDTool工具繪制圖形,消耗服務(wù)器大量內(nèi)存。還有,由于只能存儲(chǔ)少量的歷史數(shù)據(jù),所以難以查看長期的歷史數(shù)據(jù)。
現(xiàn)有的監(jiān)控系統(tǒng)都沒有考慮到在用于監(jiān)控大規(guī)模服務(wù)器時(shí)會(huì)面臨的負(fù)載問題,也沒有考慮到如何使得監(jiān)控系統(tǒng)可以擴(kuò)展來適應(yīng)所監(jiān)控服務(wù)器的大規(guī)模擴(kuò)展。此外,現(xiàn)有的監(jiān)控系統(tǒng)沒有考慮到當(dāng)服務(wù)器的被監(jiān)控?cái)?shù)據(jù)越來越多時(shí),如何對(duì)監(jiān)控?cái)?shù)據(jù)進(jìn)行提取和分析,以便快速向管理員報(bào)警。發(fā)明內(nèi)容5
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)和相應(yīng)的監(jiān)控方法。
依據(jù)本發(fā)明的一個(gè)方面,提供了一種用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng),其包括多個(gè)數(shù)據(jù)收集客戶端,每個(gè)數(shù)據(jù)收集客戶端布置在每臺(tái)對(duì)應(yīng)被監(jiān)控的服務(wù)器中,適于采集所述被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù),并發(fā)送該運(yùn)行數(shù)據(jù);信號(hào)過濾處理器,適于接收由所述數(shù)據(jù)收集客戶端發(fā)送的運(yùn)行數(shù)據(jù),且根據(jù)預(yù)先存儲(chǔ)的運(yùn)行數(shù)據(jù)過濾策略過濾出需要報(bào)警的運(yùn)行數(shù)據(jù);報(bào)警處理器,其接收所述信號(hào)過濾處理器過濾出的需要報(bào)警的運(yùn)行數(shù)據(jù),且根據(jù)預(yù)先存儲(chǔ)的報(bào)警策略進(jìn)行報(bào)警;以及報(bào)警歷史存儲(chǔ)器,耦接到所述報(bào)警處理器,并存儲(chǔ)所述報(bào)警處理器的報(bào)警結(jié)果的歷史記錄。
可選地,本發(fā)明的用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)還包括信號(hào)中轉(zhuǎn)器。該信號(hào)中轉(zhuǎn)器適于接收來自一個(gè)或者多個(gè)數(shù)據(jù)收集客戶端所發(fā)送的數(shù)據(jù),并將其轉(zhuǎn)發(fā)給所述信號(hào)過濾處理器。
可選地,在本發(fā)明的用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)中,每個(gè)報(bào)警策略包括唯一的報(bào)警策略ID以及報(bào)警條件,而且所述報(bào)警處理器包括數(shù)據(jù)存儲(chǔ)模塊,適于根據(jù)所述信號(hào)過濾處理器所過濾出的數(shù)據(jù)來構(gòu)造報(bào)警數(shù)據(jù)表,所述報(bào)警數(shù)據(jù)表包括多個(gè)數(shù)據(jù)節(jié)點(diǎn),每個(gè)數(shù)據(jù)節(jié)點(diǎn)上鏈接有環(huán)形雙向鏈表,環(huán)形雙向鏈表包括多個(gè)鏈表節(jié)點(diǎn),其中每個(gè)數(shù)據(jù)節(jié)點(diǎn)由需要報(bào)警的運(yùn)行數(shù)據(jù)中的機(jī)器域名和報(bào)警策略ID來標(biāo)識(shí),而與每個(gè)數(shù)據(jù)節(jié)點(diǎn)相關(guān)聯(lián)的環(huán)形雙向鏈表的每個(gè)鏈表節(jié)點(diǎn)中存儲(chǔ)有具有相同機(jī)器域名和相同報(bào)警策略ID的需要報(bào)警的運(yùn)行數(shù)據(jù),所述多個(gè)鏈表節(jié)點(diǎn)根據(jù)其上的需要報(bào)警的運(yùn)行數(shù)據(jù)的時(shí)間戳值大小進(jìn)行鏈接排列;以及報(bào)警模塊,根據(jù)每個(gè)數(shù)據(jù)節(jié)點(diǎn)中的報(bào)警策略ID選擇相應(yīng)的報(bào)警策略,并根據(jù)所選擇的報(bào)警策略來確定與數(shù)據(jù)節(jié)點(diǎn)相關(guān)聯(lián)的環(huán)形雙向鏈表中的需要報(bào)警的運(yùn)行數(shù)據(jù)是否達(dá)到所選擇的報(bào)警策略中的報(bào)警條件,當(dāng)確定滿足報(bào)警條件時(shí)進(jìn)行報(bào)警。
根據(jù)本發(fā)明的另一方面,提供了一種用于大規(guī)模服務(wù)器的監(jiān)控方法。該監(jiān)控方法包括采集每臺(tái)被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù);根據(jù)預(yù)先存儲(chǔ)的運(yùn)行數(shù)據(jù)過濾策略,從所采集的該被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù)中過濾出需要報(bào)警的運(yùn)行數(shù)據(jù);根據(jù)預(yù)先存儲(chǔ)的報(bào)警策略,對(duì)過濾出的需要報(bào)警的運(yùn)行數(shù)據(jù)進(jìn)行報(bào)警;以及將報(bào)警結(jié)果存儲(chǔ)在報(bào)警歷史存儲(chǔ)器中,以便查看并監(jiān)控多臺(tái)服務(wù)器的運(yùn)行狀況。
根據(jù)本發(fā)明的用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)和方法可以監(jiān)控位于不同地點(diǎn)的大規(guī)模服務(wù)器,而且隨著被監(jiān)控的服務(wù)器的不斷增加,可以擴(kuò)展以適應(yīng)所監(jiān)控的服務(wù)器的大規(guī)模擴(kuò)展。
上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段, 而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式
。
通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中
圖I示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)的框圖2示出了根據(jù)本發(fā)明的一實(shí)施例的報(bào)警數(shù)據(jù)表的示意圖;以及
圖3示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于大規(guī)模服務(wù)器的監(jiān)控方法。
具體實(shí)施方式
下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。
本發(fā)明提供一種監(jiān)控多臺(tái)服務(wù)器的監(jiān)控系統(tǒng),其可以監(jiān)控位于不同地點(diǎn)的大規(guī)模服務(wù)器,而且隨著被監(jiān)控的服務(wù)器的不斷增加,可以擴(kuò)展以適應(yīng)所監(jiān)控的服務(wù)器的大規(guī)模擴(kuò)展。
圖I示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)100的框圖。如圖I所示,本發(fā)明的用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)100包括多個(gè)數(shù)據(jù)收集客戶端111、 信號(hào)過濾處理器130、和報(bào)警處理器150。
每個(gè)數(shù)據(jù)收集客戶端111分別布置在一被監(jiān)控的服務(wù)器110中,采集被監(jiān)控的服務(wù)器Iio的運(yùn)行數(shù)據(jù),并將該運(yùn)行數(shù)據(jù)發(fā)送給信號(hào)過濾處理器130。這里,被監(jiān)控的服務(wù)器 110可位于本地也可以位于遠(yuǎn)程。另外,為了清楚起見,圖I中僅示出了一個(gè)被監(jiān)控的服務(wù)器及置于其中監(jiān)控其運(yùn)行狀況的一數(shù)據(jù)收集客戶端111。
可選地,每個(gè)數(shù)據(jù)收集客戶端111可以包括采集模塊1111和發(fā)送模塊1112。其中,采集模塊1111對(duì)該數(shù)據(jù)收集客戶端111所在的被監(jiān)控的服務(wù)器110的各運(yùn)行數(shù)據(jù)進(jìn)行采樣,并生成運(yùn)行數(shù)據(jù)包。這里,采集模塊1111所生成的運(yùn)行數(shù)據(jù)包的結(jié)構(gòu)可以為“信息長度+json格式的字符串”。json格式的字符串可以包括表示采集各監(jiān)控?cái)?shù)據(jù)項(xiàng)的時(shí)間戳; 各監(jiān)控?cái)?shù)據(jù)項(xiàng)的ID號(hào);各監(jiān)控?cái)?shù)據(jù)項(xiàng)本次的值;以及各監(jiān)控?cái)?shù)據(jù)項(xiàng)的值的數(shù)據(jù)類型。例如, json格式的字符串可以采用如下格式
上述字符串中的"time〃表示采集當(dāng)前數(shù)據(jù)的時(shí)間,“host”表示當(dāng)前所監(jiān)控的服務(wù)器,"data"后的部分為采集模塊1111所生成的運(yùn)行數(shù)據(jù)包的結(jié)構(gòu)。在"data"部分中的 (//item_ID//, "item—value", "data—type")中,
item_ID表示這個(gè)監(jiān)控?cái)?shù)據(jù)項(xiàng)的ID號(hào);
item_value表示本次這個(gè)監(jiān)控?cái)?shù)據(jù)項(xiàng)取得的值;
data_type表示這個(gè)監(jiān)控?cái)?shù)據(jù)項(xiàng)的值的數(shù)據(jù)類型(其中data_type=l表示此監(jiān)控?cái)?shù)據(jù)項(xiàng)的采樣結(jié)果是數(shù)值,data_type=2表示此監(jiān)控?cái)?shù)據(jù)項(xiàng)的采樣結(jié)果是字符串)。
通常,將各監(jiān)控?cái)?shù)據(jù)項(xiàng)的ID號(hào)、其所代表的含義、以及監(jiān)控?cái)?shù)據(jù)項(xiàng)的值的數(shù)據(jù)類型制作成一個(gè)數(shù)據(jù)列表以統(tǒng)一進(jìn)行管理。表一示出了這樣的數(shù)據(jù)列表的一個(gè)例子
表一
權(quán)利要求
1.一種用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng),包括多個(gè)數(shù)據(jù)收集客戶端,每個(gè)數(shù)據(jù)收集客戶端布置在每臺(tái)對(duì)應(yīng)被監(jiān)控的服務(wù)器中,適于采集所述被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù),并發(fā)送該運(yùn)行數(shù)據(jù);信號(hào)過濾處理器,適于接收由所述數(shù)據(jù)收集客戶端發(fā)送的運(yùn)行數(shù)據(jù),且根據(jù)預(yù)先存儲(chǔ)的運(yùn)行數(shù)據(jù)過濾策略過濾出需要報(bào)警的運(yùn)行數(shù)據(jù);以及報(bào)警處理器,其接收所述信號(hào)過濾處理器過濾出的需要報(bào)警的運(yùn)行數(shù)據(jù),且根據(jù)預(yù)先存儲(chǔ)的報(bào)警策略進(jìn)行報(bào)警;報(bào)警歷史存儲(chǔ)器,耦接到所述報(bào)警處理器,并存儲(chǔ)所述報(bào)警處理器的報(bào)警結(jié)果的歷史記錄。
2.如權(quán)利要求I所述的監(jiān)控系統(tǒng),還包括信號(hào)中轉(zhuǎn)器,適于接收來自一個(gè)或者多個(gè)數(shù)據(jù)收集客戶端所發(fā)送的數(shù)據(jù),并將其轉(zhuǎn)發(fā)給所述信號(hào)過濾處理器。
3.如權(quán)利要求2所述的監(jiān)控系統(tǒng),還包括臨時(shí)顯示數(shù)據(jù)存儲(chǔ)器,連接到所述信號(hào)中轉(zhuǎn)器,并且適于臨時(shí)存儲(chǔ)所述信號(hào)中轉(zhuǎn)器轉(zhuǎn)發(fā)的數(shù)據(jù);以及歷史數(shù)據(jù)存儲(chǔ)器,連接到所述信號(hào)中轉(zhuǎn)器,并適于長期存儲(chǔ)所述信號(hào)中轉(zhuǎn)器轉(zhuǎn)發(fā)的數(shù)據(jù)。
4.如權(quán)利要求1-3中任一個(gè)所述的監(jiān)控系統(tǒng),其中,所述數(shù)據(jù)收集客戶端包括采集模塊,其對(duì)該數(shù)據(jù)收集客戶端所在的服務(wù)器的各運(yùn)行數(shù)據(jù)進(jìn)行采樣,并生成運(yùn)行數(shù)據(jù)包;以及發(fā)送模塊,其發(fā)送所述采集模塊生成的運(yùn)行數(shù)據(jù)包。
5.如權(quán)利要求1-4中任何一項(xiàng)所述的監(jiān)控系統(tǒng),其中,所述運(yùn)行數(shù)據(jù)包括表示采集各監(jiān)控?cái)?shù)據(jù)項(xiàng)的時(shí)間戳;各監(jiān)控?cái)?shù)據(jù)項(xiàng)的ID號(hào);各監(jiān)控?cái)?shù)據(jù)項(xiàng)本次的值;以及各監(jiān)控?cái)?shù)據(jù)項(xiàng)的值的數(shù)據(jù)類型。
6.如權(quán)利要求1-5中任何一項(xiàng)所述的監(jiān)控系統(tǒng),還包括策略存儲(chǔ)器,其存儲(chǔ)有一個(gè)或者多個(gè)運(yùn)行數(shù)據(jù)過濾策略;其中,所述信號(hào)過濾處理器從所述策略存儲(chǔ)器中獲取所述一個(gè)或者多個(gè)運(yùn)行數(shù)據(jù)過濾策略,將所述運(yùn)行數(shù)據(jù)中滿足該運(yùn)行數(shù)據(jù)過濾策略的數(shù)據(jù)過濾出來并發(fā)送至報(bào)警處理器。
7.如權(quán)利要求6所述的監(jiān)控系統(tǒng),其中,所述策略存儲(chǔ)器還存儲(chǔ)有一個(gè)或者多個(gè)報(bào)警策略,以及所述報(bào)警處理器從所述策略存儲(chǔ)器中獲取所述一個(gè)或者多個(gè)報(bào)警策略,并根據(jù)所述一個(gè)或者多個(gè)報(bào)警策略判斷是否需要對(duì)所述信號(hào)過濾處理器過濾出的需要報(bào)警的運(yùn)行數(shù)據(jù)進(jìn)行報(bào)警處理。
8.如權(quán)利要求1-7中任何一項(xiàng)所述的監(jiān)控系統(tǒng),還包括報(bào)警數(shù)據(jù)存儲(chǔ)器,耦接到所述信號(hào)過濾處理器,并存儲(chǔ)所述信號(hào)過濾處理器過濾出的需要報(bào)警的運(yùn)行數(shù)據(jù)。
9.如權(quán)利要求8所述的監(jiān)控系統(tǒng),其中,所述報(bào)警數(shù)據(jù)存儲(chǔ)器存儲(chǔ)的每條需要報(bào)警的運(yùn)行數(shù)據(jù)包括機(jī)器域名、報(bào)警策略ID、 監(jiān)控?cái)?shù)據(jù)項(xiàng)ID、故障值、和時(shí)間戳,其中,機(jī)器域名是被監(jiān)控是否存在異常的機(jī)器的域名;報(bào)警策略ID對(duì)應(yīng)于預(yù)定的報(bào)警策略;監(jiān)控?cái)?shù)據(jù)項(xiàng)ID對(duì)應(yīng)于被監(jiān)控機(jī)器的一項(xiàng)運(yùn)行指標(biāo);故障值為監(jiān)測到的機(jī)器的監(jiān)控?cái)?shù)據(jù)項(xiàng)的異常數(shù)據(jù);和時(shí)間戳為監(jiān)測到機(jī)器的監(jiān)控?cái)?shù)據(jù)項(xiàng)的異常數(shù)據(jù)的時(shí)間。
10.如權(quán)利要求1-9中任一個(gè)所述的監(jiān)控系統(tǒng),其中每個(gè)報(bào)警策略包括唯一的報(bào)警策略ID以及報(bào)警條件,而且所述報(bào)警處理器包括數(shù)據(jù)存儲(chǔ)模塊,適于根據(jù)所述信號(hào)過濾處理器所過濾出的數(shù)據(jù)來構(gòu)造報(bào)警數(shù)據(jù)表,所述報(bào)警數(shù)據(jù)表包括多個(gè)數(shù)據(jù)節(jié)點(diǎn),每個(gè)數(shù)據(jù)節(jié)點(diǎn)上鏈接有環(huán)形雙向鏈表,環(huán)形雙向鏈表包括多個(gè)鏈表節(jié)點(diǎn),其中每個(gè)數(shù)據(jù)節(jié)點(diǎn)由需要報(bào)警的運(yùn)行數(shù)據(jù)中的機(jī)器域名和報(bào)警策略ID 來標(biāo)識(shí),而與每個(gè)數(shù)據(jù)節(jié)點(diǎn)相關(guān)聯(lián)的環(huán)形雙向鏈表的每個(gè)鏈表節(jié)點(diǎn)中存儲(chǔ)有具有相同機(jī)器域名和相同報(bào)警策略ID的需要報(bào)警的運(yùn)行數(shù)據(jù),所述多個(gè)鏈表節(jié)點(diǎn)根據(jù)其上的需要報(bào)警的運(yùn)行數(shù)據(jù)的時(shí)間戳值大小進(jìn)行鏈接排列;以及報(bào)警模塊,根據(jù)每個(gè)數(shù)據(jù)節(jié)點(diǎn)中的報(bào)警策略ID選擇相應(yīng)的報(bào)警策略,并根據(jù)所選擇的報(bào)警策略來確定與數(shù)據(jù)節(jié)點(diǎn)相關(guān)聯(lián)的環(huán)形雙向鏈表中的需要報(bào)警的運(yùn)行數(shù)據(jù)是否達(dá)到所選擇的報(bào)警策略中的報(bào)警條件,當(dāng)確定滿足報(bào)警條件時(shí)進(jìn)行報(bào)警。
11.如權(quán)利要求10所述的監(jiān)控系統(tǒng),其中所述報(bào)警策略中的報(bào)警條件包括監(jiān)控?cái)?shù)據(jù)項(xiàng)在預(yù)定時(shí)間段內(nèi)出現(xiàn)超過第一預(yù)定閾值的次數(shù)達(dá)到或者多于第一預(yù)定次數(shù)就報(bào)警的信息, 以及所述報(bào)警模塊根據(jù)環(huán)形雙向鏈表中需要報(bào)警的運(yùn)行數(shù)據(jù)的時(shí)間戳值獲取在預(yù)定時(shí)間段內(nèi)的鏈表節(jié)點(diǎn),如果鏈表節(jié)點(diǎn)的數(shù)量大于或者等于所述第一預(yù)定次數(shù),則進(jìn)行報(bào)警。
12.如權(quán)利要求10或11所述的監(jiān)控系統(tǒng),其中,當(dāng)所述報(bào)警模塊報(bào)警次數(shù)超過第二預(yù)定次數(shù)時(shí),所述報(bào)警模塊不再報(bào)警。
13.一種用于大規(guī)模服務(wù)器的監(jiān)控方法,其包括采集每臺(tái)被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù);根據(jù)預(yù)先存儲(chǔ)的運(yùn)行數(shù)據(jù)過濾策略,從所采集的該被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù)中過濾出需要報(bào)警的運(yùn)行數(shù)據(jù);根據(jù)預(yù)先存儲(chǔ)的報(bào)警策略,對(duì)過濾出的需要報(bào)警的運(yùn)行數(shù)據(jù)進(jìn)行報(bào)警;以及將報(bào)警結(jié)果存儲(chǔ)在報(bào)警歷史存儲(chǔ)器中,以便查看并監(jiān)控多臺(tái)服務(wù)器的運(yùn)行狀況。
14.根據(jù)權(quán)利要求13所述的監(jiān)控方法,所述采集該被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù)的步驟包括對(duì)被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù)進(jìn)行采樣,并生成預(yù)定格式的運(yùn)行數(shù)據(jù)包。
15.根據(jù)權(quán)利要求13或14所述的監(jiān)控方法,所述所采集的運(yùn)行數(shù)據(jù)包括表示采集各監(jiān)控?cái)?shù)據(jù)項(xiàng)的時(shí)間戳;各監(jiān)控?cái)?shù)據(jù)項(xiàng)的ID號(hào);各監(jiān)控?cái)?shù)據(jù)項(xiàng)本次的值;以及各監(jiān)控?cái)?shù)據(jù)項(xiàng)的值的數(shù)據(jù)類型。
16.根據(jù)權(quán)利要求13-15中任一個(gè)所述的監(jiān)控方法,其中每條需要報(bào)警的運(yùn)行數(shù)據(jù)包括機(jī)器域名、報(bào)警策略ID、監(jiān)控?cái)?shù)據(jù)項(xiàng)目ID、故障值、和時(shí)間戳。
17.如權(quán)利要求13-16中任一個(gè)所述的監(jiān)控方法,其中每個(gè)報(bào)警策略包括唯一的報(bào)警策略ID以及報(bào)警條件,所述根據(jù)預(yù)先存儲(chǔ)的報(bào)警策略對(duì)過濾出的需要報(bào)警的運(yùn)行數(shù)據(jù)進(jìn)行報(bào)警的步驟包括根據(jù)過濾出的需要報(bào)警的運(yùn)行數(shù)據(jù)來構(gòu)造報(bào)警數(shù)據(jù)表,所述報(bào)警數(shù)據(jù)表包括多個(gè)數(shù)據(jù)節(jié)點(diǎn),每個(gè)數(shù)據(jù)節(jié)點(diǎn)上鏈接有環(huán)形雙向鏈表,環(huán)形雙向鏈表包括多個(gè)鏈表節(jié)點(diǎn),其中每個(gè)數(shù)據(jù)節(jié)點(diǎn)由需要報(bào)警的運(yùn)行數(shù)據(jù)中的機(jī)器域名和報(bào)警策略ID來標(biāo)識(shí),而與每個(gè)數(shù)據(jù)節(jié)點(diǎn)相關(guān)聯(lián)的環(huán)形雙向鏈表的每個(gè)鏈表節(jié)點(diǎn)中存儲(chǔ)有具有相同機(jī)器域名和報(bào)警策略ID的需要報(bào)警的運(yùn)行數(shù)據(jù),所述多個(gè)鏈表節(jié)點(diǎn)根據(jù)其上的需要報(bào)警的運(yùn)行數(shù)據(jù)的時(shí)間戳值大小進(jìn)行鏈接排列;根據(jù)每個(gè)數(shù)據(jù)節(jié)點(diǎn)中的報(bào)警策略ID選擇相應(yīng)的報(bào)警策略,并根據(jù)所選擇的報(bào)警策略來確定與數(shù)據(jù)節(jié)點(diǎn)相關(guān)聯(lián)的環(huán)形雙向鏈表中的需要報(bào)警的運(yùn)行數(shù)據(jù)是否達(dá)到所選擇的報(bào)警策略中的報(bào)警條件,當(dāng)確定滿足報(bào)警條件時(shí)進(jìn)行報(bào)警。
18.如權(quán)利要求17所述的監(jiān)控方法,其中所述報(bào)警策略中的報(bào)警條件包括監(jiān)控?cái)?shù)據(jù)項(xiàng)在預(yù)定時(shí)間段內(nèi)出現(xiàn)超過第一預(yù)定閾值的次數(shù)達(dá)到或者多于第一預(yù)定次數(shù)就報(bào)警的信息,所述確定滿足報(bào)警條件時(shí)進(jìn)行報(bào)警的步驟包括所述根據(jù)環(huán)形雙向鏈表中需要報(bào)警的運(yùn)行數(shù)據(jù)的時(shí)間戳的值獲取在預(yù)定時(shí)間段內(nèi)的鏈表節(jié)點(diǎn),如果鏈表節(jié)點(diǎn)的數(shù)量大于或者等于所述第一預(yù)定次數(shù),則進(jìn)行報(bào)警。
19.如權(quán)利要求17所述的監(jiān)控方法,其中所述報(bào)警策略中的報(bào)警條件還包括報(bào)警次數(shù)達(dá)到第二預(yù)定次數(shù)的信息,所述確定滿足報(bào)警條件時(shí)進(jìn)行報(bào)警的步驟還包括當(dāng)報(bào)警次數(shù)達(dá)到第二預(yù)定次數(shù)時(shí), 則不再報(bào)警。
全文摘要
本發(fā)明公開了一種用于大規(guī)模服務(wù)器的監(jiān)控方法,其包括采集每臺(tái)被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù);根據(jù)預(yù)先存儲(chǔ)的運(yùn)行數(shù)據(jù)過濾策略,從所采集的該被監(jiān)控的服務(wù)器的運(yùn)行數(shù)據(jù)中過濾出需要報(bào)警的運(yùn)行數(shù)據(jù);根據(jù)預(yù)先存儲(chǔ)的報(bào)警策略,對(duì)過濾出的需要報(bào)警的運(yùn)行數(shù)據(jù)進(jìn)行報(bào)警;以及將報(bào)警結(jié)果存儲(chǔ)在報(bào)警歷史存儲(chǔ)器中,以便查看并監(jiān)控多臺(tái)服務(wù)器的運(yùn)行狀況。本發(fā)明還公開了一種用于大規(guī)模服務(wù)器的監(jiān)控系統(tǒng)。利用本發(fā)明,便于監(jiān)控位于不同地點(diǎn)的大規(guī)模服務(wù)器,而且隨著被監(jiān)控的服務(wù)器的不斷增加,可以擴(kuò)展以適應(yīng)所監(jiān)控的服務(wù)器的大規(guī)模擴(kuò)展。
文檔編號(hào)H04L12/26GK102938710SQ20121045908
公開日2013年2月20日 申請(qǐng)日期2012年11月14日 優(yōu)先權(quán)日2012年11月14日
發(fā)明者曾文杰, 劉浩, 馮顧, 胡宇, 華起 申請(qǐng)人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司