本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種超大規(guī)模機(jī)器自動(dòng)化維修的技術(shù)。
背景技術(shù):
現(xiàn)有的機(jī)器維修一般分為如下場(chǎng)景:
1)初具規(guī)模(幾十臺(tái))時(shí),一般由運(yùn)維人員通過監(jiān)控、手動(dòng)監(jiān)控進(jìn)行維修和交付;
2)中型規(guī)模和大規(guī)模(百臺(tái)規(guī)模、千臺(tái)規(guī)模)時(shí),一般會(huì)通過監(jiān)控+腳本,或者小型自動(dòng)化系統(tǒng)實(shí)現(xiàn)。
然而,對(duì)于超大規(guī)模(萬(wàn)臺(tái)、幾十萬(wàn)臺(tái))機(jī)器,則存在諸如人力成本、維修交付效率等問題。
現(xiàn)有的自動(dòng)化維修實(shí)現(xiàn)方案一般有如下幾種:
1)腳本式維修系統(tǒng):一般是應(yīng)對(duì)小規(guī)模集群的辦法,這種集群可能連虛擬化都沒有完全實(shí)現(xiàn),一般通過監(jiān)控、通過部署工具遷移服務(wù)、觸發(fā)服務(wù)API命令操作機(jī)器,這種系統(tǒng)簡(jiǎn)單易開發(fā),但是缺點(diǎn)是沒有固定的收集和分析系統(tǒng),維修和部署這些一般針對(duì)簡(jiǎn)單場(chǎng)景,功能簡(jiǎn)單,不能適用于大規(guī)模系統(tǒng)。
2)觸發(fā)式維修系統(tǒng):也可以稱為一種半自動(dòng)維修系統(tǒng),一般有獨(dú)立的收集器進(jìn)行收集故障和對(duì)故障進(jìn)行分級(jí),然后有一套獨(dú)立的故障池和維修推送系統(tǒng),這種系統(tǒng)滿足了大部分的維修系統(tǒng)的需求,但是缺點(diǎn)是沒有獨(dú)立的服務(wù)遷移對(duì)接服務(wù)、出現(xiàn)問題還需要使用方獲取故障主動(dòng)推送,缺少交互流程。
然而,現(xiàn)有的這些維修方案無法滿足多樣性,也無法滿足超大規(guī)模機(jī)器,大部分維修系統(tǒng)對(duì)于機(jī)型、系統(tǒng)、環(huán)境都相對(duì)統(tǒng)一。而在實(shí)際運(yùn)作中,需要考慮機(jī)型的多樣性,業(yè)務(wù)的多樣性,需要滿足不同業(yè)務(wù)的需求和系統(tǒng),如存儲(chǔ)、計(jì)算等不同配置和環(huán)境。
因此,如何提供一種超大規(guī)模機(jī)器自動(dòng)化維修的方法和裝置,成為本領(lǐng)域技術(shù)人員亟需解決的技術(shù)問題之一。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的是提供一種超大規(guī)模機(jī)器自動(dòng)化維修的方法和裝置。
根據(jù)本發(fā)明的一個(gè)方面,提供了一種超大規(guī)模機(jī)器自動(dòng)化維修的方法,其中,該方法包括:
a收集超大規(guī)模機(jī)器中的軟和/或硬件故障;
b對(duì)所述軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù);
c基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,其中,對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤。
優(yōu)選地,所述步驟a包括:
基于對(duì)所述超大規(guī)模機(jī)器的軟件檢測(cè)和/或硬件檢測(cè),獲得所述軟和/或硬件故障,并將所述軟和/或硬件故障上報(bào)至主服務(wù)端;
其中,所述步驟b包括:
對(duì)所述主服務(wù)端中存儲(chǔ)的軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù)。
優(yōu)選地,該方法還包括:
將基于對(duì)所述軟和/或硬件故障進(jìn)行故障分析所獲得的故障數(shù)據(jù)作為故障源,建立或更新對(duì)應(yīng)的數(shù)據(jù)庫(kù);
其中,所述步驟c包括:
基于所述數(shù)據(jù)庫(kù)中的故障源,采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
優(yōu)選地,所述步驟b還包括:
對(duì)經(jīng)故障分析所獲得的故障數(shù)據(jù)進(jìn)行分類,獲得分類后的故障數(shù)據(jù);
其中,所述步驟c包括:
基于所述分類后的故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
優(yōu)選地,所述步驟c包括:
基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),結(jié)合配置信息所對(duì)應(yīng)的閾值,對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
優(yōu)選地,所述步驟c包括:
采用通用的遷移服務(wù)平臺(tái)對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修;
對(duì)于遷移后剩余的機(jī)器,繼續(xù)采用所述維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)進(jìn)行自動(dòng)化維修。
優(yōu)選地,所述步驟c包括:
對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器,采用單盤中控決策是否下盤,以對(duì)所述機(jī)器進(jìn)行在線修盤。
根據(jù)本發(fā)明的另一個(gè)方面,還提供了一種超大規(guī)模機(jī)器自動(dòng)化維修的裝置,其中,該裝置包括:
故障收集裝置,用于收集超大規(guī)模機(jī)器中的軟和/或硬件故障;
故障分析裝置,用于對(duì)所述軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù);
故障維修裝置,用于基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,其中,對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤。
優(yōu)選地,所述故障收集裝置用于:
基于對(duì)所述超大規(guī)模機(jī)器的軟件檢測(cè)和/或硬件檢測(cè),獲得所述軟和/或硬件故障,并將所述軟和/或硬件故障上報(bào)至主服務(wù)端;
其中,所述故障分析裝置用于:
對(duì)所述主服務(wù)端中存儲(chǔ)的軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù)。
優(yōu)選地,該裝置還包括:
更新裝置,用于將基于對(duì)所述軟和/或硬件故障進(jìn)行故障分析所獲得的故障數(shù)據(jù)作為故障源,建立或更新對(duì)應(yīng)的數(shù)據(jù)庫(kù);
其中,所述故障維修裝置用于:
基于所述數(shù)據(jù)庫(kù)中的故障源,采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
優(yōu)選地,所述故障分析裝置還用于:
對(duì)經(jīng)故障分析所獲得的故障數(shù)據(jù)進(jìn)行分類,獲得分類后的故障數(shù)據(jù);
其中,所述故障維修裝置用于:
基于所述分類后的故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
優(yōu)選地,所述故障維修裝置用于:
基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),結(jié)合配置信息所對(duì)應(yīng)的閾值,對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
優(yōu)選地,所述故障維修裝置用于:
采用通用的遷移服務(wù)平臺(tái)對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修;
對(duì)于遷移后剩余的機(jī)器,繼續(xù)采用所述維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)進(jìn)行自動(dòng)化維修。
優(yōu)選地,所述故障維修裝置用于:
對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器,采用單盤中控決策是否下盤,以對(duì)所述機(jī)器進(jìn)行在線修盤。
根據(jù)本發(fā)明的又一個(gè)方面,還提供了一種計(jì)算機(jī)設(shè)備,所述計(jì)算機(jī)設(shè)備包括:
一個(gè)或多個(gè)處理器;
存儲(chǔ)器,用于存儲(chǔ)一個(gè)或多個(gè)計(jì)算機(jī)程序;
當(dāng)所述一個(gè)或多個(gè)計(jì)算機(jī)程序被所述一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得所述一個(gè)或多個(gè)處理器實(shí)現(xiàn)如前任一項(xiàng)所述的方法。
與現(xiàn)有技術(shù)相比,本發(fā)明收集超大規(guī)模機(jī)器中的軟和/或硬件故障;對(duì)所述軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù);基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,其中,對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤。對(duì)于超大規(guī)模(萬(wàn)臺(tái)、幾十萬(wàn)臺(tái))機(jī)器,本發(fā)明提供了一個(gè)完整的自動(dòng)化維修系統(tǒng),可以滿足諸如故障檢測(cè)、服務(wù)遷移、環(huán)境部署、機(jī)器維修狀態(tài)流轉(zhuǎn)、快速交付等,在成本方面,節(jié)約了運(yùn)維人力、通過提高流轉(zhuǎn)效率節(jié)約機(jī)器;在全自動(dòng)化方面,本發(fā)明檢測(cè)、維修、服務(wù)遷移和部署實(shí)現(xiàn)全部自動(dòng)化無需人工接入;在效率方面,本發(fā)明機(jī)器交付效率高,可以實(shí)現(xiàn)小時(shí)級(jí)和分鐘級(jí)交付。
進(jìn)一步地,本發(fā)明可以滿足多種場(chǎng)景的系統(tǒng)、環(huán)境支持,還可以滿足在離線混部場(chǎng)景的業(yè)務(wù)在線修機(jī)器和自動(dòng)化維修機(jī)器的場(chǎng)景。本發(fā)明還可以在機(jī)器不斷增加的場(chǎng)景下,依舊可以滿足高效的機(jī)器流轉(zhuǎn)、交付、滿足業(yè)務(wù)使用,可以不斷的橫向擴(kuò)展,可以進(jìn)行快速的交付,例如,擴(kuò)容可以在分鐘級(jí)、重裝或重啟在小時(shí)級(jí),維修在天級(jí)別,并且可以滿足幾十萬(wàn)臺(tái)機(jī)器的高性能運(yùn)轉(zhuǎn)。
進(jìn)一步地,本發(fā)明對(duì)于存儲(chǔ)型服務(wù)進(jìn)行熱插拔維修硬盤,并且有一套可控的單盤中控服務(wù)用來保證下盤的數(shù)量,保證安全和快速交付維修及遷移。
此外,本發(fā)明通過加快機(jī)器維修和時(shí)效性,提高機(jī)器的在線利用率,從中可以進(jìn)行節(jié)約機(jī)器的資源,如:之前如果故障率在2%,在線率98%,總機(jī)器是10W,那么將會(huì)有2000臺(tái)機(jī)器持續(xù)不可用,所以需要有2000臺(tái)做冗余備份;如果增加維修效率后機(jī)器故障率可以降低到1%,那么在線率可以達(dá)到99%,那么機(jī)器持續(xù)故障數(shù)就可以減少1000,那么就可以減少1000臺(tái)機(jī)器,以此類推;還有故障可以體現(xiàn)發(fā)現(xiàn)可以減少機(jī)器服務(wù)有損,提前預(yù)知提前處理也可以避免機(jī)器死機(jī)、硬件故障造成機(jī)器不可用的流量有損。
本發(fā)明可以幫助集群操作系統(tǒng)支撐底層機(jī)器的穩(wěn)定性,可以實(shí)時(shí)的發(fā)現(xiàn)故障、遷移服務(wù)、高效的交付機(jī)器,實(shí)現(xiàn)了真正的自動(dòng)化機(jī)器管理機(jī)器人,實(shí)現(xiàn)了無人工介入,并且故障種類精確性提升很多,如增加:軟故障、死機(jī)等,保證了服務(wù)更加穩(wěn)定,可以提前預(yù)知問題送修,保證服務(wù)穩(wěn)定性,高效交付可以實(shí)現(xiàn)分鐘級(jí)上線機(jī)器、小時(shí)級(jí)擴(kuò)容機(jī)器(包括重裝)、小時(shí)級(jí)修復(fù)軟故障交付機(jī)器,天級(jí)別交付硬件故障機(jī)的高效自動(dòng)化系統(tǒng)。
附圖說明
通過閱讀參照以下附圖所作的對(duì)非限制性實(shí)施例所作的詳細(xì)描述,本發(fā)明的其它特征、目的和優(yōu)點(diǎn)將會(huì)變得更明顯:
圖1示出根據(jù)本發(fā)明一個(gè)方面的一種用于超大規(guī)模機(jī)器自動(dòng)化維修的裝置的結(jié)構(gòu)示意圖;
圖2示出根據(jù)本發(fā)明一個(gè)優(yōu)選實(shí)施例的一種用于超大規(guī)模機(jī)器自動(dòng)化維修的裝置的結(jié)構(gòu)示意圖;
圖3示出根據(jù)本發(fā)明另一個(gè)優(yōu)選實(shí)施例的一種用于超大規(guī)模機(jī)器自動(dòng)化維修的裝置的結(jié)構(gòu)示意圖;
圖4示出根據(jù)本發(fā)明另一個(gè)方面的一種用于超大規(guī)模機(jī)器自動(dòng)化維修的方法的流程示意圖。
附圖中相同或相似的附圖標(biāo)記代表相同或相似的部件。
具體實(shí)施方式
在更加詳細(xì)地討論示例性實(shí)施例之前應(yīng)當(dāng)提到的是,一些示例性實(shí)施例被描述成作為流程圖描繪的處理或方法。雖然流程圖將各項(xiàng)操作描述成順序的處理,但是其中的許多操作可以被并行地、并發(fā)地或者同時(shí)實(shí)施。此外,各項(xiàng)操作的順序可以被重新安排。當(dāng)其操作完成時(shí)所述處理可以被終止,但是還可以具有未包括在附圖中的附加步驟。所述處理可以對(duì)應(yīng)于方法、函數(shù)、規(guī)程、子例程、子程序等等。
在上下文中所稱“計(jì)算機(jī)設(shè)備”,也稱為“電腦”,是指可以通過運(yùn)行預(yù)定程序或指令來執(zhí)行數(shù)值計(jì)算和/或邏輯計(jì)算等預(yù)定處理過程的智能電子設(shè)備,其可以包括處理器與存儲(chǔ)器,由處理器執(zhí)行在存儲(chǔ)器中預(yù)存的存續(xù)指令來執(zhí)行預(yù)定處理過程,或是由ASIC、FPGA、DSP等硬件執(zhí)行預(yù)定處理過程,或是由上述二者組合來實(shí)現(xiàn)。計(jì)算機(jī)設(shè)備包括但不限于服務(wù)器、個(gè)人電腦、筆記本電腦、平板電腦等。
所述計(jì)算機(jī)設(shè)備包括用戶設(shè)備與網(wǎng)絡(luò)設(shè)備。其中,所述用戶設(shè)備包括但不限于個(gè)人電腦、筆記本電腦、平板電腦等;所述網(wǎng)絡(luò)設(shè)備包括但不限于單個(gè)網(wǎng)絡(luò)服務(wù)器、多個(gè)網(wǎng)絡(luò)服務(wù)器組成的服務(wù)器組或基于云計(jì)算(Cloud Computing)的由大量計(jì)算機(jī)或網(wǎng)絡(luò)服務(wù)器構(gòu)成的云,其中,云計(jì)算是分布式計(jì)算的一種,由一群松散耦合的計(jì)算機(jī)集組成的一個(gè)超級(jí)虛擬計(jì)算機(jī)。其中,所述計(jì)算機(jī)設(shè)備可單獨(dú)運(yùn)行來實(shí)現(xiàn)本發(fā)明,也可接入網(wǎng)絡(luò)并通過與網(wǎng)絡(luò)中的其他計(jì)算機(jī)設(shè)備的交互操作來實(shí)現(xiàn)本發(fā)明。其中,所述計(jì)算機(jī)設(shè)備所處的網(wǎng)絡(luò)包括但不限于互聯(lián)網(wǎng)、廣域網(wǎng)、城域網(wǎng)、局域網(wǎng)、VPN網(wǎng)絡(luò)等。
需要說明的是,所述用戶設(shè)備、網(wǎng)絡(luò)設(shè)備和網(wǎng)絡(luò)等僅為舉例,其他現(xiàn)有的或今后可能出現(xiàn)的計(jì)算機(jī)設(shè)備或網(wǎng)絡(luò)如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并以引用方式包含于此。
后面所討論的方法(其中一些通過流程圖示出)可以通過硬件、軟件、固件、中間件、微代碼、硬件描述語(yǔ)言或者其任意組合來實(shí)施。當(dāng)用軟件、固件、中間件或微代碼來實(shí)施時(shí),用以實(shí)施必要任務(wù)的程序代碼或代碼段可以被存儲(chǔ)在機(jī)器或計(jì)算機(jī)可讀介質(zhì)(比如存儲(chǔ)介質(zhì))中。(一個(gè)或多個(gè))處理器可以實(shí)施必要的任務(wù)。
這里所公開的具體結(jié)構(gòu)和功能細(xì)節(jié)僅僅是代表性的,并且是用于描述本發(fā)明的示例性實(shí)施例的目的。但是本發(fā)明可以通過許多替換形式來具體實(shí)現(xiàn),并且不應(yīng)當(dāng)被解釋成僅僅受限于這里所闡述的實(shí)施例。
應(yīng)當(dāng)理解的是,雖然在這里可能使用了術(shù)語(yǔ)“第一”、“第二”等等來描述各個(gè)單元,但是這些單元不應(yīng)當(dāng)受這些術(shù)語(yǔ)限制。使用這些術(shù)語(yǔ)僅僅是為了將一個(gè)單元與另一個(gè)單元進(jìn)行區(qū)分。舉例來說,在不背離示例性實(shí)施例的范圍的情況下,第一單元可以被稱為第二單元,并且類似地第二單元可以被稱為第一單元。這里所使用的術(shù)語(yǔ)“和/或”包括其中一個(gè)或更多所列出的相關(guān)聯(lián)項(xiàng)目的任意和所有組合。
應(yīng)當(dāng)理解的是,當(dāng)一個(gè)單元被稱為“連接”或“耦合”到另一單元時(shí),其可以直接連接或耦合到所述另一單元,或者可以存在中間單元。與此相對(duì),當(dāng)一個(gè)單元被稱為“直接連接”或“直接耦合”到另一單元時(shí),則不存在中間單元。應(yīng)當(dāng)按照類似的方式來解釋被用于描述單元之間的關(guān)系的其他詞語(yǔ)(例如“處于...之間”相比于“直接處于...之間”,“與...鄰近”相比于“與...直接鄰近”等等)。
這里所使用的術(shù)語(yǔ)僅僅是為了描述具體實(shí)施例而不意圖限制示例性實(shí)施例。除非上下文明確地另有所指,否則這里所使用的單數(shù)形式“一個(gè)”、“一項(xiàng)”還意圖包括復(fù)數(shù)。還應(yīng)當(dāng)理解的是,這里所使用的術(shù)語(yǔ)“包括”和/或“包含”規(guī)定所陳述的特征、整數(shù)、步驟、操作、單元和/或組件的存在,而不排除存在或添加一個(gè)或更多其他特征、整數(shù)、步驟、操作、單元、組件和/或其組合。
還應(yīng)當(dāng)提到的是,在一些替換實(shí)現(xiàn)方式中,所提到的功能/動(dòng)作可以按照不同于附圖中標(biāo)示的順序發(fā)生。舉例來說,取決于所涉及的功能/動(dòng)作,相繼示出的兩幅圖實(shí)際上可以基本上同時(shí)執(zhí)行或者有時(shí)可以按照相反的順序來執(zhí)行。
下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步詳細(xì)描述。
圖1示出根據(jù)本發(fā)明一個(gè)方面的一種用于超大規(guī)模機(jī)器自動(dòng)化維修的裝置的結(jié)構(gòu)示意圖。
裝置1包括故障收集裝置101、故障分析裝置102和故障維修裝置103。
其中,故障收集裝置101收集超大規(guī)模機(jī)器中的軟和/或硬件故障。
具體地,故障收集裝置101例如直接自預(yù)定位置,如故障數(shù)據(jù)庫(kù)中或其他第三方設(shè)備中,獲取該超大規(guī)模機(jī)器的軟件故障和/或硬件故障;或者,故障收集裝置101分別通過對(duì)組成該超大規(guī)模機(jī)器的各個(gè)機(jī)器的檢測(cè),如分別對(duì)各個(gè)機(jī)器進(jìn)行軟件檢測(cè)、硬件檢測(cè),檢測(cè)其中的CPU、磁盤、內(nèi)存等是否完好,或檢測(cè)磁盤是否已滿、是否掉盤、文件系統(tǒng)是否故障等,從而收集該超大規(guī)模機(jī)器中的軟件故障和/或硬件故障。
故障分析裝置102對(duì)所述軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù)。
具體地,故障分析裝置102根據(jù)該故障收集裝置101所收集的軟件故障和/或硬件故障,對(duì)這些故障進(jìn)行故障分析,如對(duì)各個(gè)機(jī)器是否死機(jī)進(jìn)行分析,是否是無心跳、是否無回報(bào)信息等,從而獲得對(duì)應(yīng)的故障數(shù)據(jù)。
故障維修裝置103基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,其中,對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤。
具體地,故障維修裝置103根據(jù)故障分析裝置102分析所獲得的故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,如對(duì)機(jī)器的死機(jī)狀態(tài)、故障狀態(tài)、正常服務(wù)狀態(tài)等各個(gè)狀態(tài)進(jìn)行流轉(zhuǎn),從而對(duì)該超大規(guī)模機(jī)器進(jìn)行各個(gè)流程處理的跳轉(zhuǎn),如進(jìn)行故障、維修、交付等流程的跳轉(zhuǎn)。其中,對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,由于有些故障需要將該故障所在的機(jī)器遷移走才能對(duì)剩余的機(jī)器進(jìn)行維修,因此,故障維修裝置103將這些需要遷移的數(shù)據(jù)對(duì)應(yīng)的機(jī)器進(jìn)行遷移,并對(duì)該遷移走的機(jī)器進(jìn)行整機(jī)維修。而對(duì)于存儲(chǔ)型服務(wù),由于其對(duì)于冗余度和時(shí)效性要求很高,如果將存儲(chǔ)型服務(wù)對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,則會(huì)存在冗余度和時(shí)效性的問題,因此,故障維修裝置103對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤。
在此,維修狀態(tài)機(jī)主要是將機(jī)器的周期進(jìn)行流程處理的跳轉(zhuǎn),如故障、維修、交付等。其中,維修狀態(tài)機(jī)維護(hù)了很多狀態(tài),如:ERROR、DEAD、DECOMMITTING、DECOMMITTED、OS_INSTALL(REBOOT)、BURNING、HANDOVER_CHECK、ABNORMAL、COMMITTING、ACTIVE等多種狀態(tài),上述各種狀態(tài)用來表示機(jī)器各種時(shí)期的狀態(tài),具體如下:
ERROR|DEAD:當(dāng)機(jī)器出現(xiàn)故障時(shí),自故障分析裝置102獲取到故障則跳轉(zhuǎn)為ERROR,死機(jī)則跳轉(zhuǎn)為DEAD;
DECOMMITTING和DECOMMITTED:主要是服務(wù)遷移的過程,保證服務(wù)安全和故障發(fā)單,如重啟、重裝、維修等;
OS_INSTALL(REBOOT):是進(jìn)行重裝或者重啟的流程狀態(tài);
BURNING:是重裝或重啟后恢復(fù)環(huán)境的過程,一般稱為初始化環(huán)境;
HANDOVER_CHECK和ABNORMAL:HANDOVER_CHECK主要是檢測(cè)維修好的機(jī)器是否還存在故障的一種二次檢測(cè)行為,如果沒有修好則繼續(xù)重裝或重啟,ABNORMAL則是指如果超過預(yù)定次數(shù)后仍沒有修好進(jìn)入人工處理環(huán)節(jié);
COMMITTING和ACTIVE:COMMITTING是交付檢測(cè)沒問題后遷移服務(wù)上線并且把機(jī)器置為正常ACTIVE。
在此,故障維修裝置103通過維修狀態(tài)機(jī)控制各個(gè)流程的狀態(tài)進(jìn)行不同階段處理,并且通過狀態(tài)描述來控制各種狀態(tài)的切換、安全保護(hù)閾值、重試次數(shù)等內(nèi)容,狀態(tài)描述主要是通用化處理,可以適用各種業(yè)務(wù)的場(chǎng)景,是一套狀態(tài)機(jī)適配器,以下示出一個(gè)狀態(tài)描述的例子:
其中,state描述的就是該維修狀態(tài)機(jī)的狀態(tài),如ACTIVE是正常服務(wù)狀態(tài),其中-action是該狀態(tài)處理流程的操作,如check_active就是檢測(cè)機(jī)器是否是正常的;
dst_state是根據(jù)action中的不同返回值狀態(tài)跳轉(zhuǎn)不同的目標(biāo)state來控制該維修狀態(tài)機(jī)的流轉(zhuǎn),如死機(jī)則跳轉(zhuǎn)到DEAD,故障則跳轉(zhuǎn)到ERROR。
優(yōu)選地,所述故障維修裝置103基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),結(jié)合配置信息所對(duì)應(yīng)的閾值,對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
例如,在上述狀態(tài)描述的例子中,thresholds用來控制閾值,其中,對(duì)于decommitted發(fā)單維修進(jìn)行控制,throughput:100表示發(fā)單值控制不超過100臺(tái)機(jī)器,如果超過100則不再進(jìn)行狀態(tài)跳轉(zhuǎn),以此來保證服務(wù)的安全性。相類似地,故障維修裝置103基于故障數(shù)據(jù),采用維修狀態(tài)機(jī),還可以結(jié)合其他配置信息所對(duì)應(yīng)的閾值,對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
本領(lǐng)域技術(shù)人員應(yīng)能理解,上述閾值及其取值僅為舉例,其他現(xiàn)有或今后可能出現(xiàn)的閾值及其取值,如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并在此以引用的方式包含于此。
優(yōu)選地,所述故障維修裝置103采用通用的遷移服務(wù)平臺(tái)對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修;對(duì)于遷移后剩余的機(jī)器,繼續(xù)采用所述維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)進(jìn)行自動(dòng)化維修。
具體地,由于有些故障需要將該故障所在的機(jī)器遷移走才能對(duì)剩余的機(jī)器進(jìn)行維修,因此,故障維修裝置103采用通用的遷移服務(wù)平臺(tái),將這些需要遷移的數(shù)據(jù)對(duì)應(yīng)的機(jī)器進(jìn)行遷移,并對(duì)該遷移走的機(jī)器進(jìn)行整機(jī)維修。在此,采用通用的遷移服務(wù)平臺(tái),避免了不同業(yè)務(wù)中每個(gè)業(yè)務(wù)都需要維護(hù)獨(dú)立一套遷移服務(wù),通用化的遷移服務(wù)平臺(tái)可以指定統(tǒng)一規(guī)則、統(tǒng)一策略便于接入和維護(hù),這對(duì)于超大規(guī)模集群系統(tǒng)是極其需要的。隨后,故障維修裝置103再對(duì)于遷移后剩余的機(jī)器,繼續(xù)采用上述維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn),完成該超大規(guī)模機(jī)器的自動(dòng)化維修。
在此,故障維修裝置103在遷移服務(wù)后才進(jìn)行維修流程,從而保證服務(wù)的穩(wěn)定性。
優(yōu)選地,所述故障維修裝置103對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器,采用單盤中控決策是否下盤,以對(duì)所述機(jī)器進(jìn)行在線修盤。
具體地,對(duì)于存儲(chǔ)型服務(wù),由于其對(duì)于冗余度和時(shí)效性要求很高,如果將存儲(chǔ)型服務(wù)對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,則會(huì)存在冗余度和時(shí)效性的問題,因此,故障維修裝置103對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤,其中,故障維修裝置103進(jìn)行在線下盤,并通過單盤中控控制下盤閾值,避免大量下盤造成數(shù)據(jù)丟失,從而保證服務(wù)穩(wěn)定性。隨后,然后故障維修裝置103再通過前述維修狀態(tài)機(jī)進(jìn)行在線物理維修。
在此,故障維修裝置103通過在線檢測(cè)故障盤和上下盤修盤服務(wù),大大提高了存儲(chǔ)型服務(wù)的在線率和冗余度,并且通過單盤中控控制磁盤下盤,避免大量下盤造成數(shù)據(jù)丟失,從而保證服務(wù)穩(wěn)定性。
在此,裝置1收集超大規(guī)模機(jī)器中的軟和/或硬件故障;對(duì)所述軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù);基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,其中,對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤。對(duì)于超大規(guī)模(萬(wàn)臺(tái)、幾十萬(wàn)臺(tái))機(jī)器,提供了一個(gè)完整的自動(dòng)化維修系統(tǒng),可以滿足諸如故障檢測(cè)、服務(wù)遷移、環(huán)境部署、機(jī)器維修狀態(tài)流轉(zhuǎn)、快速交付等,在成本方面,節(jié)約了運(yùn)維人力、通過提高流轉(zhuǎn)效率節(jié)約機(jī)器;在全自動(dòng)化方面,檢測(cè)、維修、服務(wù)遷移和部署實(shí)現(xiàn)全部自動(dòng)化無需人工接入;在效率方面,機(jī)器交付效率高,可以實(shí)現(xiàn)小時(shí)級(jí)和分鐘級(jí)交付。
進(jìn)一步地,裝置1可以滿足多種場(chǎng)景的系統(tǒng)、環(huán)境支持,還可以滿足在離線混部場(chǎng)景的業(yè)務(wù)在線修機(jī)器和自動(dòng)化維修機(jī)器的場(chǎng)景。還可以在機(jī)器不斷增加的場(chǎng)景下,依舊可以滿足高效的機(jī)器流轉(zhuǎn)、交付、滿足業(yè)務(wù)使用,可以不斷的橫向擴(kuò)展,可以進(jìn)行快速的交付,例如,擴(kuò)容可以在分鐘級(jí)、重裝或重啟在小時(shí)級(jí),維修在天級(jí)別,并且可以滿足幾十萬(wàn)臺(tái)機(jī)器的高性能運(yùn)轉(zhuǎn)。
優(yōu)選地,所述故障收集裝置101基于對(duì)所述超大規(guī)模機(jī)器的軟件檢測(cè)和/或硬件檢測(cè),獲得所述軟和/或硬件故障,并將所述軟和/或硬件故障上報(bào)至主服務(wù)端(master端);其中,所述故障分析裝置102對(duì)所述主服務(wù)端中存儲(chǔ)的軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù)。
具體地,故障收集裝置101基于對(duì)超大規(guī)模機(jī)器的軟件檢測(cè)和/或硬件檢測(cè),獲得對(duì)應(yīng)的軟件故障和/或硬件故障,例如,故障收集裝置101依賴于自研的故障檢測(cè)器(HAS),對(duì)該超大規(guī)模機(jī)器進(jìn)行硬件檢測(cè),檢測(cè)如CPU、磁盤、內(nèi)存等硬件故障;或者,故障收集裝置101對(duì)該超大規(guī)模機(jī)器進(jìn)行軟件檢測(cè),檢測(cè)出包括磁盤滿、inode(文件索引錯(cuò)誤)、掉盤、文件系統(tǒng)故障等嚴(yán)重影響服務(wù)的系統(tǒng)故障,在此,故障收集裝置101可以對(duì)該超大規(guī)模機(jī)器既進(jìn)行軟件檢測(cè),又進(jìn)行硬件檢測(cè),硬件+軟件檢測(cè)更加準(zhǔn)確地保證了系統(tǒng)的穩(wěn)定性。隨后,該故障收集裝置101將檢測(cè)所獲得軟件故障和/或硬件故障,上報(bào)至master端,例如,對(duì)該超大規(guī)模機(jī)器中各個(gè)機(jī)器所分別檢測(cè)得到的軟件故障和/或硬件故障,進(jìn)行統(tǒng)一匯總,再上報(bào)至master端,在該master端進(jìn)行存儲(chǔ)。
接著,故障分析裝置102自該master端獲取其中所存儲(chǔ)的軟和/或硬件故障,對(duì)這些故障進(jìn)行故障分析,如對(duì)各個(gè)機(jī)器是否死機(jī)進(jìn)行分析,是否是無心跳、是否無回報(bào)信息等,從而獲得對(duì)應(yīng)的故障數(shù)據(jù)。
本領(lǐng)域技術(shù)人員應(yīng)能理解,上述收集超大規(guī)模機(jī)器中的軟和/或硬件故障的方式僅為舉例,其他現(xiàn)有或今后可能出現(xiàn)的收集超大規(guī)模機(jī)器中的軟和/或硬件故障的方式,如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并在此以引用的方式包含于此。
優(yōu)選地,該裝置1還包括更新裝置(未示出)。該更新裝置將基于對(duì)所述軟和/或硬件故障進(jìn)行故障分析所獲得的故障數(shù)據(jù)作為故障源,建立或更新對(duì)應(yīng)的數(shù)據(jù)庫(kù);其中,所述故障維修裝置103基于所述數(shù)據(jù)庫(kù)中的故障源,采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
具體地,更新裝置將故障分析裝置102基于對(duì)所述軟和/或硬件故障進(jìn)行故障分析所獲得的故障數(shù)據(jù)作為故障源,例如,故障分析裝置102對(duì)各個(gè)機(jī)器是否死機(jī)進(jìn)行分析,是否是無心跳、是否無回報(bào)信息等進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù),隨后,更新裝置將這些故障數(shù)據(jù)作為故障源,并將該故障源存入對(duì)應(yīng)的數(shù)據(jù)庫(kù)中,以對(duì)該數(shù)據(jù)庫(kù)進(jìn)行建立或更新;接著,故障維修裝置103自該數(shù)據(jù)庫(kù)中獲取故障源,例如,通過一次或多次調(diào)用對(duì)應(yīng)的應(yīng)用程序接口(API),獲取該數(shù)據(jù)庫(kù)中的故障源,并基于該數(shù)據(jù)庫(kù)中的故障源,采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
在此,該數(shù)據(jù)庫(kù)中存儲(chǔ)有各種故障源,該數(shù)據(jù)庫(kù)可以位于該裝置1中,也可以位于與該裝置1通過網(wǎng)絡(luò)相連接的第三方設(shè)備中,更新裝置通過網(wǎng)絡(luò)與該數(shù)據(jù)庫(kù)相聯(lián)系,以將故障源存入該數(shù)據(jù)庫(kù)中,故障維修裝置103通過網(wǎng)絡(luò)與該數(shù)據(jù)庫(kù)相聯(lián)系,以從該數(shù)據(jù)庫(kù)中獲取故障源。
優(yōu)選地,所述故障分析裝置102還對(duì)經(jīng)故障分析所獲得的故障數(shù)據(jù)進(jìn)行分類,獲得分類后的故障數(shù)據(jù);其中,所述故障維修裝置103基于所述分類后的故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
具體地,故障分析裝置102針對(duì)故障收集裝置101所收集的軟件故障和/或硬件故障進(jìn)行故障分析,并對(duì)經(jīng)故障分析后獲得的故障數(shù)據(jù)進(jìn)行分類,例如可以分為hw(硬件故障)、sw(軟件故障)、ssh.lost(死機(jī))、agent.lost(無心跳)、report-no-exists(無回報(bào)信息)等,獲得分類后的故障數(shù)據(jù);或進(jìn)一步地,故障分析裝置102針對(duì)各個(gè)故障數(shù)據(jù),確定其對(duì)應(yīng)的維修方式,并基于此進(jìn)行分類,例如,若故障數(shù)據(jù)為死機(jī),則其對(duì)應(yīng)的維修方式為重啟;若故障數(shù)據(jù)為無心跳,則其對(duì)應(yīng)的維修方式為重啟或重裝;若故障數(shù)據(jù)為軟件故障,如磁盤滿,則其對(duì)應(yīng)的維修方式為重裝;若故障數(shù)據(jù)為磁盤即將損壞或已損壞,則其對(duì)應(yīng)的維修方式為在線修盤等;故障分析裝置102隨后再基于各個(gè)故障數(shù)據(jù)所對(duì)應(yīng)的維修方式對(duì)其進(jìn)行分類,進(jìn)一步地,故障分析裝置102例如還可以對(duì)各個(gè)故障數(shù)據(jù)以標(biāo)簽的形式標(biāo)注其對(duì)應(yīng)的維修方式。在此,故障數(shù)據(jù)及其對(duì)應(yīng)的維修方式僅為舉例,本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際操作確定故障數(shù)據(jù)對(duì)應(yīng)的維修方式,且其他現(xiàn)有或今后可能出現(xiàn)的故障數(shù)據(jù)及其對(duì)應(yīng)的維修方式,如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并在此以引用的方式包含于此。
隨后,故障維修裝置103基于該分類后的故障數(shù)據(jù),采用維修狀態(tài)機(jī),針對(duì)不同分類的故障數(shù)據(jù),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,例如,對(duì)于需要重啟類的故障數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行重啟;對(duì)于需要重裝類的故障數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行重裝,如先進(jìn)行服務(wù)遷移再進(jìn)行重裝;對(duì)于硬件故障所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修;對(duì)于磁盤類的故障,如磁盤即將損壞或已損壞,則進(jìn)行在線修盤等。
本領(lǐng)域技術(shù)人員應(yīng)能理解,上述對(duì)故障進(jìn)行分析及分類的方式僅為舉例,其他現(xiàn)有或今后可能出現(xiàn)的對(duì)故障進(jìn)行分析或分類的方式,如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并在此以引用的方式包含于此。
一個(gè)優(yōu)選的實(shí)施例如下所述:
該自動(dòng)化維修系統(tǒng)主要由幾個(gè)系統(tǒng)服務(wù)組成:故障分析系統(tǒng)、維修狀態(tài)機(jī)、通用遷移服務(wù)、在線修盤服務(wù)等重要服務(wù)組成。
其中,故障分析系統(tǒng)由兩部分組成:collect(故障收集器,error-report)和parse service(故障分析器,parse-report),具體架構(gòu)圖見圖2所示。
Error-report是一個(gè)故障收集器,如前所述的故障收集裝置101,主要分為硬件故障收集和軟件故障收集,然后統(tǒng)一匯總將原始信息上報(bào)到bios-master端(機(jī)器環(huán)境管理服務(wù)),其中,硬件故障收集器依賴于自研的故障檢測(cè)器(HAS),可以檢測(cè)如CPU、磁盤、內(nèi)存等硬件故障;軟故障收集器例如是系統(tǒng)自研的,其檢測(cè)如磁盤滿、inode(文件索引錯(cuò)誤)、掉盤、文件系統(tǒng)故障等嚴(yán)重影響服務(wù)的系統(tǒng)故障;硬件+軟件檢測(cè)更加準(zhǔn)確的保證了系統(tǒng)的穩(wěn)定性。
Parse-report是一個(gè)故障分析器,主要是處理error-report收集的源數(shù)據(jù),如前所述的故障分析裝置102,然后在服務(wù)端進(jìn)行分析,包括對(duì)于故障的分類、分級(jí)等處理,并且還對(duì)機(jī)器是否死機(jī)進(jìn)行分析,最終將分析好的故障數(shù)據(jù)作為故障源持久化到數(shù)據(jù)庫(kù)便于查詢和維修狀態(tài)機(jī)的使用。
維修狀態(tài)機(jī)主要起到兩個(gè)重要作用,一個(gè)是保證狀態(tài)的流轉(zhuǎn)保證各種不同狀態(tài)做相應(yīng)的處理,另一個(gè)是通過通用配置描述進(jìn)行閾值控制,跳轉(zhuǎn)等內(nèi)容。其中,狀態(tài)機(jī)狀態(tài)流轉(zhuǎn)主要是將機(jī)器的周期進(jìn)行流程處理的跳轉(zhuǎn),如故障、維修、交付等,詳細(xì)可見圖3。例如,獲取故障(ERROR)->遷移服務(wù)(DECOMMITTING,DECOMMITTED)->維修(機(jī)器維修+重啟+在線修盤)->交付->交付檢測(cè);通過故障源,如自前述故障分析器或?qū)?yīng)數(shù)據(jù)庫(kù)中獲取故障,然后根據(jù)上面狀態(tài)機(jī)個(gè)各種狀態(tài)流轉(zhuǎn)最終完成機(jī)器自動(dòng)化維修。該維修狀態(tài)機(jī)具體維護(hù)的過程與狀態(tài)與前述在故障維修裝置103中記載的相類似,故此處不再贅述,并通過引用的方式包含于此。
其中,服務(wù)遷移器(callback)采用通用的遷移服務(wù)平臺(tái),在發(fā)現(xiàn)故障后,通知業(yè)務(wù)系統(tǒng)遷移服務(wù)進(jìn)行決策,遷移服務(wù)后才可以進(jìn)行維修流程保證服務(wù)的穩(wěn)定性,避免了不同業(yè)務(wù)每個(gè)業(yè)務(wù)都需要維護(hù)獨(dú)立一套遷移服務(wù),通用化平臺(tái)可以指定統(tǒng)一規(guī)則、統(tǒng)一策略便于接入和維護(hù)。
在線修盤服務(wù)通過前述故障分析器或?qū)?yīng)數(shù)據(jù)庫(kù)收集故障,然后觸發(fā)在線下盤,通過單盤中控控制下盤閾值保證服務(wù)穩(wěn)定性,然后通過狀態(tài)機(jī)進(jìn)行在線物理維修,大大提高了存儲(chǔ)服務(wù)的在線率和冗余度,并且采用中控服務(wù)控制磁盤下盤,避免造成大量下盤造成數(shù)據(jù)丟失。
圖4示出根據(jù)本發(fā)明另一個(gè)方面的一種用于超大規(guī)模機(jī)器自動(dòng)化維修的方法的流程示意圖。
在步驟S401中,裝置1收集超大規(guī)模機(jī)器中的軟和/或硬件故障。
具體地,在步驟S401中,裝置1例如直接自預(yù)定位置,如故障數(shù)據(jù)庫(kù)中或其他第三方設(shè)備中,獲取該超大規(guī)模機(jī)器的軟件故障和/或硬件故障;或者,在步驟S401中,裝置1分別通過對(duì)組成該超大規(guī)模機(jī)器的各個(gè)機(jī)器的檢測(cè),如分別對(duì)各個(gè)機(jī)器進(jìn)行軟件檢測(cè)、硬件檢測(cè),檢測(cè)其中的CPU、磁盤、內(nèi)存等是否完好,或檢測(cè)磁盤是否已滿、是否掉盤、文件系統(tǒng)是否故障等,從而收集該超大規(guī)模機(jī)器中的軟件故障和/或硬件故障。
在步驟S402中,裝置1對(duì)所述軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù)。
具體地,在步驟S402中,裝置1根據(jù)在步驟S401中所收集的軟件故障和/或硬件故障,對(duì)這些故障進(jìn)行故障分析,如對(duì)各個(gè)機(jī)器是否死機(jī)進(jìn)行分析,是否是無心跳、是否無回報(bào)信息等,從而獲得對(duì)應(yīng)的故障數(shù)據(jù)。
在步驟S403中,裝置1基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,其中,對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤。
具體地,在步驟S403中,裝置1根據(jù)在步驟S402中分析所獲得的故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,如對(duì)機(jī)器的死機(jī)狀態(tài)、故障狀態(tài)、正常服務(wù)狀態(tài)等各個(gè)狀態(tài)進(jìn)行流轉(zhuǎn),從而對(duì)該超大規(guī)模機(jī)器進(jìn)行各個(gè)流程處理的跳轉(zhuǎn),如進(jìn)行故障、維修、交付等流程的跳轉(zhuǎn)。其中,對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,由于有些故障需要將該故障所在的機(jī)器遷移走才能對(duì)剩余的機(jī)器進(jìn)行維修,因此,在步驟S403中,裝置1將這些需要遷移的數(shù)據(jù)對(duì)應(yīng)的機(jī)器進(jìn)行遷移,并對(duì)該遷移走的機(jī)器進(jìn)行整機(jī)維修。而對(duì)于存儲(chǔ)型服務(wù),由于其對(duì)于冗余度和時(shí)效性要求很高,如果將存儲(chǔ)型服務(wù)對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,則會(huì)存在冗余度和時(shí)效性的問題,因此,在步驟S403中,裝置1對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤。
在此,維修狀態(tài)機(jī)主要是將機(jī)器的周期進(jìn)行流程處理的跳轉(zhuǎn),如故障、維修、交付等。其中,維修狀態(tài)機(jī)維護(hù)了很多狀態(tài),如:ERROR、DEAD、DECOMMITTING、DECOMMITTED、OS_INSTALL(REBOOT)、BURNING、HANDOVER_CHECK、ABNORMAL、COMMITTING、ACTIVE等多種狀態(tài),上述各種狀態(tài)用來表示機(jī)器各種時(shí)期的狀態(tài),具體如下:
ERROR|DEAD:當(dāng)機(jī)器出現(xiàn)故障時(shí),自步驟S402獲取到故障則跳轉(zhuǎn)為ERROR,死機(jī)則跳轉(zhuǎn)為DEAD;
DECOMMITTING和DECOMMITTED:主要是服務(wù)遷移的過程,保證服務(wù)安全和故障發(fā)單,如重啟、重裝、維修等;
OS_INSTALL(REBOOT):是進(jìn)行重裝或者重啟的流程狀態(tài);
BURNING:是重裝或重啟后恢復(fù)環(huán)境的過程,一般稱為初始化環(huán)境;
HANDOVER_CHECK和ABNORMAL:HANDOVER_CHECK主要是檢測(cè)維修好的機(jī)器是否還存在故障的一種二次檢測(cè)行為,如果沒有修好則繼續(xù)重裝或重啟,ABNORMAL則是指如果超過預(yù)定次數(shù)后仍沒有修好進(jìn)入人工處理環(huán)節(jié);
COMMITTING和ACTIVE:COMMITTING是交付檢測(cè)沒問題后遷移服務(wù)上線并且把機(jī)器置為正常ACTIVE。
在此,在步驟S403中,裝置1通過維修狀態(tài)機(jī)控制各個(gè)流程的狀態(tài)進(jìn)行不同階段處理,并且通過狀態(tài)描述來控制各種狀態(tài)的切換、安全保護(hù)閾值、重試次數(shù)等內(nèi)容,狀態(tài)描述主要是通用化處理,可以適用各種業(yè)務(wù)的場(chǎng)景,是一套狀態(tài)機(jī)適配器,以下示出一個(gè)狀態(tài)描述的例子:
其中,state描述的就是該維修狀態(tài)機(jī)的狀態(tài),如ACTIVE是正常服務(wù)狀態(tài),其中-action是該狀態(tài)處理流程的操作,如check_active就是檢測(cè)機(jī)器是否是正常的;
dst_state是根據(jù)action中的不同返回值狀態(tài)跳轉(zhuǎn)不同的目標(biāo)state來控制該維修狀態(tài)機(jī)的流轉(zhuǎn),如死機(jī)則跳轉(zhuǎn)到DEAD,故障則跳轉(zhuǎn)到ERROR。
優(yōu)選地,在步驟S403中,裝置1基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),結(jié)合配置信息所對(duì)應(yīng)的閾值,對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
例如,在上述狀態(tài)描述的例子中,thresholds用來控制閾值,其中,對(duì)于decommitted發(fā)單維修進(jìn)行控制,throughput:100表示發(fā)單值控制不超過100臺(tái)機(jī)器,如果超過100則不再進(jìn)行狀態(tài)跳轉(zhuǎn),以此來保證服務(wù)的安全性。相類似地,在步驟S403中,裝置1基于故障數(shù)據(jù),采用維修狀態(tài)機(jī),還可以結(jié)合其他配置信息所對(duì)應(yīng)的閾值,對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
本領(lǐng)域技術(shù)人員應(yīng)能理解,上述閾值及其取值僅為舉例,其他現(xiàn)有或今后可能出現(xiàn)的閾值及其取值,如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并在此以引用的方式包含于此。
優(yōu)選地,在步驟S403中,裝置1采用通用的遷移服務(wù)平臺(tái)對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修;對(duì)于遷移后剩余的機(jī)器,繼續(xù)采用所述維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)進(jìn)行自動(dòng)化維修。
具體地,由于有些故障需要將該故障所在的機(jī)器遷移走才能對(duì)剩余的機(jī)器進(jìn)行維修,因此,在步驟S403中,裝置1采用通用的遷移服務(wù)平臺(tái),將這些需要遷移的數(shù)據(jù)對(duì)應(yīng)的機(jī)器進(jìn)行遷移,并對(duì)該遷移走的機(jī)器進(jìn)行整機(jī)維修。在此,采用通用的遷移服務(wù)平臺(tái),避免了不同業(yè)務(wù)中每個(gè)業(yè)務(wù)都需要維護(hù)獨(dú)立一套遷移服務(wù),通用化的遷移服務(wù)平臺(tái)可以指定統(tǒng)一規(guī)則、統(tǒng)一策略便于接入和維護(hù),這對(duì)于超大規(guī)模集群系統(tǒng)是極其需要的。隨后,在步驟S403中,裝置1再對(duì)于遷移后剩余的機(jī)器,繼續(xù)采用上述維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn),完成該超大規(guī)模機(jī)器的自動(dòng)化維修。
在此,在步驟S403中,裝置1在遷移服務(wù)后才進(jìn)行維修流程,從而保證服務(wù)的穩(wěn)定性。
優(yōu)選地,在步驟S403中,裝置1對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器,采用單盤中控決策是否下盤,以對(duì)所述機(jī)器進(jìn)行在線修盤。
具體地,對(duì)于存儲(chǔ)型服務(wù),由于其對(duì)于冗余度和時(shí)效性要求很高,如果將存儲(chǔ)型服務(wù)對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,則會(huì)存在冗余度和時(shí)效性的問題,因此,在步驟S403中,裝置1對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤,其中,在步驟S403中,裝置1進(jìn)行在線下盤,并通過單盤中控控制下盤閾值,避免大量下盤造成數(shù)據(jù)丟失,從而保證服務(wù)穩(wěn)定性。隨后,在步驟S403中,裝置1再通過前述維修狀態(tài)機(jī)進(jìn)行在線物理維修。
在此,在步驟S403中,裝置1通過在線檢測(cè)故障盤和上下盤修盤服務(wù),大大提高了存儲(chǔ)型服務(wù)的在線率和冗余度,并且通過單盤中控控制磁盤下盤,避免大量下盤造成數(shù)據(jù)丟失,從而保證服務(wù)穩(wěn)定性。
在此,裝置1收集超大規(guī)模機(jī)器中的軟和/或硬件故障;對(duì)所述軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù);基于所述故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,其中,對(duì)于需要遷移的數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修,對(duì)于存儲(chǔ)型服務(wù)所對(duì)應(yīng)的機(jī)器進(jìn)行在線修盤。對(duì)于超大規(guī)模(萬(wàn)臺(tái)、幾十萬(wàn)臺(tái))機(jī)器,提供了一個(gè)完整的自動(dòng)化維修系統(tǒng),可以滿足諸如故障檢測(cè)、服務(wù)遷移、環(huán)境部署、機(jī)器維修狀態(tài)流轉(zhuǎn)、快速交付等,在成本方面,節(jié)約了運(yùn)維人力、通過提高流轉(zhuǎn)效率節(jié)約機(jī)器;在全自動(dòng)化方面,檢測(cè)、維修、服務(wù)遷移和部署實(shí)現(xiàn)全部自動(dòng)化無需人工接入;在效率方面,機(jī)器交付效率高,可以實(shí)現(xiàn)小時(shí)級(jí)和分鐘級(jí)交付。
進(jìn)一步地,裝置1可以滿足多種場(chǎng)景的系統(tǒng)、環(huán)境支持,還可以滿足在離線混部場(chǎng)景的業(yè)務(wù)在線修機(jī)器和自動(dòng)化維修機(jī)器的場(chǎng)景。還可以在機(jī)器不斷增加的場(chǎng)景下,依舊可以滿足高效的機(jī)器流轉(zhuǎn)、交付、滿足業(yè)務(wù)使用,可以不斷的橫向擴(kuò)展,可以進(jìn)行快速的交付,例如,擴(kuò)容可以在分鐘級(jí)、重裝或重啟在小時(shí)級(jí),維修在天級(jí)別,并且可以滿足幾十萬(wàn)臺(tái)機(jī)器的高性能運(yùn)轉(zhuǎn)。
優(yōu)選地,在步驟S401中,裝置1基于對(duì)所述超大規(guī)模機(jī)器的軟件檢測(cè)和/或硬件檢測(cè),獲得所述軟和/或硬件故障,并將所述軟和/或硬件故障上報(bào)至主服務(wù)端(master端);其中,在步驟S402中,裝置1對(duì)所述主服務(wù)端中存儲(chǔ)的軟和/或硬件故障進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù)。
具體地,在步驟S401中,裝置1基于對(duì)超大規(guī)模機(jī)器的軟件檢測(cè)和/或硬件檢測(cè),獲得對(duì)應(yīng)的軟件故障和/或硬件故障,例如,在步驟S401中,裝置1依賴于自研的故障檢測(cè)器(HAS),對(duì)該超大規(guī)模機(jī)器進(jìn)行硬件檢測(cè),檢測(cè)如CPU、磁盤、內(nèi)存等硬件故障;或者,在步驟S401中,裝置1對(duì)該超大規(guī)模機(jī)器進(jìn)行軟件檢測(cè),檢測(cè)出包括磁盤滿、inode(文件索引錯(cuò)誤)、掉盤、文件系統(tǒng)故障等嚴(yán)重影響服務(wù)的系統(tǒng)故障,在此,在步驟S401中,裝置1可以對(duì)該超大規(guī)模機(jī)器既進(jìn)行軟件檢測(cè),又進(jìn)行硬件檢測(cè),硬件+軟件檢測(cè)更加準(zhǔn)確地保證了系統(tǒng)的穩(wěn)定性。隨后,在步驟S401中,裝置1將檢測(cè)所獲得軟件故障和/或硬件故障,上報(bào)至master端,例如,對(duì)該超大規(guī)模機(jī)器中各個(gè)機(jī)器所分別檢測(cè)得到的軟件故障和/或硬件故障,進(jìn)行統(tǒng)一匯總,再上報(bào)至master端,在該master端進(jìn)行存儲(chǔ)。
接著,在步驟S402中,裝置1自該master端獲取其中所存儲(chǔ)的軟和/或硬件故障,對(duì)這些故障進(jìn)行故障分析,如對(duì)各個(gè)機(jī)器是否死機(jī)進(jìn)行分析,是否是無心跳、是否無回報(bào)信息等,從而獲得對(duì)應(yīng)的故障數(shù)據(jù)。
本領(lǐng)域技術(shù)人員應(yīng)能理解,上述收集超大規(guī)模機(jī)器中的軟和/或硬件故障的方式僅為舉例,其他現(xiàn)有或今后可能出現(xiàn)的收集超大規(guī)模機(jī)器中的軟和/或硬件故障的方式,如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并在此以引用的方式包含于此。
優(yōu)選地,該方法還包括步驟S404(未示出)。在步驟S404中,裝置1將基于對(duì)所述軟和/或硬件故障進(jìn)行故障分析所獲得的故障數(shù)據(jù)作為故障源,建立或更新對(duì)應(yīng)的數(shù)據(jù)庫(kù);其中,在步驟S403中,裝置1基于所述數(shù)據(jù)庫(kù)中的故障源,采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
具體地,在步驟S404中,裝置1將在步驟S402中基于對(duì)所述軟和/或硬件故障進(jìn)行故障分析所獲得的故障數(shù)據(jù)作為故障源,例如,在步驟S402中,裝置1對(duì)各個(gè)機(jī)器是否死機(jī)進(jìn)行分析,是否是無心跳、是否無回報(bào)信息等進(jìn)行故障分析,獲得對(duì)應(yīng)的故障數(shù)據(jù),隨后,在步驟S404中,裝置1將這些故障數(shù)據(jù)作為故障源,并將該故障源存入對(duì)應(yīng)的數(shù)據(jù)庫(kù)中,以對(duì)該數(shù)據(jù)庫(kù)進(jìn)行建立或更新;接著,在步驟S403中,裝置1自該數(shù)據(jù)庫(kù)中獲取故障源,例如,通過一次或多次調(diào)用對(duì)應(yīng)的應(yīng)用程序接口(API),獲取該數(shù)據(jù)庫(kù)中的故障源,并基于該數(shù)據(jù)庫(kù)中的故障源,采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
在此,該數(shù)據(jù)庫(kù)中存儲(chǔ)有各種故障源,該數(shù)據(jù)庫(kù)可以位于該裝置1中,也可以位于與該裝置1通過網(wǎng)絡(luò)相連接的第三方設(shè)備中,在步驟S404中,裝置1通過網(wǎng)絡(luò)與該數(shù)據(jù)庫(kù)相聯(lián)系,以將故障源存入該數(shù)據(jù)庫(kù)中,在步驟S403中,裝置1通過網(wǎng)絡(luò)與該數(shù)據(jù)庫(kù)相聯(lián)系,以從該數(shù)據(jù)庫(kù)中獲取故障源。
優(yōu)選地,在步驟S402中,裝置1還對(duì)經(jīng)故障分析所獲得的故障數(shù)據(jù)進(jìn)行分類,獲得分類后的故障數(shù)據(jù);其中,在步驟S403中,裝置1基于所述分類后的故障數(shù)據(jù),采用維修狀態(tài)機(jī),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修。
具體地,在步驟S402中,裝置1針對(duì)在步驟S401中所收集的軟件故障和/或硬件故障進(jìn)行故障分析,并對(duì)經(jīng)故障分析后獲得的故障數(shù)據(jù)進(jìn)行分類,例如可以分為hw(硬件故障)、sw(軟件故障)、ssh.lost(死機(jī))、agent.lost(無心跳)、report-no-exists(無回報(bào)信息)等,獲得分類后的故障數(shù)據(jù);或進(jìn)一步地,在步驟S402中,裝置1針對(duì)各個(gè)故障數(shù)據(jù),確定其對(duì)應(yīng)的維修方式,并基于此進(jìn)行分類,例如,若故障數(shù)據(jù)為死機(jī),則其對(duì)應(yīng)的維修方式為重啟;若故障數(shù)據(jù)為無心跳,則其對(duì)應(yīng)的維修方式為重啟或重裝;若故障數(shù)據(jù)為軟件故障,如磁盤滿,則其對(duì)應(yīng)的維修方式為重裝;若故障數(shù)據(jù)為磁盤即將損壞或已損壞,則其對(duì)應(yīng)的維修方式為在線修盤等;裝置1隨后再基于各個(gè)故障數(shù)據(jù)所對(duì)應(yīng)的維修方式對(duì)其進(jìn)行分類,進(jìn)一步地,在步驟S402中,裝置1例如還可以對(duì)各個(gè)故障數(shù)據(jù)以標(biāo)簽的形式標(biāo)注其對(duì)應(yīng)的維修方式。在此,故障數(shù)據(jù)及其對(duì)應(yīng)的維修方式僅為舉例,本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際操作確定故障數(shù)據(jù)對(duì)應(yīng)的維修方式,且其他現(xiàn)有或今后可能出現(xiàn)的故障數(shù)據(jù)及其對(duì)應(yīng)的維修方式,如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并在此以引用的方式包含于此。
隨后,在步驟S403中,裝置1基于該分類后的故障數(shù)據(jù),采用維修狀態(tài)機(jī),針對(duì)不同分類的故障數(shù)據(jù),對(duì)各個(gè)狀態(tài)流轉(zhuǎn)完成對(duì)所述超大規(guī)模機(jī)器的自動(dòng)化維修,例如,對(duì)于需要重啟類的故障數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行重啟;對(duì)于需要重裝類的故障數(shù)據(jù)所對(duì)應(yīng)的機(jī)器進(jìn)行重裝,如先進(jìn)行服務(wù)遷移再進(jìn)行重裝;對(duì)于硬件故障所對(duì)應(yīng)的機(jī)器進(jìn)行遷移整機(jī)維修;對(duì)于磁盤類的故障,如磁盤即將損壞或已損壞,則進(jìn)行在線修盤等。
本領(lǐng)域技術(shù)人員應(yīng)能理解,上述對(duì)故障進(jìn)行分析及分類的方式僅為舉例,其他現(xiàn)有或今后可能出現(xiàn)的對(duì)故障進(jìn)行分析或分類的方式,如可適用于本發(fā)明,也應(yīng)包含在本發(fā)明保護(hù)范圍以內(nèi),并在此以引用的方式包含于此。
優(yōu)選地,本發(fā)明還提供了一種計(jì)算機(jī)設(shè)備,該計(jì)算機(jī)設(shè)備包括一個(gè)或多個(gè)處理器和存儲(chǔ)器,該存儲(chǔ)器用于存儲(chǔ)一個(gè)或多個(gè)計(jì)算機(jī)程序;當(dāng)所述一個(gè)或多個(gè)計(jì)算機(jī)程序被所述一個(gè)或多個(gè)處理器執(zhí)行時(shí),使得所述一個(gè)或多個(gè)處理器實(shí)現(xiàn)如步驟S401至S404中任一項(xiàng)所述的操作。
需要注意的是,本發(fā)明可在軟件和/或軟件與硬件的組合體中被實(shí)施,例如,本發(fā)明的各個(gè)裝置可采用專用集成電路(ASIC)或任何其他類似硬件設(shè)備來實(shí)現(xiàn)。在一個(gè)實(shí)施例中,本發(fā)明的軟件程序可以通過處理器執(zhí)行以實(shí)現(xiàn)上文所述步驟或功能。同樣地,本發(fā)明的軟件程序(包括相關(guān)的數(shù)據(jù)結(jié)構(gòu))可以被存儲(chǔ)到計(jì)算機(jī)可讀記錄介質(zhì)中,例如,RAM存儲(chǔ)器,磁或光驅(qū)動(dòng)器或軟磁盤及類似設(shè)備。另外,本發(fā)明的一些步驟或功能可采用硬件來實(shí)現(xiàn),例如,作為與處理器配合從而執(zhí)行各個(gè)步驟或功能的電路。
對(duì)于本領(lǐng)域技術(shù)人員而言,顯然本發(fā)明不限于上述示范性實(shí)施例的細(xì)節(jié),而且在不背離本發(fā)明的精神或基本特征的情況下,能夠以其他的具體形式實(shí)現(xiàn)本發(fā)明。因此,無論從哪一點(diǎn)來看,均應(yīng)將實(shí)施例看作是示范性的,而且是非限制性的,本發(fā)明的范圍由所附權(quán)利要求而不是上述說明限定,因此旨在將落在權(quán)利要求的等同要件的含義和范圍內(nèi)的所有變化涵括在本發(fā)明內(nèi)。不應(yīng)將權(quán)利要求中的任何附圖標(biāo)記視為限制所涉及的權(quán)利要求。此外,顯然“包括”一詞不排除其他單元或步驟,單數(shù)不排除復(fù)數(shù)。系統(tǒng)權(quán)利要求中陳述的多個(gè)單元或裝置也可以由一個(gè)單元或裝置通過軟件或者硬件來實(shí)現(xiàn)。第一,第二等詞語(yǔ)用來表示名稱,而并不表示任何特定的順序。