1 引言
20世紀70年代,IBM公司首次在IBM/370大型機上應用虛擬化技術,提高了大型機的資源利用率。隨著軟硬件技術的迅速發(fā)展,這項屬于大型機的專利技術開始在普通X86計算機上應用,并成為當前計算機發(fā)展和研究的一個熱點方向。
服務器系統(tǒng)雖然具有實現成本低、可擴展性好等優(yōu)勢,但不對外呈現單一的系統(tǒng)映像,編程管理和維護比較復雜。虛擬化技術通過虛擬機監(jiān)控器(Virtual Machine Monitor,簡稱VMM)將底層的硬件資源加以抽象和管理,隱藏底層硬件真正的細節(jié),為客戶操作系統(tǒng)提供一個虛擬邏輯硬件層,對外呈現出多個虛擬的邏輯服務器。目前,虛擬化技術主要應用在商業(yè)數據中心,高校計算機教學和數字圖書館建設等方面,已經取得了較好的效果。文中結合艦船電子信息系統(tǒng)的特點及仿真需求,提出基于KVM虛擬化的信息運行平臺仿真方案,為艦船電子信息系統(tǒng)的設計與實現提供了較好的技術支撐。
2 虛擬化技術
虛擬化為一組物理資源提供統(tǒng)一的邏輯訪問接口,以分層組織的方式通過底層的硬件和高層的軟件實現物理資源的抽象,從邏輯層面對物理資源進行重新分配與描述,使其不受底層資源配置的限制。通過由位于下層的軟件向位于上層的軟件提供一個與它原來所期待的運行環(huán)境完全一致的接口方法,抽象出一個虛擬的軟件或硬件接口,使得上層的軟件可以直接運行在虛擬環(huán)境之上。虛擬化技術能夠在一臺物理計算機上虛擬出多個邏輯上獨立的計算機系統(tǒng),每個計算機系統(tǒng)可以運行不同的操作系統(tǒng)和獨立的應用軟件。實現系統(tǒng)和應用間的有效隔離,對資源進行按需分配,保障每個系統(tǒng)的安全性和運行性能。目前虛擬化技術已經形成從硬件到軟件的整套解決方案,系統(tǒng)架構如圖1所示。
圖1 虛擬化系統(tǒng)架構
虛擬機監(jiān)控器VMM是整個虛擬化系統(tǒng)的核心,它負責對資源的調度、分配和管理,保證多個虛擬機(Virtual Machine,VM)間的相互隔離和多個客戶操作系統(tǒng)的正常運行。在一個虛擬化系統(tǒng)中,虛擬機監(jiān)控器VMM運行在最高特權級上.虛擬機VM和客戶操作系統(tǒng)作為VMM上的用戶級程序運行。
2.1虛擬化分類
虛擬化技術通?煞譃槠脚_虛擬化、資源虛擬化、應用程序虛擬化和表示層虛擬化。在應用層面上表現為服務器虛擬化、內存虛擬化、設備虛擬化、存儲虛擬化和網絡虛擬化等。其中服務器虛擬化主要可分為三類:
1)全虛擬化。虛擬操作系統(tǒng)與底層硬件完全隔離,由中間的VMM層轉化虛擬客戶操作系統(tǒng)對底層硬件的調用代碼,任何一款操作系統(tǒng)都可以原封不動地安裝到虛擬機上,兼容性好。其運行速度會根據不同的實現方式而不同。完全虛擬化是處理器密集型技術,它要求VMM管理各個虛擬服務器,并保持彼此問的獨立性。
2)準虛擬化。準虛擬化可以提供極高的性能,它與完全虛擬化有一些類似。但它在虛擬客戶操作系統(tǒng)中集成了與準虛擬化相關的指令,客戶操作系統(tǒng)通過這些指令配合VMM層調用硬件資源,減少VMM層進行轉換指令而導致的開銷。
3)操作系統(tǒng)層虛擬化。沒有獨立的VMM層,所有虛擬機必須運行于同一主機操作系統(tǒng)上。主機操作系統(tǒng)負責多個虛擬機間的硬件資源分配,并且讓這些虛擬機彼此獨立,統(tǒng)一運行。
2.2虛擬化技術優(yōu)勢
虛擬化技術的優(yōu)勢主要有:
1)提高了硬件資源效率
虛擬化技術可以實現“在單一物理服務器上運行多個操作系統(tǒng)或獨立應用”。保證讓每一個系統(tǒng)服務(如數據庫、網頁服務器)在單一操作系統(tǒng)上運行的同時,無需添加新的物理服務器,提高了服務器資源的利用率和應用的承載能力,降低了運維的成本。
2)服務隔離
當前絕大多數的應用要求具有獨立的運行環(huán)境和平臺,不同的業(yè)務運行在不同的獨立平臺上。虛擬化技術能夠為應用提供有效的獨立運行支撐平臺,保障應用需求。
3)高可用性
虛擬機的硬件在抽象化之后,比實體機具有更強的彈性。虛擬化可以有效解決高可用性、容錯、負載均衡、備份等以前必須依靠復雜技術或是昂貴設備才能解決的問題。
4)統(tǒng)一管理
虛擬化技術通過對當前大量分布式服務器進行虛擬化,實現設備邏輯上的單一化,便于進行硬件資源的統(tǒng)一分配和管理。
此外,虛擬化還可以解決很多實體設備無法解決的問題,包括動態(tài)主機遷移、快速刪除重復數據、統(tǒng)一桌面管理等,甚至可以創(chuàng)建永不宕機的集成環(huán)境。
3 KVM虛擬化
3.1概述
內核虛擬機(Kernel—Based Virtual Machine,KVM)是開源組織提出的基于硬件虛擬化的虛擬機實現方案,2007年2月發(fā)布的Linux2.6.20內核第一次包含了KVM,是目前唯一進入Linux核心的虛擬化解決方案。KVM是虛擬化解決方案的一部分,還需要通過QEMU為客戶操作系統(tǒng)提供岡卡、I/O等設備的虛擬,其架構如圖2所示。
圖2 KVM系統(tǒng)架構
KVM包含內核模塊和處理器模塊兩部分。內核模塊kvm.ko提供核心的虛擬化支持,處理器模塊kvm-intel.ko和kvm-amd.ko分別提供對Intel處理器和AMD處理器的虛擬化技術支持。KVM主要通過加載kvm.ko內核模塊將Linux內核轉換為一個VMM,將虛擬機對應成為標準的Linux進程,用標準的Linux進程管理機制對虛擬機進行管理。
一般情況下,Linux進程有內核模式和用戶模式兩種運行模式,內核模式表示代碼執(zhí)行的特權模式,用戶模式表示代碼執(zhí)行的非特權模式。在KVM系統(tǒng)中為Linux引入了一種新的進程模式,稱為客戶模式?蛻裟J接脕韴(zhí)行虛擬機操作系統(tǒng)非I/O代碼,包含內核模式和用戶模式兩種標準模式,虛擬機操作系統(tǒng)可在內核模式下運行標準的內核,在用戶模式下支持自己的內核和用戶空間應用程序。
3.2 KVM的優(yōu)勢
KVM使用硬件虛擬化技術,以瘦虛擬化形式運行在Linux系統(tǒng)內核當中,實現虛擬機操作系統(tǒng)代碼的直接硬件處理,具有很強的硬件支持能力,支持整個計算機系統(tǒng)的模擬,包括多種處理器(X86、ARM、Pow
ERPC等)、磁盤、圖形適配器、網絡設備,同時支持常見基于X86架構的Windows、Linux、Unix操作系統(tǒng)的穩(wěn)定運行。目前主流硬件設備均配有對應的Linux驅動,KVM可以在最廣泛的硬件系統(tǒng)之上運行。
KVM虛擬化技術具有較強的靈活性,能較好地將不同操作系統(tǒng)和特殊硬件設備加以利用,降低不同系統(tǒng)間的維護復雜度。同時具有優(yōu)良的系統(tǒng)性能和穩(wěn)定性,優(yōu)化配置,提高資源利用率,擴展空間、方便設備的部署。
4基于虛擬化的艦船電子信息平臺仿真
4.1艦船電子信息系統(tǒng)特點
艦船電子信息系統(tǒng)的發(fā)展已經完成了從集中式系統(tǒng)到基于以太網的分布式系統(tǒng)的轉變,業(yè)務和信息需求急劇增加,主要具有以下特點:
1)信息節(jié)點數量多,密度高艦船電子信息系統(tǒng)所包含的分系統(tǒng)數量多,每個分系統(tǒng)包含多個設備和上網節(jié)點。在相對有限的艦載空間內,信息節(jié)點的密度相當高。
2)不同節(jié)點運行的平臺有差異不同系統(tǒng)在進行系統(tǒng)和設備的設計時,其設計思想和技術水平的差異決定了不同的設備或節(jié)點的技術層次差異;不同節(jié)點所使用的操作系統(tǒng)和技術實現方式也不盡相同,不利于設備的功能復用和備份,嚴重影響了設備研制的
后續(xù)發(fā)展。
3)信息的實時性較高
由于艦船電子信息系統(tǒng)業(yè)務需求的差異性,不同信息的傳輸特性也有差別,很多信息的實時性要求比較高,需要在指定條件和時間限制范圍內完成相應的信息傳輸和處理,按照設計的流程完成對應的業(yè)務功能。
4)節(jié)點管理分散
艦艇平臺上有很多信息節(jié)點,節(jié)點間通過以太網進行互聯,實現了信息的傳輸和相應的業(yè)務功能,但節(jié)點的管理依然十分松散,僅僅局限在分系統(tǒng)的內部,艦船電子信息系統(tǒng)缺乏對各分系統(tǒng)或設備的有效監(jiān)控和統(tǒng)一管理。
5)信息類型多樣性
艦載電子信息系統(tǒng)包含的信息類型有數據信息,視頻信息,語音信息,不同信息的處理需求也各不相同,需要具
有更強處理能力的服務器和承載能力的網絡,實現對多樣信息的處理和傳輸。
4.2仿真需求
艦載分系統(tǒng)的設備數量不斷增加,增加了系統(tǒng)內部結構的復雜性,對艦船電子信息系統(tǒng)的體系結構設計也提出了更高的要求,同時也提高了設備安裝的空間需求。
此外,各分系統(tǒng)設備間存在著大量功能重復的設備,例如:幾乎所有的分系統(tǒng)均配有獨立的信息處理設備,造成了大量處理設備的重復和空間浪費。
為了實現設備的集中控制和統(tǒng)一管理,對資源進行有效分配,需要利用虛擬化技術對服務器等處理設備進行虛擬化處理,結合應用需求完成對物理資源的管理和應用程序的部署。
4.3艦船電子信息系統(tǒng)仿真
通過KVM虛擬化技術,在兩臺臺式工作站上共計虛擬出五個虛擬機,分別部署不同的客戶操作系統(tǒng)平臺。主要有:Windows平臺、Linux平臺、VxWorks平臺、Solaris平臺等。結合仿真需求將不同的應用程序部署在對應的平臺上,系統(tǒng)仿真的體系結構。如圖3所示。
將指揮控制模擬系統(tǒng)、雷達模擬系統(tǒng)、武器模擬系統(tǒng)、數據庫系統(tǒng)及Eclipse等相關的軟件或設備部署到相應的虛擬機上,同時通過KVM提供的內部接口搜集虛擬主機和虛擬機等資源的狀態(tài)信息,進行狀態(tài)監(jiān)控和資源管理。
圖3 基于KVM虛擬化仿真體系結構圖
各模擬系統(tǒng)或軟件通過以太網完成信息交互,對于承載作戰(zhàn)業(yè)務的指揮控制模擬系統(tǒng)、雷達模擬系統(tǒng)和武器模擬系統(tǒng),在啟動時自動調用并加載Eclipse界面組件提供的配置界面,通過對配置界面的控制來觸發(fā)相應的操作,并進行業(yè)務信息的顯示和處理。
4.4資源管理
資源管理主要利用KVM內部提供的接口獲取服務器及虛擬機資源的狀態(tài)及使用信息,通過遠程控制命令完成對服務器及虛擬機的狀態(tài)監(jiān)控和資源的分配處理。對于同構服務器的監(jiān)控與管理相對比較簡單,利用KVM虛擬化軟件提供的監(jiān)控接口和功能直接獲取相應信息,設計符合仿真界面需求的監(jiān)控軟件,監(jiān)控管理虛擬資源和應用程序。
對于異構分布式服務器系統(tǒng)的監(jiān)控與管理主要通過一個客戶端程序控制KVM接口實現對外部命令的響應。資源管理服務器端搜集虛擬機等各種資源的信息,進行統(tǒng)一管理和分配,以保證數據的一致性。結構模式圖4所示。
圖4 資源管理連接結構圖
資源管理的遠程控制端可以通過指定的接口形式實現信息交互,獲取相應的信息,如Socket或DDS等,甚至可以是面向服務的SOAP協議。
4.5性能評估
通過虛擬化技術,可以在較少物理服務器上虛擬出多個邏輯服務器,雖然提高了服務器的利用率,但對虛擬機的性能還是有影響的。而對實時性要求較高的作戰(zhàn)仿真而言,性能影響直接決定著仿真的效果。經測試統(tǒng)計,在一個單內核的物理服務器上虛擬一個虛擬機,其性能損耗較少,約為2%~7%;若在一個單內核的物理服務器上虛擬出三個虛擬機時,其性能損耗可高達20%~40%,虛擬機的性能損耗會隨著虛擬機的數量增加而顯著增加,虛擬機性能損耗直接影響著虛擬機的數量。為了保證有限數量范圍內的虛擬機性能,可以通過提高物理服務器的內存和CPU配置來提高虛擬機的運行性能,使其滿足仿真需求。
5 結語
KVM作為Linux內核中的虛擬化實現軟件,具有靈活、可擴展等較多的優(yōu)勢,可以將相對有限的計算機物理資源進行虛擬,按照需求進行邏輯重組,保持資源的獨立性,充分利用服務器資源的同時,提高了對資源的管理和控制能力。結合艦船電子信息系統(tǒng)特點和仿真需求,詳細描述了基于虛擬化技術的艦船電子信息系統(tǒng)仿真框架,實現了對物理資源的集中管理,為艦船電子信息平臺的資源管理和分配奠定基礎。
轉載請注明出處:拓步ERP資訊網http://www.oesoe.com/
本文標題:基于KVM的艦船電子信息平臺仿真研究
本文網址:http://www.oesoe.com/html/support/11121510151.html