本文作者:kaifamei

一種應用部署方法及裝置與流程

更新時間:2025-12-26 22:20:39 0條評論

一種應用部署方法及裝置與流程



1.本技術涉及計算機技術領域,尤其涉及一種應用部署方法及裝置。


背景技術:

2.容器云平臺是基于一個或多個硬件設備搭建的,用于為用戶提供計算和/或存儲服務等。用戶可在容器云平臺上部署自己的應用,借助容器云平臺提供的硬件資源運行該應用。用戶將應用部署在容器云平臺的過程又可以稱為上云。
3.目前,一種上云的方式為:容器云平臺的工作人員或用戶對應用進行編譯、以及制作鏡像,進而將鏡像文件部署在容器云平臺上。由此可見,該方式中,上云過程均需依賴手動操作,需要耗費大量的時間,導致上云效率較低。


技術實現要素:

4.本技術提供一種應用部署方法及裝置,用于提高應用部署的效率。
5.第一方面,本技術提供一種應用部署方法,應用于第一設備,所述方法包括:對至少一個功能模塊中的每個功能模塊的描述文件進行編譯,獲得至少一個代碼文件,所述至少一個功能模塊用于實現應用的功能;將所述至少一個代碼文件中的每個代碼文件分別加載到鏡像環境中,獲得至少一個第一鏡像文件;根據所述至少一個功能模塊的層級關系,依次配置所述至少一個第一鏡像文件,獲得應用壓縮包,所述應用壓縮包用于部署所述應用,所述至少一個功能模塊的層級關系用于表示所述至少一個功能模塊之間的功能依賴關系;將所述應用壓縮包部署在容器云平臺上。
6.在本技術實施例中,第一設備可直接對應用所需的至少一個功能模塊的描述文件進行編譯,并將代碼文件(即編譯結果)進行鏡像制作,獲得鏡像文件,并基于至少一個功能模塊之間的層級關系,進行應用壓縮包,從而將該應用壓縮包部署在容器云平臺上,在該實施例中,第一設備可自動完成應用部署,減少用戶的手動操作,從而有利于提高部署應用的效率。
7.在一種可能的實施方式中,所述方法還包括:接收配置的第一信息,所述第一信息包括所述至少一個功能模塊中的每個功能模塊的模塊標識;確定所述至少一個功能模塊中的每個功能模塊對應的編譯參數,其中,所述每個功能模塊對應的編譯參數包括所述每個功能模塊對應的描述文件在所述第一設備中的地址,以及將每個功能模塊編譯后所需的代碼文件的格式;根據所述每個功能模塊對應的描述文件在所述第一設備中的地址,調用所述每個功能模塊中的描述文件;根據所述每個功能模塊編譯后所需的代碼文件的格式,對每個功能模塊中的描述文件編譯,獲得所述至少一個代碼文件。
8.在該實施方式中,第一設備可根據第一信息靈活調取每個功能模塊的描述文件,無需工作人員手動輸入功能模塊的描述文件,減少了工作人員的工作量,也有利于提高了應用部署的效率。并且,第一設備可根據第一信息中的模塊標識,靈活地配置應用所需的描述文件,使得第一設備可支持部署多種應用。
9.在一種可能的實施方式中,所述方法還包括:根據鏡像導入腳本,解壓所述應用壓縮包,獲得至少一個第二鏡像文件,所述至少一個第二鏡像文件的層級關系與所述至少一個功能模塊的層級關系對應;將所述至少一個第二鏡像文件發送給所述容器云平臺。
10.在該實施方式中,第一設備在獲取應用壓縮包時,便可根據預先存儲的鏡像導入腳本將應用壓縮包進行解壓,并將獲得的包含層級關系的至少一個第二鏡像文件發送給容器云平臺。基于該鏡像導入腳本,第一設備可直接完成應用壓縮包的解壓以及發送過程,無需工作人員進行手動操作,進一步提高了應用部署的工作效率。
11.在一種可能的實施方式中,所述方法還包括:修改所述應用壓縮包的標簽,其中,修改后的標簽用于指示所述容器云平臺的地址。
12.在該實施方式中,第一設備還可將應用壓縮包的標簽修改為容器云平臺的標簽,無需工作人員手動修改,保證了應用壓縮包部署在容器云平臺上的兼容性。
13.在一種可能的實施方式中,所述方法還包括:按照所述層級關系,確定所述至少一個第一鏡像文件的配置順序;按照所述配置順序,加載和壓縮所述至少一個第一鏡像文件,獲得所述應用壓縮包。
14.在該實施方式中,第一設備可按照層級關系對至少一個鏡像文件進行壓縮,使得應用壓縮包在解壓后,可獲得具有層級關系的至少一個第二鏡像文件。簡化了應用部署的方法,提高了應用部署效率。
15.在一種可能的實施方式中,所述方法還包括:解析預存的所述應用的應用前端模板,獲得所述至少一個功能模塊的層級關系,其中,所述應用前端模板用于定義所述至少一個功能模塊的功能依賴關系。
16.在該實施方式中,第一設備可從應用前端模塊處直接獲得至少一個功能模塊的層級關系,進而第一設備可直接將該層級關系應用于應用壓縮包中,簡化了配置層級關系的方法,加快了生成應用壓縮包的效率,進而提高了應用部署效率。
17.在一種可能的實施方式中,所述應用為視頻云存儲應用,所述至少一個功能模塊包括元數據功能模塊、目錄功能模塊、數據存儲功能模塊和運維模塊。所述元數據功能模塊用于記錄視頻數據的元數據;所述目錄功能模塊用于記錄元數據的目錄;所述數據存儲功能模塊用于存儲視頻數據;所述運維功能模塊用于維護所述至少一個功能模塊的功能。
18.在該實施方式中,第一設備將視頻云存儲應用部署到容器云平臺上,可將視頻云存儲應用劃分為各個功能模塊進行部署,各個功能模塊即元數據功能模塊、目錄功能模塊、數據存儲功能模塊和運維模塊,從而減少了第一設備的壓力,提高了應用部署效率。
19.第二方面,本技術提供一種應用部署方法,應用于容器云平臺,所述方法包括:接收至少一個第二鏡像文件,所述第二鏡像文件的層級關系與至少一個功能模塊的層級關系對應,所述層級關系用于表示所述至少一個功能模塊之間的功能依賴關系,所述至少一個功能模塊用于實現應用的功能;運行所述至少一個第二鏡像文件,獲得所述至少一個功能模塊。
20.在本技術實施例中,容器云平臺接收至少一個第二鏡像文件后,直接運行著至少一個第二鏡像文件,便可直接獲取至少一個功能模塊,完成應用部署,簡化了應用部署的方法,提高了應用部署的效率。
21.在一種可能的實施方式中,所述方法還包括:確定所述至少一個功能模塊中的每
個功能模塊的環境參數,其中,所述每個功能模塊的環境參數用于確定所述每個功能模塊的地址;將所述至少一個功能模塊中的一個功能模塊的環境參數發送給所述至少一個功能模塊中除了所述一個功能模塊之外的其他功能模塊。
22.在該實施方式中,容器云平臺可為至少一個功能模塊中的每個功能模塊配置一個與地址關聯的環境參數,并將每個功能模塊的環境參數發送給其他功能模塊,以使每個功能模塊均可根據其他功能模塊的環境參數確定其他功能模塊的地址,避免了因至少一個功能模塊中的每個功能模塊在容器云平臺的不同服務器上,導致每個功能模塊之間無法獲取地址的情況。
23.在一種可能的實施方式中,所述方法還包括:接收第二信息,所述第二信息用于指示所述至少一個功能模塊的每個功能模塊所需的存儲空間大小;根據所述每個功能模塊所需的存儲空間的大小,為所述每個功能模塊分配符合所述每個功能模塊所需的存儲空間大小的存儲空間。
24.在該實施方式中,容器云平臺還可根據第二信息為每個功能模塊分配所需的存儲空間,避免了后續每個功能模塊因存儲空間過小,導致服務無法正常運行的情況出現。
25.在一種可能的實施方式中,所述方法還包括:確定所述至少一個功能模塊的每個功能模塊對應的服務的類型;若所述至少一個功能模塊的一個功能模塊的服務的類型為外部訪問的服務,則將所述服務的地址發送給外部節點,所述外部節點為與所述一個功能模塊所在的節點不同的節點。
26.在該實施方式中,容器云平臺還可基于每個功能模塊對應的服務的類型,將每個功能模塊的地址發送給的外部節點,使得外部節點可成功訪問相應的服務。
27.第三方面,本技術提供一種應用部署裝置,包括:處理模塊,用于對至少一個功能模塊中的每個功能模塊的描述文件進行編譯,獲得至少一個代碼文件,所述至少一個功能模塊用于實現應用的功能,將所述至少一個代碼文件中的每個代碼文件分別加載到鏡像環境中,獲得至少一個第一鏡像文件,以及根據所述至少一個功能模塊的層級關系,依次配置所述至少一個第一鏡像文件,獲得應用壓縮包,所述應用壓縮包用于部署所述應用,所述至少一個功能模塊的層級關系用于表示所述至少一個功能模塊之間的功能依賴關系;收發模塊,用于將所述應用壓縮包部署在容器云平臺上。
28.第四方面,本技術提供一種應用部署裝置,包括:收發模塊,用于接收至少一個第二鏡像文件,所述第二鏡像文件的層級關系與至少一個功能模塊的層級關系對應,所述至少一個功能模塊用于表示所述至少一個功能模塊之間的功能依賴關系,所述至少一個功能模塊用于實現應用的功能;處理模塊,用于運行所述至少一個第二鏡像文件,獲得所述至少一個功能模塊。
29.第五方面,本技術實施例提供一種應用部署系統,該應用部署系統包括第三方面所述的通信裝置以及第四方面所述的通信裝置。
30.第六方面,本技術實施例提供一種應用部署裝置,包括:處理器和存儲器;其中:所述存儲器存儲有指令,當所述指令被所述處理器執行時,使得所述遠端設備執行第一方面和第二方面中任一所述的方法。
31.第七方面,本技術實施例提供一種計算機存儲介質,所述計算機可讀存儲介質用于存儲計算機程序,當所述計算機程序在計算機上運行時,使得所述計算機執行第一方面
和第二方面中任一所述的方法。
32.關于第三方面至第七方面的有益效果可參照前文第一方面或第二方面論述的內容,此處不再列舉。
附圖說明
33.圖1為本技術實施例提供的一種應用部署方法的應用場景示意圖;
34.圖2為本技術實施例提供的一種應用部署方法的流程示意圖;
35.圖3為本技術實施例提供的一種部署應用后的容器云平臺的結構示意圖;
36.圖4、圖5、圖6和圖7為本技術實施例提供的幾種應用部署裝置的結構示意圖。
具體實施方式
37.為了更好地理解本技術提供的技術方案,下面將結合說明書附圖以及具體的實施方式進行詳細的說明。
38.為了便于更好地理解本技術實施例的技術方案,下面對本技術實施例涉及的技術名詞進行介紹。
39.1、應用,本技術實施例中的應用泛指可以實現一個或多個功能的軟件模塊,該應用可以是獨立運行的軟件程序,或者也可以是獨立運行的軟件程序中的一個子模塊等。
40.請參照圖1,為本技術實施例提供的一種應用部署方法的應用場景示意圖,或者可以理解為一種應用部署系統的結構示意圖。如圖1所示,該系統包括第一設備101和容器云平臺102。第一設備101和容器云平臺102之間可相互進行有線或無線通信。
41.其中,第一設備101泛指具有處理能力的設備。例如,第一設備為服務器或終端設備。服務器例如為云服務器、通用服務器、超長指令集架構(very long instruction word,vliw)服務器、精簡指令集(reduced instruction set computing,risc)服務器或復雜指令系統計算機(complex instruction set computer,cisc)服務器等。其中,終端設備是指具有通信處理控制功能的通用計算機輸入輸出設備,例如為個人計算機(personal computer,pc)、平板、筆記本電報或掌上電腦等。
42.可選的,第一設備101可安裝有客戶端,容器云平臺102與客戶端之間可相互通信。客戶端可理解為運行在容器云平臺102中的軟件程序。
43.容器云平臺102泛指可為一個或多個用戶提供業務的平臺,例如為用戶提供存儲和/計算服務,存儲服務例如提供視頻存儲服務。容器云平臺102可以包括一個或多個節點,每個節點可以是一個計算設備或一個計算設備中的軟件模塊等,計算設備例如為服務器,服務器的實現形式可參照前文。容器云平臺102例如為開源容器編排系統(kubernetes,kube或k8s),相應的,容器云平臺102可包括一個或多個工作節點和主節點。主節點用于控制多個工作節點,每個工作節點用于運行應用。
44.示例性的,第一設備101可在用戶的觸發操作下,編譯生成應用的應用壓縮包,進而將應用壓縮包部署在容器云平臺上。其中,第一設備101具體編譯生成應用壓縮包的過程將在下文中論述。例如,容器云平臺為k8s,則容器云平臺運行應用壓縮包之后,相當于運行了一個或多個pod。
45.在一種可能的實施方式中,第一設備101可設置在容器云平臺中102,這種情況下
第一設備101和容器云平臺102可視為一個設備。
46.請參照圖2,為本技術實施例提供的一種應用部署方法的流程示意圖。圖2所示的實施例中涉及的第一設備例如為圖1所示的第一設備101,圖2所示的實施例涉及的容器云平臺例如為圖1所述的容器云平臺102。
47.s201,第一設備對至少一個功能模塊中的每個功能模塊的描述文件進行編譯,獲得至少一個代碼文件。
48.一個功能模塊用于實現應用所需的一個功能,一個功能模塊又可以稱為一個組件,且可理解為應用中用于實現一個功能的軟件模塊,應用例如為視頻云存儲應用。至少一個功能模塊用于實現當前所需部署的應用所需的功能。至少一個功能模塊例如包括元數據功能模塊、目錄功能模塊、數據存儲功能模塊、運維功能模塊、協議功能模塊和數據庫功能模塊中的一個或多個。元數據功能模塊用于記錄視頻數據的元數據。目錄功能模塊用于記錄元數據的目錄。數據存儲功能模塊用于存儲視頻數據。運維功能模塊用于維護至少一個功能模塊的功能。協議功能模塊用于實現對數據進行封裝。
49.作為一個示例,第一設備可以根據當前所需部署的應用的功能信息,確定這至少一個功能模塊。其中,功能信息可以是用戶輸入的,或者是第一設備基于應用的開發需求信息識別得到的,或者從其他設備接收得到的。例如,用戶在第一設備的界面中的輸入該功能信息,相應的,第一設備可獲得該第一信息。
50.作為另一個示例,第一設備可根據第一信息,確定這至少一個功能模塊。其中,第一信息可以是用戶輸入的,或者從其他設備接收得到的。其中,第一信息包括至少一個功能模塊中的每個功能模塊的模塊標識。
51.具體的,第一設備可預存有多個功能模塊中每個功能模塊的信息,每個功能模塊的信息包括功能模塊的標識以及功能模塊的描述文件。第一設備可在界面中顯示多個功能模塊各自的標識,用戶選擇其中的至少一個標識,第一設備基于用戶的操作,獲得第一信息,也就確定了至少一個功能模塊。
52.每個功能模塊的描述文件可以用于描述每個功能模塊的實現方式,每個功能模塊的描述文件例如為每個功能模塊的源代碼或腳本等,每個功能模塊的描述文件的形式例如為可擴展標記語言(extensible markup language,xml)。
53.作為一個示例,第一設備可根據第一信息,確定至少一個功能模塊中每個功能模塊的編譯參數。每個功能模塊的編譯參數包括每個功能模塊的描述文件在第一設備中的地址以及至少一個功能模塊中的每個功能模塊編譯后的代碼文件的格式。可選的,每個功能模塊的編譯參數還包括至少一個功能模塊的每個功能模塊的編譯命令。
54.下面以第一設備編譯的功能模塊為目錄模塊為例,對目錄模塊的編譯參數進行舉例說明。目錄模塊的編譯參數還包括:git倉庫地址、待編譯的分支、待編譯分支的版本號、編譯命令和編譯產物。git倉庫地址表示目錄模塊的描述文件在第一設備的地址,例如為url,待編譯分支表示目錄模塊待編譯的分支,例如為branch,待編譯分支的版本號表示目錄模塊編譯的版本,例如為commit_id,編譯命令表示第一設備開始編譯目錄模塊的描述文件,例如為makecmd,編譯產物表示第一設備編譯目錄模塊的描述文件后生成的代碼文件的格式,例如為.dll、.out、.exe和.obj等。
55.由于描述文件并非是設備(如第一設備或容器云平臺)可直接執行的代碼,因此在
本技術實施例中,第一設備可對至少一個功能模塊中每個功能模塊對應的描述文件進行編譯,從而獲得至少一個代碼文件。其中,至少一個代碼文件中的每個代碼文件對應一個功能模塊。一個代碼文件可理解為設備可執行的代碼文件,且用于實現一個功能模塊的功能。
56.具體的,第一設備根據至少一個功能模塊的每個功能模塊的描述文件在第一設備中的地址,調用每個功能模塊對應的描述文件,從而獲得至少一個描述文件。第一設備根據至少一個功能模塊中的每個功能模塊編譯后的代碼文件的格式,對至少一個描述文件進行編譯,從而獲得至少一個代碼文件。
57.第一設備對每個描述文件進行編譯的過程可以是相同的,下面以第一設備編譯一個描述文件進行說明。
58.具體的,一個描述文件可包括與該描述文件包括至少一個功能子模塊的描述子文件,至少一個功能子模塊用于實現與該描述文件對應的功能模塊。可選的,這至少一個功能子模塊可具有第一層級關系,該第一層級關系可理解為至少一個功能子模塊的功能之間的依賴關系,或可理解為至少一個功能子模塊之間的調用關系。第一設備對該描述文件進行編譯時,可按照第一層級關系,對這至少一個功能子模塊的描述子文件進行依次編譯,從而獲得該描述文件對應的一個代碼文件。
59.其中,第一設備可按照第一順序,依次對至少一個描述文件進行編譯,或者可以同時對至少一個描述文件進行編譯。其中,第一順序可以是第一設備預存的,或者用戶配置在第一設備中的,或者第一順序可以是根據描述文件確定的。
60.例如,至少一個描述文件中的每個描述文件記錄了描述文件對應的功能模塊所依賴的其他功能模塊,其他功能模塊為至少一個功能模塊中除了該描述文件對應的功能模塊之外的功能模塊,第一設備可根據至少一個描述文件,從而確定第一順序。
61.例如,至少一個功能模塊包括目錄功能模塊和協議功能模塊,其中,協議功能模塊包括網絡框架功能子模塊和日志功能子模塊。第一設備根據至少一個描述文件確定目錄功能模塊依賴協議功能模塊的網絡框架功能子模塊和日志功能子模塊。因此,第一設備確定第一順序為:先編譯協議功能模塊對應的描述文件,再編譯目錄功能模塊對應的描述文件。
62.s202,第一設備將至少一個代碼文件中的每個代碼文件分別加載到鏡像環境中,獲得至少一個第一鏡像文件。
63.其中,至少一個第一鏡像文件中的一個鏡像文件對應至少一個功能模塊中的一個功能模塊。其中一個第一鏡像文件可理解為一個功能模塊的代碼文件的鏡像,或者可理解為包含均鏡像環境的代碼文件。一個鏡像文件可實現與一個功能模塊的功能或服務。
64.由于代碼文件并未包含運行環境,因此在本技術實施例,第一設備還可對至少一個代碼文件中的每個代碼文件加載到鏡像環境中,從而獲得至少一個第一鏡像文件。
65.示例性的,鏡像環境例如為from,鏡像文件可承載在容器文件(dockerfile)中,換言之,容器文件可包括鏡像環境。第一設備將每個代碼文件加載到容器文件中,獲得一個第一鏡像文件,以此類推,第一設備可獲得至少一個鏡像文件。其中,容器文件還包括鏡像制作指令和第一工作目錄。鏡像制作指令用于包括將代碼文件轉換為鏡像文件過程中的指令,例如為copy和add。第一工作目錄為執行鏡像操作的目錄,例如為workdir。
66.第一設備可按照第二順序,對至少一個代碼文件的每個代碼文件進行處理,共獲得至少一個第一鏡像文件。第二順序可以是被預配置在第一設備中的,或者是第一設備獲
得代碼文件的先后順序。
67.s203,根據至少一個功能模塊的層級關系,依次配置至少一個第一鏡像文件,獲得應用壓縮包。
68.至少一個功能模塊的層級關系也可以稱為第二層級關系。第二層級關系用于表示至少一個功能模塊之間的功能依賴關系,或者也可理解為至少一個鏡像文件的依賴關系。
69.其中一個第一鏡像文件對應至少一個功能模塊中的一個功能模塊。第一設備可按照第二層級關系,配置至少一個第一鏡像文件,從而獲得應用壓縮包。應用壓縮包可用于實現應用的功能,或者可理解為應用的安裝文件包。
70.第二層級關系可以是被預配置在第一設備中的,或者第一設備根據應用前端模塊中解析得到的。應用前端模板為前文中待部署的應用的,定義了第二層級關系。應用前端模塊可以是被預配置在第一設備中的,或者從其他設備接收的,或者根據用戶在第一設備上的配置操作生成的。
71.第一設備按照第二層級關系,確定至少一個第一鏡像文件的配置順序,并將至少一個第一鏡像文件按照配置順序加載和壓縮為應用壓縮包。
72.具體的,第一設備將至少一個第一鏡像文件中無需依賴其他功能模塊的功能模塊對應的第一鏡像文件放置在第一層,將依賴第一層的第一鏡像文件的第一鏡像文件放置在第二層,將依賴第一層和第二層的第一鏡像文件的第一鏡像文件放置在第三層,以此類推,第一設備可獲得一個具有第二層級關系的應用壓縮包。
73.可選的,第一設備可配置應用壓縮包的標簽,該標簽用于指示應用壓縮包所屬的設備,由于此時應用壓縮包在第一設備上,因此應用壓縮包的標簽則為第一設備的地址,地址例如為域名和/或ip等。
74.s204,第一設備將應用壓縮包部署在容器云平臺上。
75.第一設備可將應用壓縮包直接發送給容器云平臺,容器云平臺解壓該應用壓縮包,運行解壓后的結果,也就相當于完成了應用的部署。
76.或者,第一設備可對應用壓縮包進行解壓,從而獲得至少一個第二鏡像文件,并將至少一個第二鏡像文件發送給容器云平臺。容器云平臺運行至少一個第二鏡像文件,也就相當于完成了應用的部署。
77.在這種情況下,s204包括s240a和s204b,其中,s204a為:第一設備解壓應用壓縮包,獲得至少一個第二鏡像文件。s204b為:第一設備向容器云平臺發送至少一個第二鏡像文件。相應的,容器云平臺接收來自第一設備的至少一個第二鏡像文件。
78.第一設備獲得應用壓縮包之后,可調用預存的鏡像導入腳本,對應用壓縮包進行解壓,從而獲得至少一個第二鏡像文件。
79.其中,鏡像導入腳本可包括壓縮指令。第一設備基于壓縮指令,對應用壓縮包進行解壓,獲得包含第二層級關系的至少一個第二鏡像文件。至少一個第二鏡像文件可理解為是配置第二層級關系后的至少一個第一鏡像文件。換言之,至少一個第二鏡像文件的層級關系與至少一個功能模塊的層級關系相對應。至少一個第二鏡像文件中的一個第二鏡像文件對應至少一個功能模塊中的一個功能模塊。至少一個第二鏡像文件中的每個第二鏡像文件具有與至少一個功能模塊中的每個功能模塊相同的功能或服務。
80.第一設備進而這至少一個第二鏡像文件發送給容器云平臺,也就相當于第一設備
將應用壓縮包部署在了容器云平臺上。由于第二鏡像文件包含了鏡像環境以及設備可執行的代碼,因此容器云平臺可直接運行這至少一個第二鏡像文件。
81.在應用壓縮包具有標簽的情況下,第一設備在向容器云平臺發送應用壓縮包之前,第一設備可將應用壓縮包的標簽從第一設備的地址修改為容器云平臺的地址,容器云平臺的地址可具體為容器云平臺的域名或服務的地址等。
82.s205,容器云平臺運行至少一個第二鏡像文件,獲得至少一個功能模塊。
83.容器云平臺運行至少一個第二鏡像文件,也就相當于運行了至少一個功能模塊。并且,這至少一個功能模塊也可視為運行的應用。
84.作為一個示例,容器云平臺可為運行的這至少一個功能模塊中的每個功能模塊確定環境參數。其中,每個功能模塊的環境參數用于確定每個功能模塊的地址,或可理解為每個功能模塊的環境參數與每個功能模塊的地址關聯。例如,環境參數包括功能模塊的地址,或者例如環境參數可為具體的數值,例如為0、1、2、3......等。
85.容器云平臺確定至少一個功能模塊中的每個功能模塊的環境參數后,可將每個功能模塊的環境參數發送給至少一個功能模塊中的其他功能模塊,使得至少一個功能模塊中的每個功能模塊可感知其他功能模塊的存在。
86.具體的,這至少一個功能模塊中的每個功能模塊可能運行在容器云平臺上的不同的工作節點上,這種情況下,至少一個功能模塊的一個功能模塊可通過其他功能模塊的環境參數,確定其他功能模塊的地址,進而與其他功能模塊建立通信。
87.為了保證每個功能模塊可順利運行,在本技術實施例,容器云平臺根據第二信息,為運行的至少一個功能模塊分配存儲空間。其中,第二信息用于指示至少一個功能模塊的每個功能模塊所需的存儲空間大小。存儲空間具體可為容器云平臺上的硬盤空間和/或內存空間等。
88.第二信息可以是第一設備根據至少一個第二鏡像文件的大小確定的,或者是從用戶或其他設備接收。
89.在一種可能的實施方式中,容器云平臺還可為至少一個功能模塊分配相應的服務,如果某個功能模塊的服務的類型為外部訪問的服務,那么容器云平臺還可將該服務的地址發送給外部節點。外部節點是指與該功能模塊所在的節點不同的節點。如此,便于外部節點通過該服務的地址訪問該功能模塊提供的功能。
90.其中,任意兩個功能模塊可能對應一個服務,或者對應兩個服務,本技術實施例對此不做具體限定。
91.例如,請參照圖3,功能模塊1運行在容器云平臺的工作節點1上,功能模塊2運行在容器云平臺的工作節點2上,容器云平臺為功能模塊1和2均配置了服務1,且服務1為外部可訪問的服務,那么容器云平臺可將服務1的地址暴露給外部節點,使得外部節點可確定該服務1的地址,進而訪問工作節點1和2。
92.基于相同的發明構思,本技術實施例還提供了幾種通信裝置的結構示意圖。
93.請參照圖4,為本技術實施例提供的一種應用部署裝置的結構示意圖。如圖4所示,該應用部署裝置400包括收發模塊401和處理模塊402。該應用部署裝置可用于實現前文第一設備的功能。
94.示例性的,處理模塊402,用于對至少一個功能模塊中的每個功能模塊的描述文件
進行編譯,獲得至少一個代碼文件,至少一個功能模塊用于實現應用的功能,將至少一個代碼文件中的每個代碼文件分別加載到鏡像環境中,獲得至少一個第一鏡像文件,以及根據至少一個功能模塊的層級關系,依次配置至少一個第一鏡像文件,獲得應用壓縮包,應用壓縮包用于部署應用,至少一個功能模塊的層級關系用于表示至少一個功能模塊之間的功能依賴關系。
95.收發模塊401,用于將應用壓縮包部署在容器云平臺上。
96.處理模塊402,還用于接收配置的第一信息,第一信息包括至少一個功能模塊中的每個功能模塊的模塊標識;確定至少一個功能模塊中的每個功能模塊對應的編譯參數,其中,每個功能模塊對應的編譯參數包括每個功能模塊對應的描述文件在第一設備中的地址,以及將每個功能模塊編譯后所需的代碼文件的格式;根據每個功能模塊對應的描述文件在第一設備中的地址,調用每個功能模塊中的描述文件;根據每個功能模塊編譯后所需的代碼文件的格式,對每個功能模塊中的描述文件編譯,獲得至少一個代碼文件。
97.處理模塊402,還用于根據鏡像導入腳本,解壓應用壓縮包,獲得至少一個第二鏡像文件,至少一個第二鏡像文件的層級關系與至少一個功能模塊的層級關系對應;收發模塊401,還用于將至少一個第二鏡像文件發送給容器云平臺。
98.處理模塊402,還用于修改應用壓縮包的標簽,其中,修改后的標簽用于指示容器云平臺的地址。
99.處理模塊402,還用于按照層級關系,確定至少一個第一鏡像文件的配置順序;按照配置順序,加載和壓縮至少一個第一鏡像文件,獲得應用壓縮包。
100.處理模塊402,還用于解析預存的應用的應用前端模板,獲得至少一個功能模塊的層級關系,其中,應用前端模板用于定義至少一個功能模塊的功能依賴關系。
101.請參照圖5,為本技術實施例提供的一種應用部署裝置的結構示意圖。如圖5所示,該應用部署裝置500包括收發模塊501和處理模塊502。其中該應用部署裝置500可用于實現前文容器云平臺的功能。
102.示例性的,收發模塊501,用于接收至少一個第二鏡像文件,第二鏡像文件的層級關系與至少一個功能模塊的層級關系對應,至少一個功能模塊用于表示至少一個功能模塊之間的功能依賴關系,至少一個功能模塊用于實現應用的功能。
103.處理模塊502,用于運行至少一個第二鏡像文件,獲得至少一個功能模塊。
104.處理模塊502,還用于確定至少一個功能模塊中的每個功能模塊的環境參數,其中,每個功能模塊的環境參數用于確定每個功能模塊的地址;收發模塊501,還用于將至少一個功能模塊中的一個功能模塊的環境參數發送給至少一個功能模塊中除了一個功能模塊之外的其他功能模塊。
105.收發模塊501,還用于接收第二信息,第二信息用于指示至少一個功能模塊的每個功能模塊所需的存儲空間大小;處理模塊502,還用于根據每個功能模塊所需的存儲空間的大小,為每個功能模塊配置每個功能模塊所需的存儲空間。
106.處理模塊502,還用于確定至少一個功能模塊的每個功能模塊對應的服務的類型;收發模塊501,還用于若至少一個功能模塊的一個功能模塊的服務的類型為外部訪問的服務,則將服務的地址發送給外部節點,外部節點為與一個功能模塊所在的節點不同的節點。
107.請參照圖6,為本技術實施例提供一種應用部署裝置的結構示意圖。如圖6所示,該
應用部署裝置600包括至少一個處理器601,以及與至少一個處理器通信連接的存儲器602。
108.其中存儲器602存儲有可被至少一個處理器601執行的指令,至少一個處理器601通過執行存儲器602的指令實現如前文第一設備執行的任一項所述的應用部署的方法。
109.作為一個示例,圖6中的處理器601可以實現前文圖4中處理模塊402的功能。
110.請參照圖7,為本技術實施例提供一種應用部署裝置的結構示意圖。如圖7所示,該應用部署裝置700包括至少一個處理器701,以及與至少一個處理器通信連接的存儲器702。
111.其中存儲器702存儲有可被至少一個處理器701執行的指令,至少一個處理器701通過執行存儲器702的指令實現如前文容器云平臺執行的任一項所述的應用部署的方法。
112.作為一個示例,圖7中的處理器701可以實現前文圖5中處理模塊502的功能。
113.本技術實施例提供一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有計算機指令,當所述計算機指令在計算機上運行時,使得計算機執行如前文任一所述的應用部署的方法。
114.本領域內的技術人員應明白,本技術的實施例可提供為方法、系統、或計算機程序產品。因此,本技術可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本技術可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、cd-rom、光學存儲器等)上實施的計算機程序產品的形式。
115.本技術是參照根據本技術的方法、設備(系統)、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
116.這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
117.這些計算機程序指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執行的指令提供用于實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
118.顯然,本領域的技術人員可以對本技術進行各種改動和變型而不脫離本技術的精神和范圍。這樣,倘若本技術的這些修改和變型屬于本技術權利要求及其等同技術的范圍之內,則本技術也意圖包含這些改動和變型在內。


文章投稿或轉載聲明

本文鏈接:http://m.newhan.cn/zhuanli/patent-13-1088-0.html

來源:專利查詢檢索下載-實用文體寫作網版權所有,轉載請保留出處。本站文章發布于 2022-11-27 21:27:18

發表評論

驗證碼:
用戶名: 密碼: 匿名發表
評論列表 (有 條評論
2人圍觀
參與討論