一種用于并行系統(tǒng)的監(jiān)測方法
【專利摘要】本發(fā)明公開了一種用于并行系統(tǒng)的監(jiān)測方法,在并行系統(tǒng)中增加一個監(jiān)測進程,通過這個監(jiān)測進程實時收集、監(jiān)測并行系統(tǒng)中的各個進程的狀態(tài),根據(jù)收集到的狀態(tài)對并行系統(tǒng)進行狀態(tài)統(tǒng)計,一旦發(fā)現(xiàn)并行系統(tǒng)中進程異常以及進程處理業(yè)務(wù)出現(xiàn)異常,馬上進行告警處理,把異常信息輸出到指定桌面系統(tǒng),嚴重信息通過電話或短信直接通知到負責(zé)人,使得問題能夠得到及時發(fā)現(xiàn),減少系統(tǒng)出現(xiàn)異常時帶來的損失,通過監(jiān)測進程定時統(tǒng)計監(jiān)測并進行告警,能夠?qū)崟r掌握并行系統(tǒng)的進程狀態(tài),對整個并行系統(tǒng)維護帶來方便。
【專利說明】-種用于并行系統(tǒng)的監(jiān)測方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計算機的領(lǐng)域,尤其涉及一種用于并行系統(tǒng)的監(jiān)測方法。
【背景技術(shù)】
[0002] 在大數(shù)據(jù)分析等并行系統(tǒng)中,系統(tǒng)的穩(wěn)定性、系統(tǒng)各個進程的運行狀態(tài)以及數(shù)據(jù) 處理狀態(tài)一般很難進行計算與統(tǒng)計,這樣就不能實時知道整個并行系統(tǒng)的運行、處理情況, 基于這種現(xiàn)狀,當發(fā)現(xiàn)并行系統(tǒng)出現(xiàn)問題時,往往已經(jīng)造成了較嚴重的后果,尤其是基于實 時大數(shù)據(jù)處理的并行系統(tǒng)而言,造成的損失更大。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明主要解決的技術(shù)問題是提供一種用于并行系統(tǒng)的監(jiān)測方法,在并行系統(tǒng)中 增加一個監(jiān)測進程,通過這個監(jiān)測進程實時收集、監(jiān)測并行系統(tǒng)中的各個進程的狀態(tài),根據(jù) 收集到的狀態(tài)對并行系統(tǒng)進行狀態(tài)統(tǒng)計,一旦發(fā)現(xiàn)并行系統(tǒng)中進程異常以及進程處理業(yè)務(wù) 出現(xiàn)異常,馬上進行告警處理,把異常信息輸出到指定桌面系統(tǒng),嚴重信息通過電話或短信 直接通知到負責(zé)人,使得問題能夠得到及時發(fā)現(xiàn),減少系統(tǒng)出現(xiàn)異常時帶來的損失,通過監(jiān) 測進程定時統(tǒng)計監(jiān)測并進行告警,能夠?qū)崟r掌握并行系統(tǒng)的進程狀態(tài),對整個并行系統(tǒng)維 護帶來方便。
[0004] 為解決上述技術(shù)問題,本發(fā)明采用的一個技術(shù)方案是:提供了一種用于并行系統(tǒng) 的監(jiān)測方法,包括以下步驟: a、 在分布式主機部署監(jiān)測進程,各個分布式進程啟動時,獲取分布式進程的唯一標識 號; b、 分布式進程啟動時,向分布式主機中的監(jiān)測進程注冊,分布式主機中的監(jiān)測進程收 到注冊信息后,把請求注冊信息與請求進程的主機IP地址對應(yīng)起來保存在內(nèi)存Μ中; c、 分布式主機中的監(jiān)測進程定時輪詢Μ,向各個分布式進程發(fā)送握手信息,分布式進程 收到握手信息后,把各自進程所在機器的情況信息反饋給分布式主機中的監(jiān)測進程,監(jiān)測 進程統(tǒng)計收到的各個分布式進程的反饋信息,發(fā)現(xiàn)異常進行告警處理; d、 分布式進程向監(jiān)測進程注冊成功后,動分布式進程與監(jiān)測進程之間?;畹男奶€ 程,定時向主機監(jiān)測進程發(fā)送心跳消息,主機監(jiān)測進程及時響應(yīng)分布式進程的心跳消息,一 旦心跳消息出現(xiàn)異常后,分布式進程定時向主機監(jiān)測進程重新注冊,直到注冊成功。
[0005] 在本發(fā)明一個較佳實施例中,所述的步驟a中唯一標識號的構(gòu)成為:進程所在機 器的MAC地址+進程名稱。
[0006] 在本發(fā)明一個較佳實施例中,所述的步驟b中注冊信息的格式構(gòu)成:進程唯一標 識號&&進程類型。
[0007] 在本發(fā)明一個較佳實施例中,所述的步驟c中的情況信息包括cpu利用率、進程占 用內(nèi)存大小以及進程空閑時間信息。
[0008] 在本發(fā)明一個較佳實施例中,所述的步驟d中心跳消息出現(xiàn)異常的情況為連續(xù)3 次沒有收到心跳消息的響應(yīng)。
[0009] 在本發(fā)明一個較佳實施例中,所述的監(jiān)測方法采用雙輪詢機制。
[0010] 本發(fā)明的有益效果是:本發(fā)明的用于并行系統(tǒng)的監(jiān)測方法,在并行系統(tǒng)中增加一 個監(jiān)測進程,通過這個監(jiān)測進程實時收集、監(jiān)測并行系統(tǒng)中的各個進程的狀態(tài),根據(jù)收集到 的狀態(tài)對并行系統(tǒng)進行狀態(tài)統(tǒng)計,一旦發(fā)現(xiàn)并行系統(tǒng)中進程異常以及進程處理業(yè)務(wù)出現(xiàn)異 常,馬上進行告警處理,把異常信息輸出到指定桌面系統(tǒng),嚴重信息通過電話或短信直接通 知到負責(zé)人,使得問題能夠得到及時發(fā)現(xiàn),減少系統(tǒng)出現(xiàn)異常時帶來的損失,通過監(jiān)測進程 定時統(tǒng)計監(jiān)測并進行告警,能夠?qū)崟r掌握并行系統(tǒng)的進程狀態(tài),對整個并行系統(tǒng)維護帶來 方便。
【專利附圖】
【附圖說明】
[0011] 為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于 本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其它 的附圖,其中: 圖1是本發(fā)明用于并行系統(tǒng)的監(jiān)測方法的一較佳實施例的流程圖; 圖2主機監(jiān)測進程流程圖; 圖3分布式進程注冊與?;盍鞒虉D。
【具體實施方式】
[0012] 下面將對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施 例僅是本發(fā)明的一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通 技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范 圍。
[0013] 如圖1至圖3所示,本發(fā)明實施例包括: 一種用于并行系統(tǒng)的監(jiān)測方法,包括以下步驟: a、 在分布式主機部署監(jiān)測進程,各個分布式進程啟動時,獲取分布式進程的唯一標識 號; b、 分布式進程啟動時,向分布式主機中的監(jiān)測進程注冊,分布式主機中的監(jiān)測進程收 到注冊信息后,把請求注冊信息與請求進程的主機IP地址對應(yīng)起來保存在內(nèi)存Μ中; c、 分布式主機中的監(jiān)測進程定時輪詢Μ,向各個分布式進程發(fā)送握手信息,分布式進程 收到握手信息后,把各自進程所在機器的情況信息反饋給分布式主機中的監(jiān)測進程,監(jiān)測 進程統(tǒng)計收到的各個分布式進程的反饋信息,發(fā)現(xiàn)異常進行告警處理; d、 分布式進程向監(jiān)測進程注冊成功后,動分布式進程與監(jiān)測進程之間保活的心跳線 程,定時向主機監(jiān)測進程發(fā)送心跳消息,主機監(jiān)測進程及時響應(yīng)分布式進程的心跳消息,一 旦心跳消息出現(xiàn)異常后,分布式進程定時向主機監(jiān)測進程重新注冊,直到注冊成功。
[0014] 上述中,所述的步驟a中唯一標識號的構(gòu)成為:進程所在機器的MAC地址+進程名 稱;所述的步驟b中注冊信息的格式構(gòu)成:進程唯一標識號&&進程類型;所述的步驟c中 的情況信息包括CPU利用率、進程占用內(nèi)存大小以及進程空閑時間信息;所述的步驟d中心 跳消息出現(xiàn)異常的情況為連續(xù)3次沒有收到心跳消息的響應(yīng)。
[0015] 進一步的,所述的監(jiān)測方法采用雙輪詢機制。雙輪詢機制確保網(wǎng)絡(luò)暫時中斷時,分 布式進程在網(wǎng)絡(luò)恢復(fù)時動態(tài)注冊。
[0016] 具體方法為: 在分布式主機中部署分布式監(jiān)測進程,各個分布式進程啟動時,獲取自己所在機器的 MAC地址以及進程名,向分布式主機上的分布式監(jiān)測進程進行注冊,注冊協(xié)議格式為:MAC 地址&&進程名稱;分布式主機上的監(jiān)測進程接收分布式進程的注冊信息,同時獲取分布式 進程所在的IP地址,依據(jù)協(xié)議格式解析請求信息,把請求信息以及IP地址放入如下處理協(xié) 議結(jié)構(gòu)中: 處理協(xié)議結(jié)構(gòu) { 主機IP地址; 主機物理MAC地址; 進程名稱 } 然后把處理協(xié)議結(jié)構(gòu)對應(yīng)的一個分布式進程信息的一個實例放入到容器類型的中間 處理協(xié)議結(jié)構(gòu)變量(假設(shè)變量名稱為:vP)中。
[0017] 分布式主機上的監(jiān)測進程定時輪詢變量vP,獲取vP中的分布式進程注冊信息,通 過IP地址向分布式進程發(fā)握手信息,分布式進程收到握手信息后,收集該進程所在機器的 cpu利用率、進程占用內(nèi)存大小以及進程空閑時間信息,把這些信息按照協(xié)議格式發(fā)送給分 布式主機上的監(jiān)測進程,監(jiān)測進程收到握手反饋后,按照協(xié)議格式進行解析,把解析結(jié)果放 入如下結(jié)構(gòu)中: 處理狀態(tài)結(jié)構(gòu) { 主機IP地址; 主機物理MAC地址; 進程名稱; CPU使用率; 所占內(nèi)存大小; 所占線程; 響應(yīng)日期 } 然后監(jiān)測進程把進程狀態(tài)結(jié)構(gòu)對應(yīng)的一個實例放入到容器類型的處理狀態(tài)結(jié)變量(假 設(shè)變量名稱為:VPS)中。
[0018] 如果監(jiān)測進程向一個分布式進程發(fā)送握手信息3次仍然沒有收到反饋,則表明該 分布式進程存在異?;蚓W(wǎng)絡(luò)異常,主機監(jiān)測進程就向特定機器告警,同時刪除vPS變量與 vP變量中出現(xiàn)異常的分布式進程的信息,并把刪除信息寫入日志文件,同時特定機器把告 警信息實時顯示在桌面,緊急信息通過短信、聲音與郵件進行提醒。
[0019] 分布式進程注冊成功后,定時向主機監(jiān)測進程發(fā)送心跳信息,主機監(jiān)測進程及時 響應(yīng)分布式進程的心跳請求,分布式進程向監(jiān)測進程發(fā)送心跳消息連續(xù)3次沒有收到心跳 響應(yīng),則自動判斷網(wǎng)絡(luò)異?;蛑鳈C監(jiān)測進程異常,啟動定時注冊線程,定時向主機監(jiān)測進程 注冊,一旦網(wǎng)絡(luò)恢復(fù)正?;蛑鳈C監(jiān)測進程恢復(fù)正常,則分布式進程重新注冊成功,通過這種 心跳與握手雙向機制,確保網(wǎng)絡(luò)異常情況下,分布式進程與監(jiān)測進程不重新啟動的情況下, 分布式進程與監(jiān)測進程能夠有效保持暢通。
[0020] 實施例1 : 在分布式主機啟動監(jiān)測進程,監(jiān)測進程進入工作態(tài)后,通過端口監(jiān)測分布式進程的注 冊信息; 分布式進程啟動時,進程進入工作態(tài)后,獲取本進程所在機器的MAC地址與進程名,根 據(jù)注冊協(xié)議格式構(gòu)造注冊信息,注冊協(xié)議格式為:MAC地址&&進程名,注冊交換邏輯為:分 布式發(fā)送注冊信息給主機監(jiān)測進程,主機監(jiān)測進程收到注冊信息后,回復(fù)注冊成功信息給 注冊的進程,這樣注冊流程完成; 主機監(jiān)測進程接收到分布式進程的注冊信息后,按照協(xié)議格式進行解碼,把注冊的分 布式進程信息放入處理協(xié)議結(jié)構(gòu),并把結(jié)構(gòu)實例放入到容器類型的處理協(xié)議變量中; 處理協(xié)議結(jié)構(gòu) { 主機IP地址; 主機物理MAC地址; 進程名稱 } 監(jiān)控主機定時輪詢處理協(xié)議結(jié)構(gòu)變量,根據(jù)該變量向?qū)?yīng)的分布式進程發(fā)送握手消 息,分布式進程在握手響應(yīng)中攜帶分布式主機的CPU占用率、內(nèi)存利用情況等信息,監(jiān)測進 程解析分布式進程的握手響應(yīng),并把信息放入到處理狀態(tài)結(jié)構(gòu),把存放分布式進程信息對 應(yīng)的處理狀態(tài)實例放入到容器類型變量處理狀態(tài)中,同時根據(jù)處理狀態(tài)中的信息,計算、統(tǒng) 計各個分布式進程的進程狀態(tài)與系統(tǒng)狀態(tài)。
[0021] 監(jiān)測進程如果連續(xù)3次收不到對應(yīng)分布式進程的握手響應(yīng),則認為分布式進程異 ?;蚓W(wǎng)絡(luò)異常,通過使用linux系統(tǒng)的ping命令監(jiān)測網(wǎng)絡(luò)狀態(tài),如果ping命令返回網(wǎng)絡(luò)異 常,則發(fā)送網(wǎng)絡(luò)異常告警,如果網(wǎng)絡(luò)正常,則發(fā)送分布式進程異常告警,把異常的分布式進 程的信息保存在日志文件中,同時從處理狀態(tài)中移除該進程的狀態(tài)信息以及從處理協(xié)議中 移除該進程的注冊信息; 告警主機收到分布式進程的告警信息,根據(jù)告警級別選擇告警行為,嚴重告警級別發(fā) 送短信、聲音以及郵件及時提醒,同時向告警監(jiān)控屏幕輸出告警信息,一般告警信息直接向 告警監(jiān)控屏幕輸出告警信息。
[0022] 分布式進程收到注冊響應(yīng)后,啟動分布式進程與監(jiān)測進程之間?;畹男奶€程, 定時向監(jiān)測進程發(fā)送心跳信息,監(jiān)測進程收到分布式進程的心跳消息后,實時回應(yīng)心跳響 應(yīng)給對應(yīng)分布式進程; 分布式進程如果連續(xù)3次收不到監(jiān)測進程的心跳響應(yīng),則認為網(wǎng)絡(luò)異常或監(jiān)測進程異 常,記錄異常日志到日志文件,啟動注冊流程,定時重新注冊,直到收到注冊響應(yīng)。
[0023] 綜上所述,本發(fā)明的揭示用于并行系統(tǒng)的監(jiān)測方法,在并行系統(tǒng)中增加一個監(jiān)測 進程,通過這個監(jiān)測進程實時收集、監(jiān)測并行系統(tǒng)中的各個進程的狀態(tài),根據(jù)收集到的狀態(tài) 對并行系統(tǒng)進行狀態(tài)統(tǒng)計,一旦發(fā)現(xiàn)并行系統(tǒng)中進程異常以及進程處理業(yè)務(wù)出現(xiàn)異常,馬 上進行告警處理,把異常信息輸出到指定桌面系統(tǒng),嚴重信息通過電話或短信直接通知到 負責(zé)人,使得問題能夠得到及時發(fā)現(xiàn),減少系統(tǒng)出現(xiàn)異常時帶來的損失,通過監(jiān)測進程定時 統(tǒng)計監(jiān)測并進行告警,能夠?qū)崟r掌握并行系統(tǒng)的進程狀態(tài),對整個并行系統(tǒng)維護帶來方便。
[0024] 以上所述僅為本發(fā)明的實施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā) 明說明書內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其它相關(guān)的技術(shù)領(lǐng) 域,均同理包括在本發(fā)明的專利保護范圍內(nèi)。
【權(quán)利要求】
1. 一種用于并行系統(tǒng)的監(jiān)測方法,其特征在于,包括以下步驟: a、 在分布式主機部署監(jiān)測進程,各個分布式進程啟動時,獲取分布式進程的唯一標識 號; b、 分布式進程啟動時,向分布式主機中的監(jiān)測進程注冊,分布式主機中的監(jiān)測進程收 到注冊信息后,把請求注冊信息與請求進程的主機IP地址對應(yīng)起來保存在內(nèi)存Μ中; c、 分布式主機中的監(jiān)測進程定時輪詢Μ,向各個分布式進程發(fā)送握手信息,分布式進程 收到握手信息后,把各自進程所在機器的情況信息反饋給分布式主機中的監(jiān)測進程,監(jiān)測 進程統(tǒng)計收到的各個分布式進程的反饋信息,發(fā)現(xiàn)異常進行告警處理; d、 分布式進程向監(jiān)測進程注冊成功后,動分布式進程與監(jiān)測進程之間?;畹男奶€ 程,定時向主機監(jiān)測進程發(fā)送心跳消息,主機監(jiān)測進程及時響應(yīng)分布式進程的心跳消息,一 旦心跳消息出現(xiàn)異常后,分布式進程定時向主機監(jiān)測進程重新注冊,直到注冊成功。
2. 根據(jù)權(quán)利要求1所述的用于并行系統(tǒng)的監(jiān)測方法,其特征在于,所述的步驟a中唯一 標識號的構(gòu)成為:進程所在機器的MAC地址+進程名稱。
3. 根據(jù)權(quán)利要求1所述的用于并行系統(tǒng)的監(jiān)測方法,其特征在于,所述的步驟b中注冊 信息的格式構(gòu)成:進程唯一標識號&&進程類型。
4. 根據(jù)權(quán)利要求1所述的用于并行系統(tǒng)的監(jiān)測方法,其特征在于,所述的步驟c中的情 況信息包括cpu利用率、進程占用內(nèi)存大小以及進程空閑時間信息。
5. 根據(jù)權(quán)利要求1所述的用于并行系統(tǒng)的監(jiān)測方法,其特征在于,所述的步驟d中心跳 消息出現(xiàn)異常的情況為連續(xù)3次沒有收到心跳消息的響應(yīng)。
6. 根據(jù)權(quán)利要求1所述的用于并行系統(tǒng)的監(jiān)測方法,其特征在于,所述的監(jiān)測方法采 用雙輪詢機制。
【文檔編號】G06F11/32GK104156299SQ201410412938
【公開日】2014年11月19日 申請日期:2014年8月21日 優(yōu)先權(quán)日:2014年8月21日
【發(fā)明者】王峰 申請人:江蘇惠居樂信息科技有限公司