胡玉良 程冬焱 李惠玲
?
虛擬技術在地震前兆技術系統(tǒng)中的應用1
胡玉良1,2)程冬焱1,2)李惠玲1,2)
1)山西省地震局,太原 030021?2)太原大陸裂谷動力學國家野外科學觀測研究站,太原 030025
地震前兆技術系統(tǒng)長期穩(wěn)定和可靠運行對管理人員來說至關重要,本文以山西前兆臺網(wǎng)為例,基于VMware虛擬機搭建了地震前兆技術系統(tǒng),并利用其快閃及克隆功能實現(xiàn)了地震前兆技術系統(tǒng)的快速備份及恢復,提升了地震前兆技術系統(tǒng)故障應急處置能力。
VMware 虛擬機 技術系統(tǒng) 克隆 備份恢復
地震前兆臺網(wǎng)承擔前兆觀測數(shù)據(jù)匯集、處理、存儲、報送與歸檔?,F(xiàn)有臺網(wǎng)技術系統(tǒng)一般部署在1—2臺服務器和數(shù)臺臺式計算機上。目前,國家中心、學科中心、區(qū)域中心均部署了備份服務器,但在臺站卻由于種種原因沒有配備備用服務器,一旦技術系統(tǒng)無法正常運行,恢復服務器可能需要數(shù)分鐘,數(shù)小時或數(shù)天。嚴重的是,如果服務器出現(xiàn)硬件故障,可能需要更長時間才能恢復,將嚴重影響前兆正常業(yè)務的運行,造成不可估量的損失。因此,保證地震前兆技術系統(tǒng)安全可靠運行,并且能在突發(fā)情況下及時恢復地震前兆技術系統(tǒng)就顯得至關重要。針對上述問題,筆者基于VMware虛擬機在已有計算機上搭建了地震前兆臺網(wǎng)技術系統(tǒng),實現(xiàn)了地震前兆技術系統(tǒng)雙機備份功能,保證了地震前兆技術系統(tǒng)不間斷穩(wěn)定可靠運行。
全國地震前兆臺網(wǎng)技術系統(tǒng)是一個四級分層的互聯(lián)互通分布式系統(tǒng)。在節(jié)點臺站上,由多種前兆觀測設備通過無線或有線網(wǎng)絡連接到節(jié)點臺站。在區(qū)域中心,前兆觀測設備也可以通過網(wǎng)絡直接連接到區(qū)域中心節(jié)點。具體連接方式如圖1所示。
地震前兆臺網(wǎng)數(shù)據(jù)采用分布式數(shù)據(jù)存儲體系,即臺站、區(qū)域中心、國家中心和學科中心分別匯集管理所轄范圍的觀測數(shù)據(jù),直接為本節(jié)點提供數(shù)據(jù)服務,數(shù)據(jù)流程如圖2所示。
虛擬化是將服務器物理資源抽象成邏輯資源(楊斌等,2012;錢崢等,2013),從而提高資源的利用率,簡化系統(tǒng)管理。目前主要流行的虛擬機有KVM、Xen、VMware等。
KVM是指基于Linux內(nèi)核(Kernel-based)的虛擬機(Virtual Machine)。KVM最大的好處就在于它是與Linux內(nèi)核集成的,所以速度很快。KVM的宿主操作系統(tǒng)必須是Linux,支持的客戶機操作系統(tǒng)包括Linux、Windows、Solaris和BSD。
Xen是一個開放源代碼虛擬機監(jiān)視器,由劍橋大學開發(fā)。優(yōu)點是內(nèi)存獨占、開源、免費;缺點是操作系統(tǒng)必須進行修改以在Xen上運行,其操作復雜,維護成本較高。
VMware(Virtual machine ware)是一個“虛擬PC”軟件公司。它的產(chǎn)品可以在1臺機器上同時運行2個或更多Windows、DOS、LINUX系統(tǒng)。與“多啟動”系統(tǒng)相比,VMware采用了完全不同的概念。傳統(tǒng)的多操作系統(tǒng)在一個時刻只能運行一個系統(tǒng),在系統(tǒng)切換時需要重新啟動機器,而VMware是真正“同時”運行,多個操作系統(tǒng)在主系統(tǒng)的平臺上,就像Windows應用程序那樣切換。而且每個操作系統(tǒng)都可以進行虛擬分區(qū)、配置,而不影響真實硬盤數(shù)據(jù)。通過Bridged模式可以給每個操作系統(tǒng)分配一個IP地址,以方便遠程訪問;并且VMware虛擬機軟件還具有克隆、快照等功能,方便了用戶安裝、備份及恢復操作系統(tǒng)(VMware技術網(wǎng)站,2014)。
鑒于以上VMware虛擬機軟件的強大功能,筆者采用VMware虛擬機實現(xiàn)地震前兆技術系統(tǒng)。
地震前兆技術系統(tǒng)包括:Oracle數(shù)據(jù)庫、jdk軟件、中國地震前兆臺網(wǎng)數(shù)據(jù)管理系統(tǒng)、中國地震前兆臺網(wǎng)數(shù)據(jù)處理系統(tǒng)、中國地震前兆臺網(wǎng)運行評價系統(tǒng)、前兆觀測數(shù)據(jù)跟蹤分析軟件、MapSIS、EIS2000以及前兆臺站數(shù)據(jù)監(jiān)控分析軟件等。其中,Oracle數(shù)據(jù)庫、jdk軟件和中國地震前兆臺網(wǎng)數(shù)據(jù)管理系統(tǒng)所需操作系統(tǒng)采用Suse Linux Enterprise Server,其余軟件安裝在Windows XP/7操作系統(tǒng)上。
3.1 系統(tǒng)方案
為了保證虛擬機軟件能夠流暢運行,筆者建議計算機的最低配置應滿足:cpu酷睿雙核以上;內(nèi)存2GB以上;硬盤50GB以上。本文中虛擬機安裝環(huán)境采用64位Windows 7旗艦版SP1操作系統(tǒng),計算機硬件配置:cpu酷睿 i7-3770@3.40GHz四核;內(nèi)存8GB,硬盤1TB。虛擬機軟件版本采用VMware Workstation 8.0.4。
需要注意的是,在64位Windows 7 操作系統(tǒng)下,要通過BIOS設置啟用cpu虛擬化,才能確保在VMware Workstation成功安裝SUSE Linux Enterprise Server的64位版本。具體設置過程為:進入BIOS系統(tǒng)設置界面,選擇“intel(R) Virtualization Technology”這一項,默認為“Disabled”,選擇“Enabled”,選擇F10保存。
根據(jù)山西前兆臺網(wǎng)服務器參數(shù)(表1)中的使用磁盤空間一列,結(jié)合計算機硬盤容量,在VMware Workstation中新建2個虛擬機,2個虛擬機網(wǎng)絡模式均采用Bridged模式接入到地震行業(yè)內(nèi)網(wǎng)(楊斌等,2012),以方便外部進行訪問,虛擬機設置如表2所示。其中,一個虛擬機安裝Suse Linux Enterprise Server 10 SP3操作系統(tǒng),然后在此基礎上安裝Oracle 10g數(shù)據(jù)庫、jdk軟件、中國地震前兆臺網(wǎng)數(shù)據(jù)管理系統(tǒng);另一個虛擬機用于安裝Windows XP操作系統(tǒng)(大部分地震前兆業(yè)務軟件在Windows XP操作系統(tǒng)下使用較為穩(wěn)定)。然后在此基礎上安裝中國地震前兆臺網(wǎng)數(shù)據(jù)處理系統(tǒng)、中國地震前兆臺網(wǎng)運行評價系統(tǒng)、前兆觀測數(shù)據(jù)跟蹤分析軟件,以及MapSIS、EIS2000、前兆臺站數(shù)據(jù)監(jiān)控分析軟件。
表1 山西前兆臺網(wǎng)服務器參數(shù)
續(xù)表
序號部署節(jié)點型號內(nèi)存(GB)磁盤(塊)磁盤空間(GB)使用磁盤空間(GB)啟用時間(年-月-日)備注 3代縣中心地震臺DELL83534282014-08-20數(shù)據(jù)庫服務器 4臨汾市地震局DELL83548332014-03-18數(shù)據(jù)庫服務器 5昔陽地震臺DELL42287182011-12-05數(shù)據(jù)庫服務器 6離石中心地震臺DELL42231272011-12-31數(shù)據(jù)庫服務器 7大同中心地震臺DELL42231242013-02-02數(shù)據(jù)庫服務器 8長治中心地震臺DELL83534162014-07-16數(shù)據(jù)庫服務器 9夏縣中心地震臺DELL82135482012-07-26數(shù)據(jù)庫服務器 10定襄中心地震臺DELL123464112013-11-22數(shù)據(jù)庫服務器 11區(qū)域中心DELL1235561672011-01-15主數(shù)據(jù)庫服務器 12長治中心地震臺DELL1235561442011-01-25區(qū)域中心備份數(shù)據(jù)庫服務器
表2 虛擬機設置
3.2 系統(tǒng)搭建
3.2.1 數(shù)據(jù)庫搭建
Oracle數(shù)據(jù)庫和中國地震前兆臺網(wǎng)數(shù)據(jù)管理系統(tǒng)是地震前兆技術系統(tǒng)的基礎,所有地震前兆觀測原始數(shù)據(jù)均通過中國地震前兆臺網(wǎng)數(shù)據(jù)管理系統(tǒng)采集到Oracle數(shù)據(jù)庫,因此確保Oracle數(shù)據(jù)庫和中國地震前兆臺網(wǎng)數(shù)據(jù)管理系統(tǒng)正確安裝非常重要。按照《中國地震前兆臺網(wǎng)數(shù)據(jù)管理系統(tǒng)用戶使用手冊》的要求,可完成Suse Linux Enterprise Server 10 SP3、Oracle數(shù)據(jù)庫、jdk軟件和中國地震前兆臺網(wǎng)數(shù)據(jù)管理系統(tǒng)的安裝,然后按照圖3進行操作,這樣數(shù)據(jù)庫服務器就安裝成功了。
數(shù)據(jù)庫服務器完成安裝后,原服務器和新服務器之間除了IP地址不同之外,其它完全一致,真正實現(xiàn)了雙機備份功能。利用VMware虛擬機軟件的快照閃回功能,可以實現(xiàn)地震前兆技術系統(tǒng)的快速備份及恢復,快照設置如圖4所示。一旦原服務器發(fā)生故障,在30分鐘內(nèi)便可切換到備用服務器上。
在安裝過程中需注意:
(1) 網(wǎng)絡連接選擇Bridged模式,操作系統(tǒng)成功安裝后需配置IP地址,Oracle數(shù)據(jù)庫才能成功安裝。
(2) 數(shù)據(jù)庫實例應在/opt/oracle/oradata/目錄下,管理系統(tǒng)才能成功安裝。
3.2.2 前兆軟件搭建
目前中國地震前兆臺網(wǎng)數(shù)據(jù)處理系統(tǒng)、中國地震前兆臺網(wǎng)運行評價系統(tǒng)、前兆觀測數(shù)據(jù)跟蹤分析軟件,以及MapSIS、EIS2000、山西前兆臺站數(shù)據(jù)監(jiān)控分析等前兆軟件往往安裝在多個臺式計算機上,一方面操作非常不方便,另一方面由于大部分前兆軟件是在Windows XP下開發(fā)的,而目前大部分新購置的臺式計算機往往采用Windows 7操作系統(tǒng),帶來的問題就是前兆軟件與操作系統(tǒng)兼容性較差。因此,為了徹底解決這些問題,采用VMware虛擬機軟件在Windows 7操作系統(tǒng)下部署Windows XP操作系統(tǒng),然后在Windows XP操作系統(tǒng)下安裝前兆軟件,即可完美解決上述兼容性的問題。
3.3 虛擬機克隆技術實現(xiàn)
VMware Workstation虛擬機克隆有兩種類型:完全克隆和鏈接克隆。完全克隆是與原來虛擬機完全獨立的一個拷貝,不和原來虛擬機共享任何資源。優(yōu)點是不依賴其它虛擬機,完全獨立。缺點是占用空間大,克隆速度慢。而鏈接克隆需要和原來虛擬機共享同一虛擬磁盤文件,不能脫離原來虛擬機獨立運行。優(yōu)點是占用空間小,使用方便,復制速度快。缺點是依賴其它虛擬機。
由于新部署的系統(tǒng)需完全獨立,不能依賴原來的虛擬機,所以筆者采用完全克隆方式。完全克隆操作的具體步驟為:
(1)關閉被克隆的虛擬機;
(2)運行克隆向?qū)В阂訴M8為例,點擊菜單的VM--Manage--Clone,按下一步;
(3)選擇從被克隆的虛擬機的當前狀態(tài)開始克隆;
(4)按下一步,選擇全克隆方式;
(5)按下一步,修改名稱及存放位置;
(6)點擊完成,克隆開始。
(7)完成后,回到虛擬機的主界面,啟動克隆完畢的虛擬機;
(8)進入/etc/udev/rules.d文件夾下,執(zhí)行sudo rm *-net.rules語句,刪除相關文件(解決克隆或復制Linux虛擬機后無法上網(wǎng)的問題),重啟虛擬機;
(9)配置網(wǎng)絡參數(shù)。
克隆的虛擬機完成網(wǎng)絡參數(shù)配置后,新的前兆服務器就搭建完成。這里以大同臺為例說明前兆技術系統(tǒng)恢復過程。區(qū)域中心已在VMware虛擬機上搭建了一套地震前兆技術系統(tǒng),按照上述步驟完成虛擬機克隆后,配置虛擬機IP地址為10.14.2.167,然后按照以下步驟在區(qū)域中心完成大同臺管理系統(tǒng)的恢復。
(1)啟動新克隆的虛擬機,以命令方式啟動Oracle數(shù)據(jù)庫(胡玉良等,2013),卸載管理系統(tǒng)(卸載過程中選擇刪除數(shù)據(jù)庫表空間),安裝管理系統(tǒng),啟動管理系統(tǒng)。大同臺新管理系統(tǒng)地址則是:http://10.14.2.167:9292/qz/;
(2)在區(qū)域中心管理系統(tǒng)中注銷原有大同臺節(jié)點(IP地址:10.14.50.153);
(3)按(1)中地址進入大同臺管理系統(tǒng),點擊注冊至區(qū)域中心;
(4)在區(qū)域中心管理系統(tǒng)中進行審核,審核過程中選擇基礎數(shù)據(jù)下載到大同臺前兆服務器;
(5)大同臺前兆服務器注冊成功。
2012年,定襄臺前兆服務器硬盤故障導致技術系統(tǒng)無法運行,由于該服務器運行超過6年,配件停產(chǎn),廠家無法維修,而短時間內(nèi)臺站無法采購到新服務器用于替換,如果照此情形將嚴重影響臺站前兆數(shù)據(jù)匯集及報送。在這種情況下,筆者利用VMware虛擬機軟件,在區(qū)域中心只用了數(shù)小時就成功搭建了1臺地震前兆技術系統(tǒng),快速恢復了定襄臺前兆技術系統(tǒng),確保了定襄臺前兆數(shù)據(jù)及時匯集和報送。而后不久,大同臺前兆服務器也出現(xiàn)了故障,導致技術系統(tǒng)無法運行,同樣筆者利用VMware虛擬機軟件的克隆功能,在30分鐘內(nèi)就快速恢復了大同臺前兆技術系統(tǒng)。
目前,區(qū)域中心基于VMware Workstation軟件已搭建了兩套地震前兆技術系統(tǒng),一套是區(qū)域中心地震前兆技術系統(tǒng);另一套是臺站地震前兆技術系統(tǒng)。一旦區(qū)域中心或臺站地震前兆技術系統(tǒng)出現(xiàn)故障,能夠在最短時間內(nèi)進行恢復。
將VMware Workstation虛擬機應用到地震前兆技術系統(tǒng)中,由于脫離了對物理機的依賴,利用軟件提供的快照閃回功能,或在關閉虛擬機的情況下采用克隆方式,即可輕松實現(xiàn)地震前兆技術系統(tǒng)的備份和恢復。這兩種方式極大地縮短了地震前兆技術系統(tǒng)備份和恢復的時間,最大限度地提升和保障了地震前兆技術系統(tǒng)的不間斷和穩(wěn)定可靠的運行能力。
除了VMware Workstation虛擬機軟件,VMware公司還提供了另外一個軟件VMware Converter可以將物理機轉(zhuǎn)換為虛擬機,借助這種轉(zhuǎn)換軟件,可以將基于 Windows和Linux 的物理機及第三方映像格式轉(zhuǎn)換為 VMware 虛擬機(VMwar技術網(wǎng)站,2014),這樣就可以實現(xiàn)物理機服務器的遷移(李剛等,2011),減少部署技術系統(tǒng)的時間。下一步筆者將對VMware Converter軟件進行測試,嘗試將其運用到地震前兆技術系統(tǒng)中。
胡玉良,程冬焱,穆慧敏,王鵬偉, 2013. 山西地震前兆臺網(wǎng)系統(tǒng)運行維護. 山西地震,(3):44—48.
李剛,周利霞,宋軍,王曉磊,姚會琴,齊士超,卞真付,2011.基于VMware Esxi軟件的服務器虛擬化技術在天津地震監(jiān)測網(wǎng)絡中的應用. 震災防御技術,6(3):311—318.
錢崢,趙科科,許皓皓,2013. 虛擬化儀器在氣象的應用. 浙江氣象,33(2):20—24.
楊斌,馬朝暉,董翔,2012. 基于虛擬技術的地震應急指揮技術系統(tǒng)應用. 地震地磁觀測與研究,33(1):94—99.
VMware技術網(wǎng)站,2014. http://www.vmware.com/cn
Application of Virtual Technology on Seismic Network Technical System
Hu Yuliang1, 2), Cheng Dongyan1, 2)and Li Huiling1, 2)
1) Seismological Bureau of Shanxi Province, Taiyuan 030021, China?2) State Key Observatory of Shanxi Rift System, Taiyuan 030025, China
The reliable earthquake precursor technical system is fundamental to the emergency management. Taking Shanxi Earthquake Precursor Network as an example, we built up the seismic network technical system by using VMware, such as clone and snapshot. Because this technique is capable of speeding up emergency response capacity to deal with the system failure it is helpful to manage the system backup and to restore system rapidly.
VMware; Virtual Machine; Technology system; Clone; Backup and restore
中國地震局地震科技星火計劃項目“山西前兆臺網(wǎng)應急服務軟件研制”(XH14008Y)資助
2014-10-23
胡玉良,男,生于1981年。碩士研究生,山西省地震局監(jiān)測信息中心工程師。主要研究方向:前兆系統(tǒng)及儀器運行維護。E-mail:huyuliang130@163.com