馬千里
摘 要:該文主要介紹了虛擬機技術,闡述了準虛擬化技術和泛虛擬化技術的工作原理,并針對這兩項技術進行了對比。在此理論基礎上,著重描述了虛擬化技術在上海磁浮線上的應用。與一般情況下使用虛擬機技術以達到節約成本的目的不同,上海磁浮線虛擬機技術應用完全是為了解決實際中遇到的硬件和軟件兼容性問題。該文以上海磁浮線升級改造項目作為一個實際案例,為虛擬機技術的實際應用拓寬思路,也為遇到類似問題的企業提供一個解決途徑。
關鍵詞:虛擬機技術 準虛擬化技術 完全虛擬化技術 上海磁浮線
中圖分類號:U237 文獻標識碼:A 文章編號:1672-3791(2014)12(b)-0014-02
1 虛擬機技術簡介
傳統方式下運行一臺計算機需要一個操作系統,而無論選擇windows還是linux操作系統,都無法實現直接在windows操作系統上直接運行linux操作系統,反之亦然。一般情況,安裝了雙系統的計算機,只能通過重啟計算機硬件來切換操作系統。然而,隨著計算機應用的普及,越來越多的企業服務器或者個人電腦都需要跨平臺(即多操作系統)使用計算機。用戶的需求促進了虛擬機技術的飛速發展。
虛擬機技術的主要原理是在現有的計算機硬件平臺上,通過安裝一個虛擬機監控(Virtual Machine Monitor,VMM)軟件來實現虛擬一個新的操作系統。對于使用者來說,使用虛擬的操作系統就像在一臺獨立計算機硬件上運行操作系統完全一樣,擁有獨立的CPU、內存、硬盤等硬件。不過,這些硬件都是虛擬出來的,除了內存必須劃出獨立的物理內存供虛擬操作系統使用,其他硬件都是底層操作系統和虛擬操作系統共享的。
根據VMM軟件運行方式的不同,可以將虛擬機技術分為兩大類。第一類稱之為準虛擬化(Para-virtualization,PV),此類VMM軟件集成在主操作系統中,在運行VMM軟件時,客戶操作系統就可以直接訪問計算機硬件,從而提高客戶操作系統的訪問和處理速度以及穩定性;第二類稱之為完全虛擬化(Full-virtualization,FV),該類VMM軟件等同于主操作系統的一個應用程序,在運行VMM軟件時,客戶操作系統需要通過VMM軟件這個媒介間接訪問計算機硬件。相比之下,準虛擬化由于VMM軟件直接訪問硬件設備,所以相對完全虛擬化具有更好的性能和穩定性。兩種類型虛擬機結構圖示意圖如圖1所示。
虛擬機技術的優點也得到了廣泛的共識,并應用于諸多領域。虛擬機技術最廣泛的被網站運營商和游戲運營商所使用,由于網絡運營商是根據服務器機柜數量收取租賃費用,所以為了節約成本,網站運營商和游戲運營商使用虛擬機技術,利用有限的硬件服務器虛擬出幾十甚至上百臺服務器來,從而大大地節約了運營成本。此外,一些軟件開發人員利用虛擬機對開發軟件進行兼容性測試。在我國,由于高校招生規模擴張,學校的硬件資源緊缺,虛擬機技術也被廣泛地應用在學校的教學實驗室。
2 上海磁浮線的虛擬機技術應用
上海磁浮線在2014年對列車牽引供電監控和診斷系統進行了改造升級,此次升級主要是將虛擬機技術應用于牽引供電監控系統的10臺服務器和17臺客戶端計算機。上海磁浮線采用了VMware公司的虛擬機軟件。
2.1 上海磁浮線牽引供電監控和診斷系統簡介
上海磁浮線牽引監控系統采用西門子SIMATIC WinCC軟件。其中,牽引WinCC系統主要負責磁浮線高功率變頻器(12臺)、中功率變頻器(2臺)和低功率變頻器(2臺)的運行監控工作;供電WinCC系統主要負責整個110kV供電網絡以及母排以上350kV市政供電開關的運行監控工作。
上海磁浮線列車牽引供電的監控和診斷設備如表1。
2.2 改造背景
上海磁浮快速列車項目牽引供電監控和診斷系統的所有計算機硬件需替換,原因在于線上使用的監控和診斷計算機硬件正處于老化階段,故障率上升,而庫存備件逐漸用盡,該類硬件在市面上面臨停產威脅。
改造面臨著一大難題。一方面,由于上海磁浮線建設于2000年,當時的操作系統為windows2000,新采購的替換硬件如果安裝windows2000則會因為缺少驅動以及原有牽引供電監控系統軟件的非兼容性而不可使用,所以需要采用新的操作系統。另一方面,原有軟件又不能運行在新的操作系統例如windows7,特別是X64版本。且經過第三方評估,這些軟件已明確不能在新版本的操作系統上得到許可使用。替換新硬件因為兼容性問題所以必須升級操作系統,而升級了操作系統原有軟件又無法運行,這個矛盾的問題十分棘手。
為此改造必須找到一個解決方案,解決上述問題。另外,從長遠方面考慮,由于硬件和操作系統發展日新月異,未來還將面臨硬件更新以及操作系統版本陳舊的問題,還需要進一步確保在將來更新升級硬件和操作系統的可行性。
為了解決上述一系列問題,最終形成了應用虛擬機技術的改造方案。將牽引供電監控系統升級成新軟件版本(診斷系統軟件仍采用舊版本),并在虛擬計算機環境中運行而不依賴于將來硬件的變化,這樣,在未來系統可以很容易地升級硬件版本。并且,那些沒有升級新版本的系統軟件或在新操作系統下無許可的其它系統軟件,也可以在虛擬計算機環境中舊的操作系統下運行使用。
2.3 虛擬化方案
上海磁浮線牽引供電監控和診斷系統升級項目中,10臺牽引供電監控服務器全部采用準虛擬化(PV)結構,軟件選取VMware ESXI V5.0;其余17臺牽引供電監控客戶端、牽引供電中央和分區診斷計算機、OTN診斷計算機和網絡計算機均采用完全虛擬化(FV)結構,軟件選取VMware Workstation V9.0,如表2。
2.3.1 牽引和供電監控服務器虛擬化
在此次牽引和供電服務器升級改造項目中,WinCC服務器從WinCC5.1 SP1升級到WinCC7.0 SP3版本,相應地,虛擬機的客戶操作系統為Microsoft Windows Server 2008 R2(64位版本)。endprint
利用VMware的程序管理ESXI5.0完成虛擬化,此方案具有高可靠性低功耗特點。虛擬機在ESXI上運行,并通過Direct I/O技術,直接連接到必要的Profibus CP5613 A2硬件上。串口和LAN口作為虛擬硬件設置在虛擬機內。虛擬機的操作系統和軟件配置與未虛擬化的WinCC服務器相同。
可直接操作的WinCC服務器不配置顯示器,虛擬服務器通過VNC進行遠程管理。通過VMware vSphere 客戶端實現ESXI Hypervisor遠程管理。在開啟關斷或者配置操作虛擬機時,如果須與客戶操作系統或者ESXI軟件交互操作,則使用VMware vSphere客戶端。此客戶程序安裝在網絡計算機(NET-CC-1, NET-CC-2)。如果需與服務器計算機發生任何直接交互操作,都通過網絡計算機完成。
2.3.2 牽引和供電監控多客戶端虛擬化
在此次牽引和供電多客戶端升級改造項目中,WinCC客戶端同WinCC服務器相同,也是升級到WinCCV7.0SP3版本,WinCC多客戶端使用Windows7SP1(X64)作為客戶操作系統。
在兩臺監控器上直接操作WinCC,采用VMware Workstation 9.0作為虛擬軟件完成虛擬化改造。主操作系統是windows 7 SP1 (X64)。windows7系統環境下,通過以太網,利用NTP-client完成時間同步。
2.3.3牽引和供電中央/分區診斷計算機虛擬化
所有診斷計算機升級改造方式和監控客戶端升級改造方式相同,采用完全虛擬化(FV)結構。由于診斷軟件無需更新,所以所有新計算機將在原有的操作系統,原診斷軟件及原有內在配置下安裝虛擬機。主操作系統為windows 7 X64,安裝VMware Workstation 9.0運行虛擬機。
2.3.4OTN診斷計算機虛擬化
為確保安裝在上海的OTN診斷軟件與OTN部件的兼容性,此次升級改造項目中,所有OTN軟件版本未作改變。為此,新的計算機將在原有操作系統下,且保留原有OTN診斷軟件及內在配置,安裝虛擬機。主操作系統為windows 7 x64,安裝VMware Workstation 9.0運行虛擬機。
2.3.5網絡計算機虛擬化
為確保網絡配置軟件與安裝在上海的網絡部件的兼容性,此次升級改造項目中,網絡計算機在原有操作系統下,且保留原有軟件及內在配置,安裝虛擬機。主操作系統為windows 7 x64,安裝VMware Workstation 9.0運行虛擬機。
為管理VMware ESXI服務器安裝在牽引供電監控WinCC服務器上的虛擬機,安裝VMware vSphere Client在網絡計算機上。這樣,WinCC服務器的應用進程可通過網絡在兩臺網絡計算機上查看,或者也可以在網絡內其他計算機上使用Win VNC查看。
3 結語
與一般情況下使用虛擬機技術以達到節約成本的目的不同,上海磁浮線牽引供電監控和診斷系統升級改造項目使用了虛擬機技術,完全是從自身實際情況出發,解決了目前軟硬件兼容以及未來再次升級的兼容性問題。該文以上海磁浮線升級改造項目作為一個實際案例,為虛擬機技術的實際應用拓寬思路,也為有類似問題的企業提供一個解決途徑。
參考文獻
[1] 董耀祖,周正偉.基于X86架構的系統虛擬機技術與應用[J].計算機工程,2006,32(13):71-73.
[2] 劉愛軍,耿國華.基于x86的虛擬機技術現狀、應用及展望[J].計算機技術與發展,2007,17(11):250-252.
[3] 王建紅,趙麗紅.淺論虛擬化及其應用[J].科技廣場,2007(7):238-239.endprint