本發(fā)明涉及分布式云仿真領域。更具體地,涉及一種基于輕量級虛擬化架構的分布式云仿真方法與系統(tǒng)。
背景技術:
目前對于分布式云仿真的系統(tǒng)架構和仿真方法主要有以下兩種,第一種提出了在分布式仿真亞馬遜EC2平臺上部署應用的關鍵步驟。具體包括創(chuàng)建鏡像、彈性IP分配、啟動主節(jié)點與工作節(jié)點。具體的創(chuàng)建鏡像是通過MAVEN自動下載和安裝依賴庫到宿主機,編譯和啟動仿真器。主節(jié)點與工作節(jié)點通過JINI框架來發(fā)現(xiàn)彼此。啟動主節(jié)點與工作節(jié)點主要通過EC2的Web service API啟動一個虛擬機服務實例,當虛擬機啟動時將自動運行用戶腳本文件,以創(chuàng)建主從工作節(jié)點,然后提交配置文件、仿真模型與仿真器的參數(shù)至主節(jié)點的協(xié)調器,協(xié)調器通過JINI框架發(fā)現(xiàn)和使用工作節(jié)點的仿真執(zhí)行服務。第二種提出了一個基于SaaS支持配置和MTA等多種特性的新型仿真模型框架,整體框架主要包括支撐環(huán)境,模型的創(chuàng)建服務,源代碼的編譯和部署,仿真執(zhí)行和仿真運行的分析引擎。首先根據(jù)用戶需求調用模型創(chuàng)建服務,該服務查詢獲取支撐環(huán)境的模型信息并完成模型的創(chuàng)建和配置,然后編譯產生源代碼并部署,最后運行仿真。其中模型創(chuàng)建服務中提出解決多用戶的配置模型,使仿真資源和模型的重用,有效的提高了資源利用率和仿真效率。但是,在第一種的亞馬遜EC2平臺的傳統(tǒng)分布式離散事件仿真的方案中,其仿真的實現(xiàn)通過創(chuàng)建鏡像,分配IP,啟動工作節(jié)點,雖然分布式的云仿真可以實現(xiàn)復雜的仿真模型,但是每次的仿真需求都要進行配置和部署,沒有可重用性,不能滿足多用戶使用的需求。對于第二種基于SaaS的仿真方案中,其仿真實現(xiàn)首先通過基于SaaS的框架,該框架對云仿真提出了服務化的實現(xiàn)方案,整合各個具有SaaS特性的元素完成仿真,其中還涉及了與平臺獨立的配置模型來解決仿真資源和模型可重用的問題,支持多用戶的訪問。但是,如圖1所示,在仿真資源虛擬化中還是用到虛擬機,基于虛擬機的資源封裝體量太大,而且基于虛擬機鏡像的仿真資源復制共享效率低,可重用性也有局限,更難以在多中心之間實現(xiàn)快速的部署,且基于虛擬機的增量鏡像,難以做到完全松耦合地將仿真資源分開封裝,對于需要相互調用的仿真資源通常還是要封裝到一個虛擬機鏡像中,資源封裝粒度粗;數(shù)據(jù)、工具、應用封裝在操作系統(tǒng)中相對容易獲取,不利于保護封裝內容的版權。
因此,需要提供一種基于輕量級虛擬化架構的分布式云仿真方法與系統(tǒng),實現(xiàn)對仿真資源的細粒度封裝,提高多中心分布式仿真資源的復制和共享效率,可在多個中心間快速部署仿真資源。
技術實現(xiàn)要素:
本發(fā)明要解決的一個技術問題是提供一種基于輕量級虛擬化架構的分布式云仿真方法,本發(fā)明要解決的另一個技術問題是提供一種基于輕量級虛擬化架構的分布式云仿真系統(tǒng),以實現(xiàn)對仿真資源的細粒度封裝,提高多中心分布式仿真資源的復制和共享效率,可在多個中心間快速部署仿真資源。
為解決上述技術問題,本發(fā)明采用下述技術方案:
本發(fā)明一方面公開了一種基于輕量級虛擬化架構的分布式云仿真方法,其特征在于,所述方法包括:
S1:通過云仿真中控平臺接收用戶的仿真任務,并對所述仿真任務進行分解,得到多個微服務化組合指令;
S2:通過云仿真中控平臺與各服務器集群仿真容器系統(tǒng)進行代理協(xié)商,將所述多個微服務化組合指令傳輸至指定的服務器集群仿真容器系統(tǒng);
S3:通過所述服務器集群仿真容器系統(tǒng)對仿真資源的鏡像容器進行微服務化組合構建,供用戶調用。
優(yōu)選地,所述鏡像容器為基于輕量級虛擬化技術封裝的輕量級鏡像容器。
優(yōu)選地,所述鏡像容器包括仿真模型代碼和仿真模型運行環(huán)境。
優(yōu)選地,該分布式云仿真方法進一步包括:
用戶通過云仿真中控平臺向云仿真容器鏡像庫上傳容器鏡像,對容器鏡像進行注冊和發(fā)布。
優(yōu)選地,所述服務器集群仿真容器系統(tǒng)采用能夠彈性擴張鏡像容器的運行環(huán)境的彈性資源管理機制。
本發(fā)明另一方面同時公開了一種基于輕量級虛擬化架構的分布式云仿真系統(tǒng),其特征在于,所述系統(tǒng)包括:云仿真中控平臺和多個服務器集群仿真容器模塊;
所述云仿真中控平臺用于接收用戶的仿真任務,并對所述仿真任務進行分解,得到微服務化組合指令,并與各服務器集群仿真容器系統(tǒng)進行代理協(xié)商,將所述多個微服務化組合指令傳輸至指定的服務器集群仿真容器系統(tǒng)以及存儲仿真資源鏡像容器;
每個服務器集群仿真容器模塊包括多個單服務器仿真容器模塊和云仿真資源管理中間件服務器;
所述多個云仿真資源管理中間件服務器用于與云仿真中控平臺進行遠程交互,并對多個單服務器仿真容器模塊進行管理;
所述單服務器仿真容器模塊用于對仿真資源的鏡像容器進行微服務化組合構建,供用戶調用。
優(yōu)選地,所述云仿真中控平臺包括云仿真門戶服務器和云仿真系統(tǒng)服務器;
所述云仿真門戶服務器用于與用戶交互,接收用戶的仿真指令;
所述云仿真系統(tǒng)服務器用于對所述仿真任務進行分解,并與各服務器集群仿真容器系統(tǒng)進行代理協(xié)商,將所述多個微服務化組合指令傳輸至指定的服務器集群仿真容器系統(tǒng)以及存儲仿真資源鏡像容器。
本發(fā)明的有益效果如下:
本發(fā)明采用輕量級虛擬化技術對仿真資源進行虛擬化封裝,實現(xiàn)仿真模型的運行環(huán)境一致性測試和部署,引入微服務化和微服務化組合的概念,實現(xiàn)仿真環(huán)境的積木化搭建,最后以服務應用的形式呈現(xiàn)給仿真用戶,并通過仿真資源優(yōu)化配置和管理策略以及微服務化的智能調度策略,實現(xiàn)多中心的分布式仿真,提高多個中心間仿真資源的快速分配和部署,提高仿真效率。
附圖說明
下面結合附圖對本發(fā)明的具體實施方式作進一步詳細的說明。
圖1示出了傳統(tǒng)虛擬化技術和本發(fā)明采用的輕量極虛擬化技術。
圖2示出了一種基于輕量級虛擬化架構的分布式云仿真方法的流程圖。
圖3示出了一種基于輕量級虛擬化架構的分布式云仿真方法仿真資源智能化調度的框架圖。
圖4示出了一種基于輕量級虛擬化架構的分布式云仿真系統(tǒng)的示意圖。
圖5示出了一種基于輕量級虛擬化架構的分布式云仿真系統(tǒng)的工作示意圖。
具體實施方式
為了更清楚地說明本發(fā)明,下面結合優(yōu)選實施例和附圖對本發(fā)明做進一步的說明。附圖中相似的部件以相同的附圖標記進行表示。本領域技術人員應當理解,下面所具體描述的內容是說明性的而非限制性的,不應以此限制本發(fā)明的保護范圍。
如圖2所示,本發(fā)明一方面公開了一種基于輕量級虛擬化架構的分布式云仿真方法,所述方法包括:
S1:通過云仿真中控平臺接收用戶的仿真任務,并對所述仿真任務進行分解,得到多個微服務化組合指令。
S2:通過云仿真中控平臺與各服務器集群仿真容器系統(tǒng)進行代理協(xié)商,將所述多個微服務化組合指令傳輸至指定的服務器集群仿真容器系統(tǒng)。云仿真中控平臺與各服務器集群仿真容器系統(tǒng)的云仿真資源管理中間件服務器進行多智能代理協(xié)商,對全局資源進行優(yōu)化配置,云仿真中控平臺的云仿真容器鏡像庫根據(jù)協(xié)商結果,將微服務化的容器鏡像部署到指定的中心,供云仿真資源管理中間件調用。
云仿真中控平臺與各服務器集群仿真容器系統(tǒng)進行多智能代理協(xié)商時,通過多中心的優(yōu)化配置和管理的數(shù)學模型將幫助云仿真容器鏡像庫找到最佳的仿真資源和配置方案。其中,所述數(shù)學模型可為:假設仿真任務分解為M個子任務、云仿真系統(tǒng)中包括N個分中心,設計服務質量評估矩陣為
E=[Fij]M×M
Fij=[fhk]N×N
其中,fhk為矩陣Fij中標號為hk的服務。
充分考慮影響多中心仿真資源服務優(yōu)化配置的因素,如服務可用性、遠程協(xié)作代價等因素,設計類似(ST×E×S)/2的目標函數(shù),其中,S為分中心選擇矩陣,ST為轉置矩陣,通過降低目標函數(shù)的維度,形成可求解的多中心的全局優(yōu)化配置數(shù)學模型。
S3:通過所述服務器集群仿真容器系統(tǒng)對仿真資源的鏡像容器進行微服務化組合構建,供用戶調用。
其中,所述鏡像容器為基于輕量級虛擬化技術封裝的輕量級鏡像容器,對外呈微服務形態(tài),可由用戶通過云仿真中控平臺向云仿真容器鏡像庫上傳對容器鏡像進行注冊和發(fā)布。仿真聯(lián)邦成員可在仿真模型開發(fā)階段將模型代碼連同其運行環(huán)境基于輕量級虛擬化技術的規(guī)則封裝成輕量級容器鏡像,上傳至容器鏡像庫進行統(tǒng)一管理,測試人員可從庫中取出模型,進行測試,此過程中模型的運行環(huán)境保持一致。
如圖3所示,多個所述服務器集群仿真容器系統(tǒng)中的云仿真資源管理中間件服務器系統(tǒng)在鏡像庫中調度各類細粒度仿真資源到用戶端,由容器引擎虛擬化鏡像資源為微服務容器資源,并進行微服務的組合,動態(tài)、積木化地構建聯(lián)邦成員的仿真服務環(huán)境,并通過資源智能化調度流程完成多中心之間的仿真協(xié)同應用。本發(fā)明采用容器管理的形式實現(xiàn)仿真資源虛擬化和服務化隔離,通過對資源進行微服務化的容器管理實現(xiàn)資源的隔離過程。以容器系統(tǒng)的網(wǎng)絡輸入/輸出性能隔離為例,由于現(xiàn)有容器技術中,容器并未使用cgroups中的net_cls子系統(tǒng)對網(wǎng)絡帶寬進行限制,使得在同一宿主機中的多個容器將搶占輸入/輸出帶寬,極有可能出現(xiàn)某一容器過度占用網(wǎng)絡帶寬的情況,從而嚴重影響其他容器的正常運行。對此,利用容器管理中的net_cls子系統(tǒng),通過使用等級標識符標記網(wǎng)絡數(shù)據(jù)包,實現(xiàn)細粒度的網(wǎng)絡帶寬限制。本發(fā)明中采用的輕量級虛擬化技術為智能調度提供基礎的虛擬化、服務化容器環(huán)境,同時實現(xiàn)微服務容器資源的遷移、分發(fā)部署策略。在仿真資源調度時,本發(fā)明采用智能化資源調度,基于輕量級虛擬化架構的云仿真系統(tǒng)需要實現(xiàn)多實例高并發(fā)的仿真過程,因此需要降低多實例、多級并行的調度代價,同時又要保證共享的安全性。對于仿真任務,系統(tǒng)進行組合、評測、推理建議的多次流程迭代,并維護資源狀態(tài)和仿真知識兩個數(shù)據(jù)庫獲取資源狀態(tài)和組合的信息,綜合智能評估后得到最理想的調度方案,從而兼顧各方的需求。所述服務器集群仿真容器系統(tǒng)采用能夠彈性擴張鏡像容器的運行環(huán)境的彈性資源管理機制。能夠實現(xiàn)一種彈性的資源管理機制,換言之,當出現(xiàn)部分資源消耗較高的需求時,能夠彈性擴張當前容器的運行環(huán)境,為其提供更多的計算或存儲資源,在消耗高峰過后又能快速回收資源,以供給其它仿真應用。最后仿真任務完成,輕量化的容器能夠快速銷毀,減少整個仿真周期的時耗。
輕量級虛擬化的引入為云仿真帶來高效能的應用特性,通過輕量化的容器封裝接入虛擬化、容器化的仿真資源,并進行資源的微服務化組合為用戶提供多種仿真服務。為驗證各個關鍵技術的應用效果,將圍繞云仿真的應用過程定制驗證實驗,不僅要為仿真用戶在云端快速、動態(tài)構建分布式的仿真環(huán)境,還要使系統(tǒng)能滿足多用戶、高并發(fā)的訪問需求
如圖4和圖5所示,本發(fā)明另一方面同時公開了一種用于實現(xiàn)所述方法的基于輕量級虛擬化架構的分布式云仿真系統(tǒng),所述系統(tǒng)包括云仿真中控平臺和多個服務器集群仿真容器模塊。
其中,所述云仿真中控平臺用于接收用戶的仿真任務,并對所述仿真任務進行分解,得到微服務化組合指令,并與各服務器集群仿真容器系統(tǒng)進行代理協(xié)商,將所述多個微服務化組合指令傳輸至指定的服務器集群仿真容器系統(tǒng)以及存儲仿真資源鏡像容器所述云仿真門戶服務器用于與用戶交互,接收用戶的仿真指令,所述云仿真系統(tǒng)服務器用于對所述仿真任務進行分解,并與各服務器集群仿真容器系統(tǒng)進行代理協(xié)商,將所述多個微服務化組合指令傳輸至指定的服務器集群仿真容器系統(tǒng)以及存儲仿真資源鏡像容器。
每個服務器集群仿真容器模塊包括多個單服務器仿真容器模塊和云仿真資源管理中間件服務器。所述多個云仿真資源管理中間件服務器用于與云仿真中控平臺進行遠程交互,并對多個單服務器仿真容器模塊進行管理,所述單服務器仿真容器模塊用于對仿真資源的鏡像容器進行微服務化組合構建,供用戶調用。
顯然,本發(fā)明的上述實施例僅僅是為清楚地說明本發(fā)明所作的舉例,而并非是對本發(fā)明的實施方式的限定,對于所屬領域的普通技術人員來說,在上述說明的基礎上還可以做出其它不同形式的變化或變動,這里無法對所有的實施方式予以窮舉,凡是屬于本發(fā)明的技術方案所引伸出的顯而易見的變化或變動仍處于本發(fā)明的保護范圍之列。