楊 斌 馬朝暉 郝志勇
1)山西省地震局,太原 030021
2)山西農產品質量安全中心,太原030021
虛擬技術在地震應急指揮技術系統中的應用1
楊 斌1)馬朝暉1)郝志勇2)
1)山西省地震局,太原 030021
2)山西農產品質量安全中心,太原030021
利用虛擬技術,可將原來在多臺服務器上部署的地震應急指揮技術系統在一臺高性能服務器上實現容災備份,在節約硬件資源的同時,虛擬機靈活部署、快速恢復的特性也能提高整個系統的靈活性、可靠性。本文對什么樣的服務器可作為地震應急指揮系統的虛擬服務器,如何規劃虛擬應用,虛擬部署后的系統與原系統比較有何差異等進行了研究。本文的研究結果可為全國各省區域應急指揮中心的容災備份提供參考依據。
地震 應急 虛擬機 應用
在地震系統“十五”項目建設完成后,全國地震應急指揮技術系統已基本建成并投入使用。目前地震應急指揮技術系統運行在2臺數據庫服務器和5—6臺應用服務器上,它包含了ORACLE數據庫、ARCSDE數據引擎、WEBLOGIC中間件服務軟件、評估系統、輔助決策系統等眾多基礎軟件及業務軟件。由于系統的復雜性帶來了穩定性的問題,但地震應急指揮技術系統的特殊性又要求整個系統必須具有高可靠性和高穩定性。鑒于這樣的要求,簡單照搬常規的容災備份不但耗資巨大、費時費力,而且不利于推廣應用。利用虛擬技術,可將原來在多臺服務器上部署的地震應急指揮技術系統,在1臺高性能服務器上實現容災備份,在節約硬件資源的同時,虛擬機靈活部署、快速恢復的特性,也能提高整個系統的靈活性和可靠性。而什么樣的服務器可作為地震應急指揮技術系統的虛擬服務器,如何在虛擬服務器上規劃虛擬應用,虛擬部署后的地震應急指揮技術系統與原系統比較又有何差異,這就是本文主要研究的內容。本文的研究結果可為全國各省區域應急指揮中心的容災備份提供參考依據,提高各省應急指揮中心的靈活性、穩定性和可靠性。
虛擬機,即為由虛擬機軟件模擬出來的計算機或稱為邏輯上的計算機。通過虛擬機軟件,可以在1臺物理計算機上模擬出1臺或多臺虛擬的計算機,這些虛擬機完全就像真正的計算機那樣進行工作。對于使用者來說,虛擬機只是計算機上的一個應用程序,但是對于在虛擬機中運行的應用程序而言,它就像是在真正的計算機中進行工作(王興波,2009)。
目前流行的虛擬機軟件有VMware、Virtual PC和Oracle VM VirtualBox等,它們都能在Windows系統上虛擬出多個計算機,用于安裝Linux、OS/2、FreeBSD等其他操作系統。
VMware Work Station 是VMware公司出品的一款虛擬機軟件。利用它可以在1臺電腦上模擬出若干臺機器,這些虛擬機如同真實機一樣各自擁有自己獨立的操作系統、CPU、硬盤、內存及其他硬件,你可以像使用普通機器一樣對它們進行分區、格式化、安裝系統和應用軟件等操作,所有的這些操作都不會對真實主機的硬盤分區和數據造成任何影響和破壞。VMware虛擬機的最大特點是不需要重新開機,就能在1臺電腦上同時運行多個操作系統,這跟在同1臺PC機上安裝多操作系統是不同的。PC機上的多操作系統安裝,在任一時刻只能運行其中的一個系統,如果想切換到其它系統,必須重新啟動機器。而在虛擬機環境下,多個操作系統可以同時運行,人們可以與對待標準的Windows應用程序那樣,在多個操作系統之間來回切換,而不需要重新啟動機器。最值得關注的是VMware強大的網絡功能,它可將多個虛擬機聯接在一起,組建一個局域網,這個網絡的行為與真實的網絡完全一致,而且不用擔心損壞虛擬網卡和虛擬交換機(梁誠等,2007)。
考慮到VMware虛擬機強大的網絡功能、快照恢復功能及用戶界面友好等特點,本文采用VMware作為虛擬機軟件。
現有的地震應急指揮技術系統部署在2臺數據庫服務器和4—5臺應用服務器上,2臺數據庫服務器做RAC配置,以保障數據庫正常運轉,而業務系統主要部署在4—5臺應用服務器上。業務系統軟件按照功能及所占物理資源不同,部署在不同應用服務器上,一般按照表1部署。

表1 系統部署表Table 1 Composition of the system

續表
每個業務系統軟件部署后,都需要占用一定的內存及物理空間,虛擬地震應急指揮技術系統的應用部署,首先需要明確虛擬化后業務系統需要的物理資源,如表2和表3所示。

表2 物理需求對照表Table 2 Physical requirements for virtual technology

表3 系統計算所占資源表Table 3 Resources occupied by the system for calculating
由表2與表3的對比分析可以看出,虛擬化部署后的系統在待機內存及硬盤的需求上與真實系統相差無幾。在進行系統業務計算時,現有系統內存變化不大,CPU使用率較高;在進行虛擬應用系統業務計算時,內存及CPU使用變化都較大,尤其是CPU的使用率瞬時可能會達到 100%。因此,在進行虛擬化部署時,應考慮內存及硬盤的需求,滿足最低硬盤及內存的需要,同時注意避免將高CPU消耗,高內存使用的軟件及在同一時間段內共同計算的業務軟件應部署在同一臺服務器內,避免CPU使用沖突。考慮到本文計劃虛擬2臺應用服務器,同時考慮每臺應用服務器部署(見表 4)的軟件及虛擬系統自身物理配置需求,每臺虛擬服務器需2G以上內存,15G硬盤空間。

表4 虛擬機部署軟件情況Table 4 Deployment of virtual machine software
從表5的對比可以看出,虛擬服務系統在節約物理資源、節約部署空間的同時,還節約了經費開支,而且相對原有6臺服務器的運行維護,虛擬服務系統還可節約人力資源。

表5 服務器硬件配置、價格對比Table 5 Server hardware configuration and price comparison
完成虛擬地震應急指揮技術系統的硬件配置后,虛擬地震應急指揮技術系統的技術關鍵點主要包含虛擬地震應急指揮技術系統的建立及系統快速恢復等方面。
虛擬地震應急指揮技術系統的建立首先應實現網絡平臺的搭建。目前地震應急指揮技術系統安裝部署在2臺數據庫服務器和5—6臺應用服務器上,系統網絡結構如圖1所示。

圖1 系統網絡結構圖Fig. 1 Structure of system network
各個服務器通過物理網絡連接,一旦網絡發生故障,會造成整個系統的運行不暢。且物理網絡的連接使整個系統的容災備份、異地移植等變得復雜、困難。利用虛擬機技術,可在1臺服務器上搭建包含多個不同操作系統的虛擬服務器網絡平臺。每臺虛擬服務器添加雙虛擬網卡,一個網卡采用Host-Only網絡模式;另一個網卡采用Bridge網絡模式。各虛擬服務器之間即可通過Host-Only網絡模式,實現同一臺主機的內部網絡通信連接,完全避免外部物理網絡故障給整個系統帶來的影響;也可通過Bridge網絡模式,實現通過外部網絡外界訪問系統的目的。
在搭建好包含不同操作系統的虛擬網絡平臺后,在虛擬系統中建立1臺虛擬數據庫服務器用于地震應急基礎數據庫及ARCSDE空間數據引擎的安裝。2—3臺虛擬應用服務器用于ARCIMS空間數據服務軟件、WEBLOGIC中間件等基礎軟件及各業務系統的部署。最后在整個系統部署完成后,通過基礎數據的導入,可進行整個系統的綜合調試。
虛擬應急指揮技術系統可利用VMware虛擬機自帶的“鏡像”管理功能隨時對整個系統進行備份。當系統出現故障時,可方便的利用虛擬機“鏡像”管理功能中的快照“閃回”功能,實現整個應急系統的快速恢復。避免了整個系統的重新部署,大大降低了系統運行的風險性,提高了系統的可靠性和安全性。
虛擬地震應急指揮技術系統部署完成后,可通過與現有系統分別計算同一地震、改變虛擬機軟件部署情況下計算同一地震、改變虛擬服務器內存配置情況下計算同一地震、改變虛擬服務器CPU配置情況下計算同一地震,來對比分析虛擬系統的計算效能。
本文選取山西北部、中部、南部三個歷史地震發生點,選取同一震級作為測試地震,在現有系統及虛擬系統中分別對其進行計算,結果對比如表6所示。

表6 同一震級、不同地點兩個系統計算時間對比Table 6 Comparison of calculating time between different systems for earthquakes with same magnitude by different location
由表6可以看出,在計算速度上,虛擬系統具有較大優勢,其主要原因是:
原有系統部署在不同的服務器上,服務器之間通過物理網絡連接,物理網絡傳輸速度為100M/s,而虛擬服務系統部署在1臺物理服務器上,通過服務器內部網絡通信,速度可達1G/s。
虛擬系統虛擬的服務器較少,軟件部署集中。例如震害評估與輔助決策兩個系統,在現有系統中是在兩個不同的服務器上分別部署,而在虛擬系統中是部署在同一虛擬服務器上,與網線物理傳輸速度比較,1臺虛擬服務器內的交換速度會大大提升。
為進一步對比分析兩個系統的計算性能,在現有系統與虛擬系統(虛擬系統虛擬3個虛擬服務器,其中1個為數據庫服務器,另外2個為應用服務器,軟件部署情況如表4所示)間進行同一地點、不同震級的計算測試,結果如下表7所示。

表7 同一地點、不同震級兩系統測試結果Table 7 Comparison of calculating time between different systems for earthquakes with same location by different magnitude
由表7可以看出,同一地點、不同震級的計算,虛擬系統計算時間仍比現有系統要少,計算速度快,但隨著震級的加大,計算數據量的增多,這種優勢在逐步縮小。其主要原因是隨著震級的增大和數據量的加大,系統需求的內存及CPU也越多,相對現有系統將幾個主要計算軟件的分別部署,虛擬系統部署較為集中,計算時對資源需求較大,通過監控虛擬服務器的CPU使用率可發現,瞬時若干次達到100%,這可能是導致虛擬系統在計算大震級時速度減慢的原因。
通過以上的分析可以看出,虛擬系統在計算時,物力資源的配置將極大影響系統運算速度。
前面與現有系統運算結果對比時,虛擬系統是虛擬了3臺虛擬服務器,其中1臺作為數據庫服務器,另外2臺為應用服務器,軟件部署情況如表4所示。下面將通過增加1臺虛擬服務器,測試增加虛擬服務器,減少同一虛擬服務器內部署系統數量對虛擬系統計算性能的影響,計算結果如下表8所示。

表8 不同軟件部署情況測試結果Table 8 Test results of different software deployment
從表8可以看出,將大CPU、內存的業務軟件分別部署,可適當提高運算速度,其主要原因是:大CPU、內存的業務軟件分別部署,可減緩同一虛擬服務器內的CPU、內存壓力。
在虛擬機軟件部署情況不變的情況下,可通過改變虛擬服務器內存配置來測試虛擬服務器內存對虛擬系統運行性能的影響。增加虛擬服務器配置內存測試結果如表9所示

表9 增加虛擬服務器配置內存測試Table 9 Memory test after increasing the virtual server configuration
從表9可以看出,當虛擬機的內存配置滿足部署軟件的運行需求時,增加額外的內存不會帶來運行性能的提高。減少虛擬服務器配置內存測試結果如表10所示。

表10 減少虛擬服務器配置內存測試Table 10 Memory test after reducing the virtual server configuration
從表 10可以看出,當虛擬機的內存配置無法滿足部署軟件運行的最低需求時,虛擬系統運行會出現計算失敗的結果。
在虛擬機軟件部署情況不變的情況下,可通過改變虛擬服務器CPU配置來測試虛擬服務器CPU對虛擬系統運行性能的影響。增加虛擬服務器CPU測試結果如表11所示。

表11 改變虛擬服務器配置CPU測試Table 11 CPU test after changing the virtual server configuration
從表11可以看出,當虛擬機的內存配置滿足部署軟件的運行需求時,增加虛擬CPU性能,可適當提高虛擬系統的運行速度。其主要原因可能是:CPU性能的增加,滿足了大CPU軟件的運行需要。
通過以上一系列的性能測試可以看出,虛擬服務器應根據其部署軟件的規劃,滿足其所部屬軟件系統運行的最低要求。當虛擬機配置無法滿足其部署軟件的最低運行需求時,將導致系統的運行錯誤;當虛擬機配置滿足需求時,額外增加物理資源不會顯著提高系統性能,但增加虛擬應用服務器所欠缺的配置時,對系統運算性能有顯著提高。根據本文的軟件部署情況(表4),通過一系列測試最終可認為,每臺虛擬服務器最低配置應滿足2G內存,雙核CPU,且不建議再減少虛擬服務器的數量,即最少應虛擬2臺應用服務器部署業務系統。
將虛擬機技術與地震應急指揮技術系統相結合,可將原來在多臺服務器上部署的地震應急指揮技術系統在一臺高性能服務器上實現容災備份,在節約硬件資源的同時,虛擬機靈活部署、快速恢復的特性也能提高整個系統的靈活性、可靠性。本文通過對虛擬機選擇的研究、虛擬機服務器硬件配置需求的研究、虛擬系統與原有系統的對比分析研究、影響虛擬機運行性能的各因素對比分析研究,探討了虛擬機軟件的選擇、虛擬機服務器硬件配置的最低需求、虛擬系統與原系統的差異、提升優化虛擬系統的因素等。本文的研究結果可為全國各省區域應急指揮中心的容災備份提供參考依據,提高各省應急指揮中心的靈活性、穩定性、可靠性。
梁誠,李瓊,夏建波,2007. VMware虛擬機技術在計算機實踐教學中的應用. 電腦開發與應用,20(8):34—35.
王興波,2009. 有關虛擬機及虛擬化技術的幾點詮注. 信息化縱橫,(7):76—78.
Application of Virtual Technology in Earthquake Emergency Command System
Yang Bin1), Ma Zhaohui1)and Hao Zhiyong2)
1)Earthquake Administration of Shanxi Province, Taiyuan 030021, China
2)Shanxi Agricultural Products Quality Safety Center, Taiyuan 030021, China
The virtual technology is characterized by saving hardware resources, flexible deployment fast recovery,which can improve the flexibility and reliability of the earthquake emergency command systems in a high-performance server. In this paper, we discuss the type of server being used as earthquake emergency command system of the virtual server, planning a virtual application, the difference with and without the application of virtual technology.
楊斌,馬朝暉,郝志勇,2012.虛擬技術在地震應急指揮技術系統中的應用.震災防御技術,7(3):313—321.
地震行業科研專項(201208018);地震應急青年課題CEA_EDEM-201003
2012-02-12
楊斌,男,生于1981年。碩士,工程師。主要從事地震應急技術的研究。E-mail:ybsuning@163.com
Κey words: Earthquake; Emergency; Virtual machine; Application