本申請(qǐng)涉及通信領(lǐng)域,具體涉及一種兼容性識(shí)別方法、裝置、設(shè)備及計(jì)算機(jī)程序產(chǎn)品。
背景技術(shù):
1、caas(communications?as?a?service,通信即服務(wù))平臺(tái)的快速發(fā)展使得開(kāi)發(fā)人員可以輕松的部署容器運(yùn)用,隨著相關(guān)產(chǎn)業(yè)的不斷擴(kuò)大,不同容器os(operating?system,操作系統(tǒng))應(yīng)運(yùn)而生,且基于用戶需求進(jìn)行針對(duì)性地增強(qiáng)和優(yōu)化。不同的容器操作系統(tǒng)采用不同的內(nèi)核主線,且都有與其平臺(tái)操作系統(tǒng)配套的基礎(chǔ)容器鏡像。而實(shí)際應(yīng)用過(guò)程中,不同基礎(chǔ)鏡像與不同容器操作系統(tǒng)搭配使用會(huì)產(chǎn)生兼容性問(wèn)題。如果開(kāi)發(fā)容器運(yùn)用需要在不同操作系統(tǒng)上部署,則需要根據(jù)不同的操作系統(tǒng)來(lái)定制容器鏡像包,這樣無(wú)疑加大了工作量,降低了效率。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)實(shí)施例提供一種兼容性識(shí)別方法、裝置、設(shè)備及計(jì)算機(jī)程序產(chǎn)品,用以解決現(xiàn)有不同容器鏡像與不同操作系統(tǒng)之間的兼容性導(dǎo)致的工作量大和效率低的技術(shù)問(wèn)題。
2、第一方面,本申請(qǐng)實(shí)施例提供一種兼容性識(shí)別方法,包括:
3、獲取容器鏡像的第一系統(tǒng)調(diào)用集合和容器操作系統(tǒng)的第二系統(tǒng)調(diào)用集合;
4、對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告;
5、基于所述差異性報(bào)告和所述驗(yàn)證結(jié)果,對(duì)驗(yàn)證未通過(guò)的容器鏡像重新編譯,對(duì)編譯后的容器鏡像重新驗(yàn)證;
6、對(duì)驗(yàn)證通過(guò)的容器鏡像打上支持對(duì)應(yīng)容器操作系統(tǒng)的認(rèn)證標(biāo)簽。
7、在一個(gè)實(shí)施例中,所述對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告包括:
8、確定待驗(yàn)證容器鏡像,識(shí)別容器操作系統(tǒng)的內(nèi)核版本;
9、將所述內(nèi)核版本對(duì)應(yīng)的系統(tǒng)調(diào)用列表與所述容器操作系統(tǒng)關(guān)聯(lián),得到所述容器操作系統(tǒng)的系統(tǒng)調(diào)用集合,對(duì)所述待驗(yàn)證容器鏡像進(jìn)行監(jiān)聽(tīng),得到所述待驗(yàn)證容器鏡的系統(tǒng)調(diào)用集合;
10、通過(guò)測(cè)試套件和靜態(tài)分析,生成所述系統(tǒng)調(diào)用集合的匹配結(jié)果以及差異性報(bào)告。
11、在一個(gè)實(shí)施例中,所述對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告之后包括:
12、基于所述差異性報(bào)告和所述匹配結(jié)果確定所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合是否匹配成功;
13、在所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合匹配不成功的情況下,對(duì)重新編譯后的待驗(yàn)證容器鏡進(jìn)行匹配;
14、在所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合匹配成功的情況下,對(duì)所述待驗(yàn)證容器鏡打上支持對(duì)應(yīng)容器操作系統(tǒng)的認(rèn)證標(biāo)簽。
15、在一個(gè)實(shí)施例中,所述容器鏡像和所述容器操作系統(tǒng)的交互包括系統(tǒng)調(diào)用和系統(tǒng)目錄接口;
16、基于所述系統(tǒng)調(diào)用的標(biāo)準(zhǔn)接口確定所述系統(tǒng)調(diào)用的目標(biāo)參數(shù)。
17、在一個(gè)實(shí)施例中,所述通過(guò)測(cè)試套件和靜態(tài)分析,生成所述系統(tǒng)調(diào)用集合的匹配結(jié)果以及差異性報(bào)告包括:
18、通過(guò)測(cè)試套件掃描所述容器鏡像和所述容器操作系統(tǒng),得到掃描結(jié)果;
19、基于所述掃描結(jié)果和靜態(tài)分析獲取系統(tǒng)調(diào)用,生成所述容器鏡像和所述容器操作系統(tǒng)的匹配結(jié)果和差異性報(bào)告。
20、在一個(gè)實(shí)施例中,所述對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告還包括:
21、將收集容器作為應(yīng)用容器的輔助容器,對(duì)可執(zhí)行文件和函數(shù)庫(kù)進(jìn)行收集;
22、對(duì)所述收集結(jié)果做全量分析,得到所述容器鏡像的系統(tǒng)調(diào)用集合的分析結(jié)果;
23、基于所述分析結(jié)果確定所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合的驗(yàn)證結(jié)果和差異性報(bào)告。
24、在一個(gè)實(shí)施例中,所述對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告還包括:
25、對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行正交匹配,將匹配失敗的系統(tǒng)調(diào)用添加到目標(biāo)系統(tǒng)調(diào)用列表;
26、在匹配完成的情況下得到驗(yàn)證結(jié)果和差異性報(bào)告。
27、第二方面,本申請(qǐng)實(shí)施例提供一種兼容性識(shí)別裝置,包括:
28、系統(tǒng)調(diào)用集合獲取模塊,用于獲取容器鏡像的第一系統(tǒng)調(diào)用集合和容器操作系統(tǒng)的第二系統(tǒng)調(diào)用集合;
29、全量匹配模塊,用于對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告;
30、重新編譯驗(yàn)證模塊,用于基于所述差異性報(bào)告和所述驗(yàn)證結(jié)果,對(duì)驗(yàn)證未通過(guò)的容器鏡像重新編譯,對(duì)編譯后的容器鏡像重新驗(yàn)證;
31、認(rèn)證標(biāo)簽確定模塊,用于對(duì)驗(yàn)證通過(guò)的容器鏡像打上支持對(duì)應(yīng)容器操作系統(tǒng)的認(rèn)證標(biāo)簽。
32、第三方面,本申請(qǐng)實(shí)施例提供一種設(shè)備,包括處理器和存儲(chǔ)有計(jì)算機(jī)程序的存儲(chǔ)器,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)第一方面所述的兼容性識(shí)別方法。
33、第四方面,本申請(qǐng)實(shí)施例提供一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)第一方面所述的兼容性識(shí)別方法。
34、本申請(qǐng)實(shí)施例提供的兼容性識(shí)別方法、裝置、設(shè)備及計(jì)算機(jī)程序產(chǎn)品,通過(guò)識(shí)別容器鏡像和不同容器操作系統(tǒng)內(nèi)核所需的依賴,獲取容器鏡像需要的系統(tǒng)調(diào)用集合與容器操作系統(tǒng)提供的系統(tǒng)調(diào)用集合,并對(duì)兩系統(tǒng)調(diào)用集合的系統(tǒng)調(diào)用做全量匹配,輸出驗(yàn)證結(jié)果和差異性報(bào)告。對(duì)驗(yàn)證通過(guò)的容器鏡像打上支持對(duì)應(yīng)容器操作系統(tǒng)的認(rèn)證標(biāo)簽,對(duì)驗(yàn)證結(jié)果失敗的容器鏡像,結(jié)合差異性報(bào)告缺少的系統(tǒng)調(diào)用重新編譯容器鏡像并再次驗(yàn)證,驗(yàn)證通過(guò)后打上支持對(duì)應(yīng)容器操作系統(tǒng)的認(rèn)證標(biāo)簽。通過(guò)本實(shí)施例提供的兼容性識(shí)別方法解決了容器鏡像跨容器操作系統(tǒng)不兼容的問(wèn)題,讓開(kāi)發(fā)和運(yùn)維人員可以輕松部署容器鏡像和業(yè)務(wù)鏡像,降低了人工成本和運(yùn)維投入。
1.一種兼容性識(shí)別方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的兼容性識(shí)別方法,其特征在于,所述對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告包括:
3.根據(jù)權(quán)利要求2所述的兼容性識(shí)別方法,其特征在于,所述對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告之后包括:
4.根據(jù)權(quán)利要求1所述的兼容性識(shí)別方法,其特征在于,所述容器鏡像和所述容器操作系統(tǒng)的交互包括系統(tǒng)調(diào)用和系統(tǒng)目錄接口;
5.根據(jù)權(quán)利要求2所述的兼容性識(shí)別方法,其特征在于,所述通過(guò)測(cè)試套件和靜態(tài)分析,生成所述系統(tǒng)調(diào)用集合的匹配結(jié)果以及差異性報(bào)告包括:
6.根據(jù)權(quán)利要求1所述的兼容性識(shí)別方法,其特征在于,所述對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告還包括:
7.根據(jù)權(quán)利要求1所述的兼容性識(shí)別方法,其特征在于,所述對(duì)所述第一系統(tǒng)調(diào)用集合和所述第二系統(tǒng)調(diào)用集合進(jìn)行全量匹配,得到驗(yàn)證結(jié)果和差異性報(bào)告還包括:
8.一種兼容性識(shí)別裝置,其特征在于,包括:
9.一種電子設(shè)備,包括處理器和存儲(chǔ)有計(jì)算機(jī)程序的存儲(chǔ)器,其特征在于,所述處理器執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)權(quán)利要求1至7任一項(xiàng)所述的兼容性識(shí)別方法。
10.一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,其特征在于,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)權(quán)利要求1至7任一項(xiàng)所述的兼容性識(shí)別方法。