本發(fā)明涉及通信領(lǐng)域,特別涉及一種服務(wù)器宕機的監(jiān)測方法、裝置及系統(tǒng)。
背景技術(shù):
服務(wù)器宕機是指服務(wù)器出現(xiàn)意外故障導(dǎo)致無法登陸、無法執(zhí)行命令、無法提供服務(wù)。服務(wù)器宕機的原因有很多種,如硬件故障、系統(tǒng)資源不足、系統(tǒng)漏洞bug等都可能導(dǎo)致服務(wù)器宕機。服務(wù)器宕機對業(yè)務(wù)影響極大,如何監(jiān)測一臺服務(wù)器是否還在正常運行,并在服務(wù)器宕機時第一時間通知一線運維人員進行維護,以最大化減少對業(yè)務(wù)的影響,是運維工作的一個難點。
現(xiàn)有監(jiān)測宕機的主要方法包括:ping(packetinternetgroper,因特網(wǎng)包探索器)監(jiān)測、日志監(jiān)測等。
ping監(jiān)測是最常用的宕機監(jiān)測方法,ping命令通過發(fā)送“因特網(wǎng)消息控制協(xié)議(icmp,internetcontrolmessageprotocol)”回響請求消息來驗證與另一臺tcp(transmissioncontrolprotocol傳輸控制協(xié)議)/ip(internetprotocol,網(wǎng)絡(luò)之間互連的協(xié)議)主機的ip級連接狀態(tài),根據(jù)ping命令返回信息判斷對端主機網(wǎng)絡(luò)連通性和可達性。
日志監(jiān)測是通過采集系統(tǒng)日志以及應(yīng)用程序日志分析系統(tǒng)是否正常運行的監(jiān)測方法,比較常見的有日志監(jiān)測方法包括系統(tǒng)日志syslog監(jiān)測和窗口windows事件日志監(jiān)測。
但現(xiàn)有宕機監(jiān)測方案存在如下缺點:
ping監(jiān)測基于網(wǎng)絡(luò)層測試網(wǎng)絡(luò)連通性,因此在設(shè)備宕機而網(wǎng)絡(luò)依然可達的情況下,無法通過ping發(fā)現(xiàn)服務(wù)器宕機;ping監(jiān)測基于安全性考慮設(shè)置了icmp數(shù)據(jù)包過濾,這部分主機的ping監(jiān)測無效。
不同類型系統(tǒng)的日志格式不一致,可讀性不高,日志采集、存儲、分析成本高;在設(shè)備宕機或夯機時,系統(tǒng)已無法寫入日志,日志監(jiān)測失效。
對現(xiàn)有宕機監(jiān)測方案需要解決的技術(shù)問題總結(jié)如下:
1)、監(jiān)測操作系統(tǒng)全面性:現(xiàn)有宕機監(jiān)測方案不能同時支持unix平臺以及windows平臺;
2)、監(jiān)測準(zhǔn)確性:ping監(jiān)測是根據(jù)網(wǎng)絡(luò)可達性判斷主機是否正常運行,準(zhǔn)確性不高,比如主機宕機但網(wǎng)絡(luò)依然可達的情況下,ping監(jiān)測無法發(fā)現(xiàn)宕機;
3)、監(jiān)測方式安全性:ping監(jiān)測基于icmp協(xié)議,是一種面向無連接的協(xié)議,容易被用于攻擊網(wǎng)絡(luò)上的路由器和主機。比如向主機發(fā)起“pingofdeath”(死亡之ping)攻擊,發(fā)送icmp數(shù)據(jù)包的大小超過64kb上限,或者向目標(biāo)主機長時間、連續(xù)、大量地發(fā)送icmp數(shù)據(jù)包形成“icmp風(fēng)暴”,都會占用目標(biāo)主機大量cpu(centralprocessingunit,中央處理器)資源,甚至導(dǎo)致系統(tǒng)宕機。
技術(shù)實現(xiàn)要素:
本發(fā)明要解決的技術(shù)問題是提供一種服務(wù)器宕機的監(jiān)測方法、裝置及系統(tǒng),解決現(xiàn)有技術(shù)中宕機監(jiān)測方案在監(jiān)測操作系統(tǒng)全面性、監(jiān)測準(zhǔn)確性和監(jiān)測方式安全性等方面存在不足的問題。
為解決上述技術(shù)問題,本發(fā)明的實施例提供一種服務(wù)器宕機的監(jiān)測方法,包括:
向被監(jiān)控服務(wù)器發(fā)起安全殼ssh連接請求;
根據(jù)ssh連接是否成功建立,確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
其中,所述根據(jù)ssh連接是否成功建立,確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機,包括:
根據(jù)所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
其中,所述根據(jù)所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機,包括:
檢測是否接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息, 并在接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息時,檢測接收到的回顯信息是否為正常認證服務(wù)請求消息;
根據(jù)檢測結(jié)果,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
其中,所述向被監(jiān)控服務(wù)器發(fā)起安全殼ssh連接請求,包括:
每隔第一預(yù)設(shè)時間段向所述被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求。
所述根據(jù)檢測結(jié)果,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機,包括:
若發(fā)起一次ssh連接請求后,接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,且接收到的回顯信息是所述正常認證服務(wù)請求消息,則確定ssh連接成功建立,并進一步確定所述被監(jiān)控服務(wù)器沒有發(fā)生宕機;
若發(fā)起一次ssh連接請求后,沒有接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息或者接收到的回顯信息不是所述正常認證服務(wù)請求消息,則每隔第二預(yù)設(shè)時間段向所述被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求,共發(fā)起n次,n為大于或等于1的整數(shù),且所述第二預(yù)設(shè)時間段小于所述第一預(yù)設(shè)時間段;
若發(fā)起n次ssh連接請求后都沒有接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息或者接收到的回顯信息都不是所述正常認證服務(wù)請求消息,則確定ssh連接沒有成功建立,并進一步確定所述被監(jiān)控服務(wù)器發(fā)生了宕機,否則,確定ssh連接成功建立,并進一步確定所述被監(jiān)控服務(wù)器沒有發(fā)生宕機。
其中,所述監(jiān)測方法還包括:
確定所述被監(jiān)控服務(wù)器發(fā)生宕機后,對所述被監(jiān)控服務(wù)器發(fā)生宕機的消息進行告警上報。
為解決上述技術(shù)問題,本發(fā)明的實施例還提供一種服務(wù)器宕機的監(jiān)測裝置,包括:
發(fā)起模塊,用于向被監(jiān)控服務(wù)器發(fā)起安全殼ssh連接請求;
確定模塊,用于根據(jù)ssh連接是否成功建立,確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
其中,所述確定模塊包括:
確定單元,用于根據(jù)所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
其中,所述確定單元包括:
檢測單元,用于檢測是否接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,并在接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息時,檢測接收到的回顯信息是否為正常認證服務(wù)請求消息;
第一確定子單元,用于根據(jù)檢測結(jié)果,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
其中,所述發(fā)起模塊包括:
第一發(fā)起單元,用于每隔第一預(yù)設(shè)時間段向所述被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求。
所述第一確定子單元包括:
第二確定子單元,用于若發(fā)起一次ssh連接請求后,接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,且接收到的回顯信息是所述正常認證服務(wù)請求消息,則確定ssh連接成功建立,并進一步確定所述被監(jiān)控服務(wù)器沒有發(fā)生宕機;
第二發(fā)起單元,用于若發(fā)起一次ssh連接請求后,沒有接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息或者接收到的回顯信息不是所述正常認證服務(wù)請求消息,則每隔第二預(yù)設(shè)時間段向所述被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求,共發(fā)起n次,n為大于或等于1的整數(shù),且所述第二預(yù)設(shè)時間段小于所述第一預(yù)設(shè)時間段;
第三確定子單元,用于若發(fā)起n次ssh連接請求后都沒有接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息或者接收到的回顯信息都不是所述正常認證服務(wù)請求消息,則確定ssh連接沒有成功建立,并進一步確定所述被監(jiān)控服務(wù)器發(fā)生了宕機,否則,確定ssh連接成功建立,并進一步確定所述被監(jiān)控服務(wù)器沒有發(fā)生宕機。
其中,所述監(jiān)測裝置還包括:
上報模塊,用于確定所述被監(jiān)控服務(wù)器發(fā)生宕機后,對所述被監(jiān)控服務(wù)器發(fā)生宕機的消息進行告警上報。
為解決上述技術(shù)問題,本發(fā)明的實施例還提供一種服務(wù)器宕機的監(jiān)測系統(tǒng),包括一臺宕機撥測控制器和至少一臺宕機撥測服務(wù)器,所述宕機撥測控制器用于:
控制所述宕機撥測服務(wù)器向被監(jiān)控服務(wù)器發(fā)起安全殼ssh連接請求,并根據(jù)ssh連接是否成功建立,確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
本發(fā)明的上述技術(shù)方案的有益效果如下:
本發(fā)明實施例的服務(wù)器宕機的監(jiān)測方法,首先向被監(jiān)控服務(wù)器發(fā)起安全殼ssh連接請求;然后根據(jù)ssh連接是否成功建立,確定被監(jiān)控服務(wù)器是否發(fā)生宕機。從而基于ssh協(xié)議實現(xiàn)了對服務(wù)器宕機的有效監(jiān)測。由于unix系統(tǒng)和windows系統(tǒng)都支持ssh協(xié)議,因此本發(fā)明的監(jiān)測方法適用操作系統(tǒng)范圍廣;且基于應(yīng)用層ssh服務(wù)正常與否的宕機監(jiān)測,比基于網(wǎng)絡(luò)層的網(wǎng)絡(luò)可達性的宕機監(jiān)測更加準(zhǔn)確有效。相比于日志監(jiān)測,本發(fā)明的監(jiān)測方法不需要對系統(tǒng)日志進行分析判斷,只需要判斷ssh連接是否成功,宕機監(jiān)測實現(xiàn)更加簡單高效。相比于ping監(jiān)測,本發(fā)明的監(jiān)測方法受網(wǎng)絡(luò)策略影響小,安全性高。本發(fā)明的監(jiān)測方法解決了現(xiàn)有技術(shù)中宕機監(jiān)測方案在監(jiān)測操作系統(tǒng)全面性、監(jiān)測準(zhǔn)確性和監(jiān)測方式安全性等方面存在不足的問題。
附圖說明
圖1為本發(fā)明服務(wù)器宕機的監(jiān)測方法流程圖;
圖2為現(xiàn)有ssh協(xié)議框架的示意圖;
圖3為本發(fā)明服務(wù)器宕機的監(jiān)測方法一具體實施例的流程圖;
圖4為本發(fā)明服務(wù)器宕機的監(jiān)測裝置的結(jié)構(gòu)示意圖;
圖5為本發(fā)明服務(wù)器宕機的監(jiān)測系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施方式
為使本發(fā)明要解決的技術(shù)問題、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖及具體實施例進行詳細描述。
下面對ssh協(xié)議做簡單介紹。ssh(secureshell,安全殼)是建立在應(yīng)用層和傳輸層基礎(chǔ)上的安全協(xié)議,專為遠程登錄會話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。而應(yīng)用層是開放系統(tǒng)的最高層,是直接為應(yīng)用進程提供服務(wù)的。
如圖2所示,ssh協(xié)議框架包括傳輸層協(xié)議、用戶認證協(xié)議和連接協(xié)議。其中傳輸層協(xié)議thetransportlayerprotocol提供服務(wù)器認證、數(shù)據(jù)機密性、信息完整性等的支持;用戶認證協(xié)議theuserauthenticationprotocol則為服務(wù)器提供客戶端的身份鑒別;連接協(xié)議theconnectionprotocol將加密的信息隧道復(fù)用成若干個邏輯通道,提供給更高層的應(yīng)用協(xié)議使用。
ssh連接建立要經(jīng)歷如下五個階段:
1)版本號協(xié)商階段:ssh目前包括ssh1和ssh2兩個版本,雙方通過版本協(xié)商確定使用的版本。
2)密鑰和算法協(xié)商階段:ssh支持多種加密算法,雙方根據(jù)本端和對端支持的算法,協(xié)商出最終使用的算法。
3)認證階段:ssh客戶端向服務(wù)器端發(fā)起認證請求,服務(wù)器端對客戶端進行認證。
4)會話請求階段:認證通過后,客戶端向服務(wù)器端發(fā)送會話請求。
5)交互會話階段:會話請求通過后,服務(wù)器端和客戶端進行信息的交互。
本發(fā)明實施例的服務(wù)器宕機的監(jiān)測方法,基于ssh協(xié)議實現(xiàn)對服務(wù)器宕機的有效監(jiān)測,具有可監(jiān)測范圍廣,監(jiān)測準(zhǔn)確性、及時性、安全性高的優(yōu)點。
如圖1所示,本發(fā)明實施例的服務(wù)器宕機的監(jiān)測方法,包括:
步驟101,向被監(jiān)控服務(wù)器發(fā)起安全殼ssh連接請求;
步驟102,根據(jù)ssh連接是否成功建立,確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
本發(fā)明實施例的服務(wù)器宕機的監(jiān)測方法,首先向被監(jiān)控服務(wù)器發(fā)起安全殼ssh連接請求;然后根據(jù)ssh連接是否成功建立,確定被監(jiān)控服務(wù)器是否發(fā)生宕機。從而基于ssh協(xié)議實現(xiàn)了對服務(wù)器宕機的有效監(jiān)測。由于unix系統(tǒng)和windows系統(tǒng)都支持ssh協(xié)議,因此本發(fā)明的監(jiān)測方法適用操作系統(tǒng)范圍廣;且基于應(yīng)用層ssh服務(wù)正常與否的宕機監(jiān)測,比基于網(wǎng)絡(luò)層的網(wǎng)絡(luò)可達性的宕機監(jiān)測更加準(zhǔn)確有效。相比于日志監(jiān)測,本發(fā)明的監(jiān)測方法不需要 對系統(tǒng)日志進行分析判斷,只需要判斷ssh連接是否成功,宕機監(jiān)測實現(xiàn)更加簡單高效。相比于ping監(jiān)測,本發(fā)明的監(jiān)測方法受網(wǎng)絡(luò)策略影響小,安全性高。本發(fā)明的監(jiān)測方法解決了現(xiàn)有技術(shù)中宕機監(jiān)測方案在監(jiān)測操作系統(tǒng)全面性、監(jiān)測準(zhǔn)確性和監(jiān)測方式安全性等方面存在不足的問題。
優(yōu)選的,上述步驟102的步驟可以包括:
步驟1021,根據(jù)所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
這里,服務(wù)器發(fā)送的對ssh連接請求的回顯信息一般包括9種,如下表1所示,其中2種屬于正常認證服務(wù)請求消息,表示ssh可正常連接,另外7種不屬于正常認證服務(wù)請求消息,表示ssh不能正常連接。
此時,通過被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,可準(zhǔn)確判斷ssh連接是否成功建立,進而判斷被監(jiān)控服務(wù)器是否發(fā)生宕機。
表1
進一步的,上述步驟1021的步驟可以包括:
步驟10211,檢測是否接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,并在接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息時,檢測接收到的回顯信息是否為正常認證服務(wù)請求消息。
這里,在服務(wù)器發(fā)生宕機時,有可能接收不到服務(wù)器發(fā)送的對ssh連接請求的回顯信息或者接收到不屬于正常認證服務(wù)請求消息的回顯信息,只有在服務(wù)器正常運作時,才會收到服務(wù)器發(fā)送的屬于正常認證服務(wù)請求消息的回顯信息。
步驟10212,根據(jù)檢測結(jié)果,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
此時,通過檢測是否接收到被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,并在接收到回顯信息時,檢測該回顯信息是否為正常認證服務(wù)請求消息,可準(zhǔn)確、快速地判斷ssh連接是否成功建立,進而進一步確定被監(jiān)控服務(wù)器發(fā)生宕機的情況。
優(yōu)選的,上述步驟101的步驟可以包括:
步驟1011,每隔第一預(yù)設(shè)時間段向所述被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求。
這里,每隔第一預(yù)設(shè)時間段向被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求,可實現(xiàn)對被監(jiān)控服務(wù)器的實時撥測監(jiān)控,以在服務(wù)器出現(xiàn)宕機時及時通知工作人員進行維修。
上述步驟10212的步驟可以包括:
步驟102121,若發(fā)起一次ssh連接請求后,接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,且接收到的回顯信息是所述正常認證服務(wù)請求消息,則確定ssh連接成功建立,并進一步確定所述被監(jiān)控服務(wù)器沒有發(fā)生宕機。
這里,如果發(fā)起一次ssh連接請求后,接收到的回顯信息屬于正常認證服務(wù)請求消息,則可以確定ssh連接成功,被監(jiān)控服務(wù)器沒有發(fā)生宕機。
步驟102122,若發(fā)起一次ssh連接請求后,沒有接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息或者接收到的回顯信息不是所述正常認證服務(wù)請求消息,則每隔第二預(yù)設(shè)時間段向所述被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求,共發(fā)起n次,n為大于或等于1的整數(shù),且所述第二預(yù)設(shè)時間段小于所述第一預(yù)設(shè)時間段。
這里,如果發(fā)起一次ssh連接請求后,沒有接收到回顯信息或者接收到的回顯信息不屬于正常認證服務(wù)請求消息,則有可能是服務(wù)器發(fā)生了宕機,也有可能是其他干擾因素導(dǎo)致ssh連接請求沒有順利發(fā)送到服務(wù)器。因此,為了提高宕機監(jiān)測的準(zhǔn)確性,需要間隔第二預(yù)設(shè)時間段向被監(jiān)控服務(wù)器繼續(xù)發(fā)起多次ssh連接請求,并根據(jù)連接結(jié)果最終確定服務(wù)器是否發(fā)生宕機。
其中,第一預(yù)設(shè)時間段和第二預(yù)設(shè)時間段可根據(jù)需求進行設(shè)定,如第一預(yù)設(shè)時間段可設(shè)定為300秒,第二預(yù)設(shè)時間段可設(shè)定為60秒。
當(dāng)然,間隔第二預(yù)設(shè)時間段向被監(jiān)控服務(wù)器發(fā)起的n次連接請求也可根據(jù)需求進行設(shè)定,如可設(shè)定n=2。
步驟102123,若發(fā)起n次ssh連接請求后都沒有接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息或者接收到的回顯信息都不是所述正常認證服務(wù)請求消息,則確定ssh連接沒有成功建立,并進一步確定所述被監(jiān)控服務(wù)器發(fā)生了宕機,否則,確定ssh連接成功建立,并進一步確定所述被監(jiān)控服務(wù)器沒有發(fā)生宕機。
這里,在發(fā)起的n次ssh連接請求都沒有接收到被監(jiān)控服務(wù)器發(fā)送的回顯信息或者接收到的回顯信息都不是正常認證服務(wù)請求消息時,可以確定ssh連接沒有成功,并可以最終確定被監(jiān)控服務(wù)器發(fā)生了宕機,排除了由于其他原因?qū)е碌膕sh連接沒有成功的可能。
此時,通過每隔第一預(yù)設(shè)時間段向被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求,實現(xiàn)了對被監(jiān)控服務(wù)器的實時撥測監(jiān)控,可在服務(wù)器出現(xiàn)宕機時及時通知工作人員進行維修;通過每隔第二預(yù)設(shè)時間段向被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求,并根據(jù)多次的撥測結(jié)果確定被監(jiān)控服務(wù)器是否發(fā)生宕機,提高了監(jiān)測的準(zhǔn)確性和有效性。
優(yōu)選的,所述監(jiān)測方法還可以包括:
步驟103,確定所述被監(jiān)控服務(wù)器發(fā)生宕機后,對所述被監(jiān)控服務(wù)器發(fā)生宕機的消息進行告警上報。
這里,可將對被監(jiān)控服務(wù)器的撥測結(jié)果同步到日志數(shù)據(jù)庫,并通過日志數(shù)據(jù)庫進行告警上報。
此時,在被監(jiān)控服務(wù)器發(fā)生宕機后進行告警上報,能及時通知工作人員進行維修,以避免對系統(tǒng)工作的影響,保證用戶體驗。
下面對本發(fā)明的一具體實現(xiàn)實施例舉例說明如下:
如圖3所示,本發(fā)明實施例的服務(wù)器宕機的監(jiān)測方法,包括:
步驟301,撥測服務(wù)器每隔t1秒(如300秒)向被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求。
步驟302,撥測服務(wù)器檢測是否接收到被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的正常認證服務(wù)請求消息,如果未接收到正常認證服務(wù)請求消息,則執(zhí)行步驟303,否則執(zhí)行步驟305。
這里,未接收到正常認證服務(wù)請求消息包括兩種情況,一種是未接收到被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,一種是接收到的回顯信息不屬于正常認證服務(wù)請求消息。
步驟303,撥測服務(wù)器每隔t2秒(如60秒)向被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求,共發(fā)起n次(如2次),如果在第n次(1≤n≤n,且n為整數(shù))ssh連接請求中接收到正常認證服務(wù)請求消息,則執(zhí)行步驟305,如果n 次都未接收到正常認證服務(wù)請求消息,則執(zhí)行步驟304。
步驟304,撥測服務(wù)器與被監(jiān)控服務(wù)器ssh連接失敗,被監(jiān)控服務(wù)器發(fā)生了宕機。
步驟305,撥測服務(wù)器與被監(jiān)控服務(wù)器ssh連接成功,被監(jiān)控服務(wù)器運行正常,沒有發(fā)生宕機。
綜上,本發(fā)明實施例的服務(wù)器宕機的監(jiān)測方法,基于ssh協(xié)議實現(xiàn)了對服務(wù)器宕機的有效監(jiān)測,當(dāng)主機設(shè)備宕機或夯機時,會在第一時間顯示異常,并通知一線運維人員。基于ssh協(xié)議的宕機監(jiān)測方法可有效避免同類監(jiān)測所存在的及時性、準(zhǔn)確性等問題,如日志監(jiān)測不會及時寫入日志,影響及時性;ping監(jiān)測僅針對網(wǎng)絡(luò)層,而在設(shè)備宕機網(wǎng)絡(luò)依然可達的情況下,ping回顯結(jié)果并不受影響,從而導(dǎo)致無法檢測到主機設(shè)備宕機。
本發(fā)明實施例的服務(wù)器宕機的監(jiān)測方法,可適用于unix系統(tǒng)和windows系統(tǒng),適用操作系統(tǒng)范圍廣;且基于應(yīng)用層ssh服務(wù)正常與否的宕機監(jiān)測,比基于網(wǎng)絡(luò)層的網(wǎng)絡(luò)可達性的宕機監(jiān)測更加準(zhǔn)確有效;相比于日志監(jiān)測,不需要對系統(tǒng)日志進行分析判斷,只需要判斷ssh連接是否成功,宕機監(jiān)測實現(xiàn)更加簡單高效;相比于ping監(jiān)測,受網(wǎng)絡(luò)策略影響小,安全性高。解決了現(xiàn)有技術(shù)中宕機監(jiān)測方案在監(jiān)測操作系統(tǒng)全面性、監(jiān)測準(zhǔn)確性和監(jiān)測方式安全性等方面存在不足的問題。
如圖4所示,本發(fā)明的實施例還提供一種服務(wù)器宕機的監(jiān)測裝置,包括:
發(fā)起模塊,用于向被監(jiān)控服務(wù)器發(fā)起安全殼ssh連接請求;
確定模塊,用于根據(jù)ssh連接是否成功建立,確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
本發(fā)明實施例的服務(wù)器宕機的監(jiān)測裝置,基于ssh協(xié)議實現(xiàn)了對服務(wù)器宕機的有效監(jiān)測。由于unix系統(tǒng)和windows系統(tǒng)都支持ssh協(xié)議,因此本發(fā)明的監(jiān)測方法適用操作系統(tǒng)范圍廣;且基于應(yīng)用層ssh服務(wù)正常與否的宕機監(jiān)測,比基于網(wǎng)絡(luò)層的網(wǎng)絡(luò)可達性的宕機監(jiān)測更加準(zhǔn)確有效。相比于日志監(jiān)測,本發(fā)明的監(jiān)測方法不需要對系統(tǒng)日志進行分析判斷,只需要判斷ssh連接是否成功,宕機監(jiān)測實現(xiàn)更加簡單高效。相比于ping監(jiān)測,本發(fā)明的監(jiān)測方法受網(wǎng)絡(luò)策略影響小,安全性高。本發(fā)明的監(jiān)測方法解決了現(xiàn)有技術(shù)中宕 機監(jiān)測方案在監(jiān)測操作系統(tǒng)全面性、監(jiān)測準(zhǔn)確性和監(jiān)測方式安全性等方面存在不足的問題。
優(yōu)選的,所述確定模塊可以包括:
確定單元,用于根據(jù)所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
優(yōu)選的,所述確定單元可以包括:
檢測單元,用于檢測是否接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,并在接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息時,檢測接收到的回顯信息是否為正常認證服務(wù)請求消息;
第一確定子單元,用于根據(jù)檢測結(jié)果,確定ssh連接是否成功建立,并進一步確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
優(yōu)選的,所述發(fā)起模塊可以包括:
第一發(fā)起單元,用于每隔第一預(yù)設(shè)時間段向所述被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求。
所述第一確定子單元包括:
第二確定子單元,用于若發(fā)起一次ssh連接請求后,接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息,且接收到的回顯信息是所述正常認證服務(wù)請求消息,則確定ssh連接成功建立,并進一步確定所述被監(jiān)控服務(wù)器沒有發(fā)生宕機;
第二發(fā)起單元,用于若發(fā)起一次ssh連接請求后,沒有接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息或者接收到的回顯信息不是所述正常認證服務(wù)請求消息,則每隔第二預(yù)設(shè)時間段向所述被監(jiān)控服務(wù)器發(fā)起一次ssh連接請求,共發(fā)起n次,n為大于或等于1的整數(shù),且所述第二預(yù)設(shè)時間段小于所述第一預(yù)設(shè)時間段;
第三確定子單元,用于若發(fā)起n次ssh連接請求后都沒有接收到所述被監(jiān)控服務(wù)器發(fā)送的對ssh連接請求的回顯信息或者接收到的回顯信息都不是所述正常認證服務(wù)請求消息,則確定ssh連接沒有成功建立,并進一步確定所述被監(jiān)控服務(wù)器發(fā)生了宕機,否則,確定ssh連接成功建立,并進一步確 定所述被監(jiān)控服務(wù)器沒有發(fā)生宕機。
優(yōu)選的,所述監(jiān)測裝置還可以包括:
上報模塊,用于確定所述被監(jiān)控服務(wù)器發(fā)生宕機后,對所述被監(jiān)控服務(wù)器發(fā)生宕機的消息進行告警上報。
本發(fā)明實施例的服務(wù)器宕機的監(jiān)測裝置,基于ssh協(xié)議實現(xiàn)了對服務(wù)器宕機的有效監(jiān)測,當(dāng)主機設(shè)備宕機或夯機時,會在第一時間顯示異常,并通知一線運維人員。基于ssh協(xié)議的宕機監(jiān)測方法可有效避免同類監(jiān)測所存在的及時性、準(zhǔn)確性等問題,如日志監(jiān)測不會及時寫入日志,影響及時性;ping監(jiān)測僅針對網(wǎng)絡(luò)層,而在設(shè)備宕機網(wǎng)絡(luò)依然可達的情況下,ping回顯結(jié)果并不受影響,從而導(dǎo)致無法檢測到主機設(shè)備宕機。
本發(fā)明實施例的服務(wù)器宕機的監(jiān)測裝置,可適用于unix系統(tǒng)和windows系統(tǒng),適用操作系統(tǒng)范圍廣;且基于應(yīng)用層ssh服務(wù)正常與否的宕機監(jiān)測,比基于網(wǎng)絡(luò)層的網(wǎng)絡(luò)可達性的宕機監(jiān)測更加準(zhǔn)確有效;相比于日志監(jiān)測,不需要對系統(tǒng)日志進行分析判斷,只需要判斷ssh連接是否成功,宕機監(jiān)測實現(xiàn)更加簡單高效;相比于ping監(jiān)測,受網(wǎng)絡(luò)策略影響小,安全性高。解決了現(xiàn)有技術(shù)中宕機監(jiān)測方案在監(jiān)測操作系統(tǒng)全面性、監(jiān)測準(zhǔn)確性和監(jiān)測方式安全性等方面存在不足的問題。
如圖5所示,本發(fā)明的實施例還提供一種服務(wù)器宕機的監(jiān)測系統(tǒng),包括一臺宕機撥測控制器和至少一臺宕機撥測服務(wù)器,所述宕機撥測控制器用于:
控制所述宕機撥測服務(wù)器向被監(jiān)控服務(wù)器發(fā)起安全殼ssh連接請求,并根據(jù)ssh連接是否成功建立,確定所述被監(jiān)控服務(wù)器是否發(fā)生宕機。
這里,宕機撥測服務(wù)器上部署宕機撥測程序,周期性發(fā)起ssh連接請求;宕機撥測控制器用于配置和刪除撥測設(shè)備、分配撥測服務(wù)器(如dcn網(wǎng)撥測服務(wù)器分配給dcn網(wǎng)設(shè)備,私網(wǎng)撥測服務(wù)器分配給私網(wǎng)設(shè)備)、處理撥測結(jié)果,并將撥測結(jié)果同步到日志數(shù)據(jù)庫。
需要說明的是,該服務(wù)器宕機的監(jiān)測裝置及系統(tǒng)是與上述服務(wù)器宕機的監(jiān)測方法相對應(yīng)的裝置及系統(tǒng),其中上述方法實施例中所有實現(xiàn)方式均適用于該裝置及系統(tǒng)的實施例中,也能達到同樣的技術(shù)效果。
以上所述是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技 術(shù)人員來說,在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應(yīng)視為本發(fā)明的保護范圍。