專利名稱:基于遠(yuǎn)程檢測和電源管理的高可用集群系統(tǒng)假死解決方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計(jì)算機(jī)集群技術(shù)領(lǐng)域,特別是涉及解決高可用性集群 (High-availability clusters)系統(tǒng)假死的方法。
背景技術(shù):
隨著計(jì)算機(jī)應(yīng)用領(lǐng)域的不斷擴(kuò)展和通信網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,電信、金融、電子政務(wù)等關(guān)鍵領(lǐng)域?qū)Ψ?wù)器持續(xù)運(yùn)行的要求越來越高,由于服務(wù)器宕機(jī)等故障所造成的業(yè)務(wù)停止將會(huì)帶來無法估量的損失,為了應(yīng)對這樣的情況,目前慣用手段是采用高可用集群系統(tǒng), 即使某臺(tái)服務(wù)器發(fā)生故障,用戶業(yè)務(wù)和數(shù)據(jù)也可迅速切換到備份服務(wù)器上,從而保證了整個(gè)系統(tǒng)對外服務(wù)的正常,為企業(yè)M小時(shí)x365天的關(guān)鍵業(yè)務(wù)應(yīng)用提供了強(qiáng)大的保障。但是,現(xiàn)有高可用集群系統(tǒng)難以克服的一個(gè)問題是節(jié)點(diǎn)假死問題,比如當(dāng)客戶端的請求量達(dá)到一定數(shù)值,出現(xiàn)服務(wù)器硬件資源難以滿足需求,服務(wù)器不能正常對外提供服務(wù),半癱瘓的一種狀況。這種狀況的持續(xù)時(shí)間不定,是否可恢復(fù)也未知。此時(shí)如果備份服務(wù)器接管業(yè)務(wù),主機(jī)假死恢復(fù)后服務(wù)在兩個(gè)節(jié)點(diǎn)同時(shí)運(yùn)行,會(huì)發(fā)生磁陣雙掛,導(dǎo)致用戶數(shù)據(jù)丟失。而如果備份服務(wù)器不接管業(yè)務(wù)則集群不能正常對外提供服務(wù)。因此,我們希望能有一種方法能解決假死的問題,保證服務(wù)器能提供更穩(wěn)定的服務(wù)。
發(fā)明內(nèi)容
針對上述問題,本發(fā)明提供基于遠(yuǎn)程檢測和電源管理的高可用集群系統(tǒng)假死解決方法,通過服務(wù)檢測腳本來檢測服務(wù)運(yùn)行節(jié)點(diǎn)狀況,然后通過遠(yuǎn)程電源管理技術(shù)重啟假死節(jié)點(diǎn),節(jié)點(diǎn)重啟后服務(wù)能遷移到備份節(jié)點(diǎn),從而保證了系統(tǒng)的高可用性和數(shù)據(jù)安全性,避免主機(jī)假死恢復(fù)后服務(wù)在兩個(gè)節(jié)點(diǎn)同時(shí)運(yùn)行的狀況。本發(fā)明通過以下技術(shù)手段實(shí)現(xiàn)基于遠(yuǎn)程檢測和電源管理的高可用集群系統(tǒng)假死解決方法,包括以下步驟A.集群系統(tǒng)啟動(dòng)時(shí),讀取配置文件,取得服務(wù)檢測時(shí)間間隔T和最大檢測失敗次數(shù)N,初始化遠(yuǎn)程電源管理模塊,啟動(dòng)遠(yuǎn)程檢測定時(shí)器;集群啟動(dòng)后服務(wù)部署的節(jié)點(diǎn)即為 L2 ;B.每隔時(shí)間T后,其它任意節(jié)點(diǎn)Ll向節(jié)點(diǎn)L2發(fā)送探測請求包,在規(guī)定的時(shí)間內(nèi)收到節(jié)點(diǎn)L2返回的探測響應(yīng)包則執(zhí)行步驟C,如果接收探測響應(yīng)包超時(shí)或者探測響應(yīng)包標(biāo)示服務(wù)在節(jié)點(diǎn)L2上運(yùn)行異常,則執(zhí)行步驟D ;C.探測響應(yīng)包標(biāo)示服務(wù)運(yùn)行正常,等待時(shí)間間隔T后啟動(dòng)下一次檢測;D.當(dāng)服務(wù)連續(xù)檢測失敗次數(shù)達(dá)到最大檢測失敗次數(shù)N,說明服務(wù)在節(jié)點(diǎn)L2上不可用,此時(shí)節(jié)點(diǎn)Ll向集群系統(tǒng)中的集中式遠(yuǎn)程電源管理器發(fā)送重啟請求,集中式遠(yuǎn)程電源管理器重啟對端節(jié)點(diǎn)L2,節(jié)點(diǎn)L2關(guān)機(jī)成功后把運(yùn)行在節(jié)點(diǎn)L2上的服務(wù)遷移到備份節(jié)點(diǎn)L3 ;E.節(jié)點(diǎn)L2重啟完成后,重新加入集群系統(tǒng)。
本發(fā)明還可做以下改進(jìn)步驟B中,所述探測請求包為TCP連接請求、SQL查詢、特定的服務(wù)消息、帶協(xié)議標(biāo)志位的包、二進(jìn)制流中的至少一種。步驟D中,所述遠(yuǎn)程電源管理器重啟對端節(jié)點(diǎn)的方法為與服務(wù)器所支持的電源管理接口相對應(yīng)的方法;如IBM服務(wù)器的RSAII卡、HP服務(wù)器的iLO卡、DELL服務(wù)器的DRAC 卡、智能平臺(tái)管理接口 IPMI對應(yīng)的遠(yuǎn)程電源管理的方法。與現(xiàn)有技術(shù)相比,本發(fā)明具有的有益效果為1)本發(fā)明提供的基于遠(yuǎn)程檢測和電源管理的高可用集群系統(tǒng)假死解決方法,先檢查主機(jī)是否處于假死狀態(tài),確定主機(jī)假死后使用看門狗技術(shù)重啟主機(jī),確保主機(jī)上運(yùn)行的服務(wù)停止,有效的避免了主機(jī)假死恢復(fù)后服務(wù)在兩個(gè)節(jié)點(diǎn)同時(shí)運(yùn)行,會(huì)發(fā)生磁陣雙掛,導(dǎo)致用戶數(shù)據(jù)丟失的問題,保證了整個(gè)系統(tǒng)運(yùn)行的穩(wěn)定性。2)本發(fā)明提供的基于看門狗本地檢測技術(shù)的高可用集群系統(tǒng)假死解決方法,先檢查主機(jī)是否處于假死狀態(tài),確定主機(jī)假死后使用看門狗技術(shù)重啟主機(jī),主機(jī)重啟過程中備份節(jié)點(diǎn)接管業(yè)務(wù),解決了主機(jī)持續(xù)假死,集群不能正常對外提供服務(wù)問題,保證了服務(wù)可持續(xù)性。3)本發(fā)明可采用多種探測請求包進(jìn)行檢測,具有靈活可控性。
圖1為基于遠(yuǎn)程腳本檢測及遠(yuǎn)程電源管理的集群系統(tǒng)假死解決方法系統(tǒng)流程圖。圖2為典型的高可用多節(jié)點(diǎn)集群系統(tǒng)拓?fù)渲蠥.服務(wù)器;B.網(wǎng)絡(luò);C.交換機(jī);D.遠(yuǎn)程電源管理器。
具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例對本發(fā)明進(jìn)行詳細(xì)的描述,以更進(jìn)一步了解本發(fā)明的目的、方案及功效,但不作為對本發(fā)明所附權(quán)利要求保護(hù)的限制。實(shí)施例1如圖2所示的高可用集群系統(tǒng)拓?fù)鋱D,系統(tǒng)有L個(gè)節(jié)點(diǎn),所有節(jié)點(diǎn)連接至一個(gè)集中式的遠(yuǎn)程電源管理器。每個(gè)節(jié)點(diǎn)有三張網(wǎng)卡eth0、ethl、eth2。ethO和ethl作為兩個(gè)不同的心跳網(wǎng)卡,負(fù)責(zé)傳輸心跳信號和各節(jié)點(diǎn)間通信。eth2作為工作鏈路網(wǎng)卡連接至邊界路由器,并通過浮動(dòng)IP對外提供服務(wù)。集群軟件啟動(dòng)后選舉一個(gè)主節(jié)點(diǎn)。主節(jié)點(diǎn)負(fù)責(zé)集群節(jié)點(diǎn)間狀態(tài)同步、節(jié)點(diǎn)調(diào)度、服務(wù)部署等。每次服務(wù)部署時(shí),節(jié)點(diǎn)調(diào)度算法會(huì)為每個(gè)服務(wù)選擇合適的節(jié)點(diǎn)進(jìn)行部署,運(yùn)行服務(wù)的節(jié)點(diǎn)即為活動(dòng)節(jié)點(diǎn)?;谶h(yuǎn)程檢測和電源管理的高可用集群系統(tǒng)假死解決方法,包括以下步驟A.集群系統(tǒng)啟動(dòng)時(shí),讀取配置文件,取得服務(wù)檢測時(shí)間間隔T和最大檢測失敗次數(shù)N,初始化遠(yuǎn)程電源管理模塊,啟動(dòng)遠(yuǎn)程檢測定時(shí)器;集群啟動(dòng)后服務(wù)部署的節(jié)點(diǎn)即為 L2 ;B.每隔時(shí)間T后,其它任意節(jié)點(diǎn)Ll向節(jié)點(diǎn)L2發(fā)送探測請求包,在規(guī)定的時(shí)間內(nèi)收到節(jié)點(diǎn)L2返回的探測響應(yīng)包則執(zhí)行步驟C,如果接收探測響應(yīng)包超時(shí)或者探測響應(yīng)包標(biāo)示服務(wù)在節(jié)點(diǎn)L2上運(yùn)行異常,則執(zhí)行步驟D ;
C.探測響應(yīng)包標(biāo)示服務(wù)運(yùn)行正常,等待時(shí)間間隔T后啟動(dòng)下一次檢測;D.當(dāng)服務(wù)連續(xù)檢測失敗次數(shù)達(dá)到最大檢測失敗次數(shù)N,說明服務(wù)在節(jié)點(diǎn)L2上不可用,此時(shí)節(jié)點(diǎn)Ll向集群系統(tǒng)中的集中式遠(yuǎn)程電源管理器發(fā)送重啟請求,集中式遠(yuǎn)程電源管理器重啟對端節(jié)點(diǎn)L2,節(jié)點(diǎn)L2關(guān)機(jī)成功后把運(yùn)行在節(jié)點(diǎn)L2上的服務(wù)遷移到備份節(jié)點(diǎn)L3 ;E.節(jié)點(diǎn)L2重啟完成后,重新加入集群系統(tǒng)。啟動(dòng)集群后,進(jìn)行系統(tǒng)狀態(tài)測試,節(jié)點(diǎn)L2上有運(yùn)行服務(wù),在L2上運(yùn)行測試程序?qū)е翷2假死,該狀態(tài)持續(xù)TXN秒后,節(jié)點(diǎn)Ll連續(xù)N次服務(wù)遠(yuǎn)程檢測失敗,Ll通告節(jié)點(diǎn)L2異常;集中式遠(yuǎn)程電源管理器重啟對端節(jié)點(diǎn)L2,節(jié)點(diǎn)L2關(guān)機(jī)成功后把運(yùn)行在節(jié)點(diǎn)L2上的服務(wù)遷移到備份節(jié)點(diǎn)L3 ;整個(gè)集群系統(tǒng)能正常對外提供服務(wù)。實(shí)施例2如圖2所示的高可用集群系統(tǒng)拓?fù)鋱D,系統(tǒng)有L個(gè)節(jié)點(diǎn),所有節(jié)點(diǎn)連接至一個(gè)集中式的遠(yuǎn)程電源管理器。每個(gè)節(jié)點(diǎn)有三張網(wǎng)卡eth0、ethl、eth2。ethO和ethl作為兩個(gè)不同的心跳網(wǎng)卡,負(fù)責(zé)傳輸心跳信號和各節(jié)點(diǎn)間通信。eth2作為工作鏈路網(wǎng)卡連接至邊界路由器,并通過浮動(dòng)IP對外提供服務(wù)。集群軟件啟動(dòng)后選舉一個(gè)主節(jié)點(diǎn)。主節(jié)點(diǎn)負(fù)責(zé)集群節(jié)點(diǎn)間狀態(tài)同步、節(jié)點(diǎn)調(diào)度、服務(wù)部署等。每次服務(wù)部署時(shí),節(jié)點(diǎn)調(diào)度算法會(huì)為每個(gè)服務(wù)選擇合適的節(jié)點(diǎn)進(jìn)行部署,運(yùn)行服務(wù)的節(jié)點(diǎn)即為活動(dòng)節(jié)點(diǎn)。基于遠(yuǎn)程檢測和電源管理的高可用集群系統(tǒng)假死解決方法,包括以下步驟A.集群系統(tǒng)啟動(dòng)時(shí),讀取配置文件,取得服務(wù)檢測時(shí)間間隔T和最大檢測失敗次數(shù)N,初始化遠(yuǎn)程電源管理模塊,啟動(dòng)遠(yuǎn)程檢測定時(shí)器;集群啟動(dòng)后服務(wù)部署的節(jié)點(diǎn)即為 L2 ;B.每隔時(shí)間T后,其它任意節(jié)點(diǎn)Ll向節(jié)點(diǎn)L2發(fā)送TCP連接請求,在規(guī)定的時(shí)間內(nèi)收到節(jié)點(diǎn)L2返回的探測響應(yīng)包則執(zhí)行步驟C,如果接收探測響應(yīng)包超時(shí)或者探測響應(yīng)包標(biāo)示服務(wù)在節(jié)點(diǎn)L2上運(yùn)行異常,則執(zhí)行步驟D ;C.探測響應(yīng)包標(biāo)示服務(wù)運(yùn)行正常,等待時(shí)間間隔T后啟動(dòng)下一次檢測;D.當(dāng)服務(wù)連續(xù)檢測失敗次數(shù)達(dá)到最大檢測失敗次數(shù)N,說明服務(wù)在節(jié)點(diǎn)L2上不可用,此時(shí)節(jié)點(diǎn)Ll向集群系統(tǒng)中的集中式遠(yuǎn)程電源管理器發(fā)送重啟請求,集中式遠(yuǎn)程電源管理器重啟對端節(jié)點(diǎn)L2,節(jié)點(diǎn)L2關(guān)機(jī)成功后把運(yùn)行在節(jié)點(diǎn)L2上的服務(wù)遷移到備份節(jié)點(diǎn)L3 ;E.節(jié)點(diǎn)L2重啟完成后,重新加入集群系統(tǒng)。步驟D中,所述遠(yuǎn)程電源管理器重啟對端節(jié)點(diǎn)的方法為與服務(wù)器所支持的電源管理接口相對應(yīng)的方法;如IBM服務(wù)器的RSAII卡、HP服務(wù)器的iLO卡、DELL服務(wù)器的DRAC 卡、智能平臺(tái)管理接口 IPMI對應(yīng)于遠(yuǎn)程電源管理的方法。啟動(dòng)集群后,進(jìn)行系統(tǒng)狀態(tài)測試,節(jié)點(diǎn)L2上有運(yùn)行服務(wù),在L2上運(yùn)行測試程序?qū)е翷2假死,該狀態(tài)持續(xù)TXN秒后,節(jié)點(diǎn)Ll連續(xù)N次服務(wù)遠(yuǎn)程檢測失敗,Ll通告節(jié)點(diǎn)L2異常;集中式遠(yuǎn)程電源管理器重啟對端節(jié)點(diǎn)L2,節(jié)點(diǎn)L2關(guān)機(jī)成功后把運(yùn)行在節(jié)點(diǎn)L2上的服務(wù)遷移到備份節(jié)點(diǎn)L3 ;整個(gè)集群系統(tǒng)能正常對外提供服務(wù)。上述的實(shí)施例僅為本發(fā)明的優(yōu)選實(shí)施例,不能以此來限定本發(fā)明的權(quán)利范圍,因此,依本發(fā)明申請專利范圍所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
權(quán)利要求
1.基于遠(yuǎn)程檢測和電源管理的高可用集群系統(tǒng)假死解決方法,其特征在于包括以下步驟A.集群系統(tǒng)啟動(dòng)時(shí),讀取配置文件,取得服務(wù)檢測時(shí)間間隔T和最大檢測失敗次數(shù)N, 初始化遠(yuǎn)程電源管理模塊,啟動(dòng)遠(yuǎn)程檢測定時(shí)器;集群啟動(dòng)后服務(wù)部署的節(jié)點(diǎn)即為L2 ;B.每隔時(shí)間T后,其它任意節(jié)點(diǎn)Ll向節(jié)點(diǎn)L2發(fā)送探測請求包,在規(guī)定的時(shí)間內(nèi)收到節(jié)點(diǎn)L2返回的探測響應(yīng)包則執(zhí)行步驟C,如果接收探測響應(yīng)包超時(shí)或者探測響應(yīng)包標(biāo)示服務(wù)在節(jié)點(diǎn)L2上運(yùn)行異常,則執(zhí)行步驟D ;C.探測響應(yīng)包標(biāo)示服務(wù)運(yùn)行正常,等待時(shí)間間隔T后啟動(dòng)下一次檢測;D.當(dāng)服務(wù)連續(xù)檢測失敗次數(shù)達(dá)到最大檢測失敗次數(shù)N,說明服務(wù)在節(jié)點(diǎn)L2上不可用, 此時(shí)節(jié)點(diǎn)Ll向集群系統(tǒng)中的集中式遠(yuǎn)程電源管理器發(fā)送重啟請求,集中式遠(yuǎn)程電源管理器重啟對端節(jié)點(diǎn)L2,節(jié)點(diǎn)L2關(guān)機(jī)成功后把運(yùn)行在節(jié)點(diǎn)L2上的服務(wù)遷移到備份節(jié)點(diǎn)L3 ;E.節(jié)點(diǎn)L2重啟完成后,重新加入集群系統(tǒng)。
2.根據(jù)權(quán)利要求1所述的基于遠(yuǎn)程檢測和電源管理的高可用集群系統(tǒng)假死解決方法, 其特征在于步驟B中,所述探測請求包為TCP連接請求、SQL查詢、特定的服務(wù)消息、帶協(xié)議標(biāo)志位的包、二進(jìn)制流中的至少一種。
3.根據(jù)權(quán)利要求,2所述的基于遠(yuǎn)程檢測和電源管理的高可用集群系統(tǒng)假死解決方法,其特征在于步驟D中,所述遠(yuǎn)程電源管理器重啟對端節(jié)點(diǎn)的方法為與服務(wù)器所支持的電源管理接口相對應(yīng)的方法。
全文摘要
本發(fā)明提供的基于遠(yuǎn)程檢測和管理的高可用集群系統(tǒng)假死解決方法,屬于計(jì)算機(jī)集群技術(shù)領(lǐng)域。該方法通過服務(wù)檢測腳本來檢測服務(wù)運(yùn)行節(jié)點(diǎn)狀況,然后通過遠(yuǎn)程電源管理技術(shù)重啟節(jié)點(diǎn),節(jié)點(diǎn)重啟后服務(wù)能遷移到備份節(jié)點(diǎn),從而保證了系統(tǒng)的高可用性和數(shù)據(jù)安全性,避免主機(jī)假死恢復(fù)后服務(wù)在兩個(gè)節(jié)點(diǎn)同時(shí)運(yùn)行的狀況。保證了整個(gè)系統(tǒng)運(yùn)行的穩(wěn)定性。該方法可廣泛應(yīng)用于計(jì)算機(jī)集群技術(shù)領(lǐng)域。
文檔編號H04L29/08GK102510343SQ20111036291
公開日2012年6月20日 申請日期2011年11月16日 優(yōu)先權(quán)日2011年11月16日
發(fā)明者王幸福, 蔡強(qiáng), 袁泉 申請人:廣東新支點(diǎn)技術(shù)服務(wù)有限公司