包括:
[0101]步驟404:監(jiān)測(cè)到第一主數(shù)據(jù)庫(kù)類故障消除時(shí),將待回寫告警信息日志中的待回寫告警信息寫入第一主數(shù)據(jù)庫(kù)、第一輔助數(shù)據(jù)庫(kù)和各個(gè)第二數(shù)據(jù)庫(kù)中。
[0102]下面將結(jié)合圖6詳細(xì)闡述將待回寫告警信息日志文件中的所有待回寫信息寫入高可用集群系統(tǒng)的所有節(jié)點(diǎn)的所有數(shù)據(jù)庫(kù)中的方法。該方法主要包括以下步驟:
[0103]步驟501:獲取待回寫告警信息中的第一條待回寫信息。
[0104]步驟502:判斷該條待回寫信息是否合法。
[0105]步驟503:判斷出待回寫信息合法時(shí),將待回寫信息分別寫入第一主數(shù)據(jù)庫(kù)和第一輔助數(shù)據(jù)庫(kù)中,并將第一輔助數(shù)據(jù)庫(kù)中的待回寫信息同步到各個(gè)第二輔助數(shù)據(jù)庫(kù)中。判斷出待回寫信息非法時(shí),執(zhí)行步驟504。
[0106]步驟504:將待回寫信息從待回寫告警信息日志中刪除。
[0107]步驟505:判斷待回寫告警信息日志是否為空。
[0108]步驟506:判斷出待回寫告警信息日志為空時(shí)退出。判斷出待回寫告警信息日志非空時(shí),順序執(zhí)行步驟501至步驟506。
[0109]具體地,當(dāng)?shù)诙收瞎?jié)點(diǎn)與第一主數(shù)據(jù)庫(kù)連接正常后,需要將第一主數(shù)據(jù)庫(kù)類故障期間暫存于第二故障節(jié)點(diǎn)的本地待回寫告警信息日志文件中的所有待回寫信息回寫到各個(gè)數(shù)據(jù)庫(kù)中。針對(duì)此回寫腳本:首先打開待回寫告警信息日志文件(其文件屬性為隱藏文件),然后逐條讀出文件中的待回寫信息。待獲取該條待回寫信息后,用正則表達(dá)式獲取該條待回寫信息是否合法(即檢測(cè)產(chǎn)生該待回寫信息時(shí)第二故障節(jié)點(diǎn)與第一主數(shù)據(jù)庫(kù)的連接狀態(tài),如果連接狀態(tài)為異常,則該條待回寫信息合法,否則非法)。如果判斷出該條待回寫信息合法,則采用正則表達(dá)式獲取此待回寫信息的各個(gè)字段,然后重新組合,并將該條待回寫信息寫入高可用集群系統(tǒng)的各個(gè)節(jié)點(diǎn)的各個(gè)數(shù)據(jù)庫(kù)中。之后在寫入成功后,在待回寫告警信息日志中刪除此條待回寫信息,然后在本地告警信息日志文件中修改此條待回寫信息的level標(biāo)示。利用上述方法逐條地將待回寫告警信息日志文件中的所有待回寫信息都寫入各數(shù)據(jù)庫(kù)中,直到待回寫告警信息日志文件為空為止。
[0110]應(yīng)用本實(shí)施例所述的告警方法,一旦監(jiān)測(cè)到第二故障節(jié)點(diǎn)與第一主數(shù)據(jù)庫(kù)的連接恢復(fù)正常時(shí),即一旦監(jiān)測(cè)到上述第一主數(shù)據(jù)庫(kù)類故障解除時(shí),立即將暫存于第二故障節(jié)點(diǎn)的本地待回寫告警信息日志文件中的所有待回寫信息寫入高可用集群系統(tǒng)的所有節(jié)點(diǎn)的所有數(shù)據(jù)庫(kù)中。因此,在第一主數(shù)據(jù)庫(kù)類故障解除后,用戶可以登錄高可用集群系統(tǒng)的任意一個(gè)節(jié)點(diǎn)查閱完整的告警信息,在保證告警信息的完整性的基礎(chǔ)上,保證了各個(gè)節(jié)點(diǎn)保存的告警信息的一致性,進(jìn)一步提高了高可用集群系統(tǒng)的系統(tǒng)性能。
[0111]另外,應(yīng)用本實(shí)施例所述的告警方法,告警信息除了涉及高可用集群類告警信息,還涉及第一主數(shù)據(jù)庫(kù)類告警信息。當(dāng)發(fā)生第一主數(shù)據(jù)庫(kù)類故障時(shí),系統(tǒng)能夠及時(shí)地將此類故障反映給用戶,從而用戶能夠及時(shí)采取相應(yīng)的應(yīng)對(duì)措施,有效減少或避免有可能造成的損失。
[0112]為了進(jìn)一步提高告警信息呈現(xiàn)的及時(shí)性,在本發(fā)明一優(yōu)選的實(shí)施例中,上面各個(gè)實(shí)施例所述的告警方法還包括:累計(jì)未處理的各類告警信息的數(shù)目,然后將數(shù)目呈現(xiàn)在高可用集群系統(tǒng)的集群軟件的各個(gè)頁(yè)面上。
[0113]在本實(shí)施例中,將未處理的各類告警信息(高可用集群類告警信息、操作系統(tǒng)負(fù)載類告警信息或者第一主數(shù)據(jù)庫(kù)類告警信息)的累計(jì)數(shù)目鑲嵌在高可用集群服務(wù)系統(tǒng)的框架上,保證用戶在高可用集群系統(tǒng)的集群軟件的各個(gè)頁(yè)面上均可以看到未處理告警信息的數(shù)目。這樣,用戶一旦觀察到當(dāng)前頁(yè)面上顯示的未處理告警信息的數(shù)目發(fā)生變化,就可以及時(shí)發(fā)現(xiàn)當(dāng)前高可用集群系統(tǒng)運(yùn)行異常,然后進(jìn)入告警中心查看詳細(xì)告警信息,根據(jù)信息內(nèi)容采取相對(duì)應(yīng)的解決措施,避免造成重大損失。
[0114]相對(duì)應(yīng)地,本發(fā)明實(shí)施例還提供了一種基于圖1所示的高可用集群系統(tǒng)的告警系統(tǒng),該告警系統(tǒng)利用上面各實(shí)施例所述的告警方法進(jìn)行告警。
[0115]如圖7所示,是本發(fā)明實(shí)施例基于圖1所示的高可用集群系統(tǒng)的告警系統(tǒng)的告警系統(tǒng)的結(jié)構(gòu)示意圖。本實(shí)施例所述的告警系統(tǒng)包括順次連接的監(jiān)測(cè)模塊601、高可用集群類告警信息生成模塊602、第一寫入模塊603和第一同步模塊604。
[0116]具體地,監(jiān)測(cè)模塊601,設(shè)置為監(jiān)測(cè)高可用集群系統(tǒng)的運(yùn)行狀態(tài)。
[0117]高可用集群類告警信息生成模塊602,設(shè)置為在監(jiān)測(cè)模塊601監(jiān)測(cè)到高可用集群系統(tǒng)出現(xiàn)高可用集群類故障時(shí),生成高可用集群類告警信息。
[0118]第一寫入模塊603,設(shè)置為將高可用集群類告警信息分別寫入第一主數(shù)據(jù)庫(kù)和第一輔助數(shù)據(jù)庫(kù)。
[0119]第一同步模塊604,設(shè)置為將第一輔助數(shù)據(jù)庫(kù)中的高可用集群類告警信息同步到各個(gè)第二輔助數(shù)據(jù)庫(kù)中。
[0120]在本實(shí)施例中,高可用集群類告警信息包括均與高可用集群類故障相對(duì)應(yīng)的故障標(biāo)識(shí)和嚴(yán)重級(jí)別標(biāo)識(shí)。上述告警系統(tǒng)還包括:第一呈現(xiàn)模塊,將高可用集群類告警信息呈現(xiàn)在高可用集群系統(tǒng)的集群軟件的頁(yè)面上。
[0121]在本實(shí)施例中,上述告警系統(tǒng)還包括順次連接的操作系統(tǒng)負(fù)載類告警信息生成模塊、第二寫入模塊和第二同步模塊。
[0122]具體地,操作系統(tǒng)負(fù)載類告警信息生成模塊,設(shè)置為在監(jiān)測(cè)模塊601監(jiān)測(cè)到高可用集群系統(tǒng)出現(xiàn)操作系統(tǒng)負(fù)載類故障時(shí),生成操作系統(tǒng)負(fù)載類告警信息。
[0123]第二寫入模塊,設(shè)置為將操作系統(tǒng)負(fù)載類告警信息分別寫入第一主數(shù)據(jù)庫(kù)和第一輔助數(shù)據(jù)庫(kù)中。
[0124]第二同步模塊,設(shè)置為將第一輔助數(shù)據(jù)庫(kù)中的操作系統(tǒng)負(fù)載類告警信息同步到各個(gè)第二輔助數(shù)據(jù)庫(kù)中。
[0125]在本實(shí)施例中,操作系統(tǒng)負(fù)載類告警信息生成模塊包括彼此連接的嚴(yán)重級(jí)別標(biāo)識(shí)確定單元和操作系統(tǒng)負(fù)載類告警信息生成單元。
[0126]具體地,嚴(yán)重級(jí)別標(biāo)識(shí)確定單元,設(shè)置為根據(jù)預(yù)設(shè)的負(fù)載閾值和操作系統(tǒng)類故障涉及的第一故障節(jié)點(diǎn)的操作系統(tǒng)負(fù)載,確定與操作系統(tǒng)負(fù)載類故障相對(duì)應(yīng)的嚴(yán)重級(jí)別標(biāo)識(shí)。
[0127]操作系統(tǒng)負(fù)載類告警信息生成單元,設(shè)置為生成操作系統(tǒng)負(fù)載類告警信息,并使操作系統(tǒng)負(fù)載類告警信息包括均與操作系統(tǒng)負(fù)載類故障相對(duì)應(yīng)的故障標(biāo)識(shí)和嚴(yán)重級(jí)別標(biāo)識(shí)。
[0128]在本實(shí)施例中,上述告警系統(tǒng)還包括順次連接的第一主數(shù)據(jù)庫(kù)類告警信息生成模塊、待回寫告警信息確定模塊和第三寫入模塊。
[0129]具體地,第一主數(shù)據(jù)庫(kù)類告警信息生成模塊,設(shè)置為在監(jiān)測(cè)模塊601監(jiān)測(cè)到高可用集群系統(tǒng)出現(xiàn)第一主數(shù)據(jù)庫(kù)類故障時(shí),生成第一主數(shù)據(jù)庫(kù)類告警信息。
[0130]待回寫告警信息確定模塊,設(shè)置為根據(jù)第一主數(shù)據(jù)庫(kù)類告警信息、以及均在第一主數(shù)據(jù)庫(kù)類故障期間生成的高可用集群類告警信息和操作系統(tǒng)負(fù)載類告警信息,得到待回寫告警信息。
[0131]第三寫入模塊,設(shè)置為將待回寫告警信息寫入第一主數(shù)據(jù)庫(kù)類故障涉及的第二故障節(jié)點(diǎn)的本地待回寫告警信息日志中。
[0132]在本實(shí)施例中,第一主數(shù)據(jù)庫(kù)類告警信息包括均與第一主數(shù)據(jù)庫(kù)類故障相對(duì)應(yīng)的故障標(biāo)識(shí)和嚴(yán)重級(jí)別標(biāo)識(shí)。上述告警系統(tǒng)還包括:第二呈現(xiàn)模塊,將待回寫告警信息和第二故障節(jié)點(diǎn)的第二輔助數(shù)據(jù)庫(kù)中的歷史告警信息呈現(xiàn)在高可用集群系統(tǒng)的集群軟件的頁(yè)面上。
[0133]在本實(shí)施例中,上述告警系統(tǒng)還包括:第四寫入模塊,在監(jiān)測(cè)模塊601監(jiān)測(cè)到第一主數(shù)據(jù)庫(kù)類故障消除時(shí),將待回寫告警信息日志中的待回寫告警信息寫入第一主數(shù)據(jù)庫(kù)、第一輔助數(shù)據(jù)庫(kù)和各個(gè)第二數(shù)據(jù)庫(kù)中。
[0134]在本實(shí)施例中,上述第四寫入模塊包括順次連接的判斷單元、寫入單元和刪除單
J L ο
[0135]具體地,判斷單元,設(shè)置為依次對(duì)待回寫告警信息中的每條待回寫信息,判斷待回寫信息是否合法。
[0136]寫入單元,設(shè)置為在判斷單元判斷出待回寫信息合法時(shí),將待回寫信息分別寫入第一主數(shù)據(jù)庫(kù)和第一輔助數(shù)據(jù)庫(kù)中,并將第一輔助數(shù)據(jù)庫(kù)中的待回寫信息同步到各個(gè)第二輔助數(shù)據(jù)庫(kù)中。
[0137]刪除單元,設(shè)置為在寫入單元將待回寫信息分別寫入第一主數(shù)據(jù)庫(kù)和第一輔助數(shù)據(jù)庫(kù)中,并將第一輔助數(shù)據(jù)庫(kù)中的待回寫信息同步到各個(gè)第二輔助數(shù)據(jù)庫(kù)中后,將待回寫信息從待回寫告警信息日志中刪除。刪除單元還設(shè)置為:在判斷單元判斷出待回寫信息非法時(shí),將待回寫信息從待回寫告警信息日志中刪除。
[0138]在本實(shí)施例中,上述告警系統(tǒng)還包括連接的累計(jì)模塊和第三呈現(xiàn)模塊。
[0139]具體地,累計(jì)模塊,設(shè)置為累計(jì)未處理的告警信息的數(shù)目。
[0140]第三呈現(xiàn)模塊,設(shè)置為將數(shù)目呈現(xiàn)在高可用集群系統(tǒng)的集群軟件的各個(gè)頁(yè)面上。
[0141]上述各模塊中的操作的具體細(xì)化,可參見上面結(jié)合圖1對(duì)高可用集群系統(tǒng)的結(jié)構(gòu)說明以及結(jié)合圖2至圖6對(duì)告警方法的說明,在此不再詳細(xì)贅述。
[0142]應(yīng)用本實(shí)施例所述的告警系統(tǒng)