宋玉泉
(天津市冶金科技信息研究所,天津300050)
天津市冶金集團(tuán)(控股)有限公司(以下簡(jiǎn)稱(chēng)集團(tuán))自動(dòng)化辦公系統(tǒng)開(kāi)發(fā)于2001年,分兩期進(jìn)行,分別采用了asp和.net兩種不同構(gòu)架,操作系統(tǒng)平臺(tái)也經(jīng)歷了Win2000Server到Win2003Server的過(guò)渡。系統(tǒng)設(shè)計(jì)之初,網(wǎng)絡(luò)環(huán)境相對(duì)比較簡(jiǎn)單,沒(méi)有木馬、惡意程序、黑客等泛濫的狀況,整體系統(tǒng)的網(wǎng)絡(luò)安全環(huán)節(jié)設(shè)計(jì)的比較薄弱。系統(tǒng)的開(kāi)發(fā)平臺(tái)為較早版本的VisualStudio集成開(kāi)發(fā)平臺(tái),使用的.net版本也較舊,造成了系統(tǒng)運(yùn)行平臺(tái)無(wú)法更新,甚至Win2003Server的部分補(bǔ)丁都無(wú)法進(jìn)行更新,否則就會(huì)造成系統(tǒng)運(yùn)行故障。針對(duì)以上問(wèn)題,提出了使用虛擬化技術(shù)實(shí)現(xiàn)搭建一臺(tái)安全性高的物理主機(jī)的方案,在其之上使用V Mware Workstation虛擬化軟件系統(tǒng)建立一臺(tái)We b服務(wù)器,優(yōu)化系統(tǒng)服務(wù),提高系統(tǒng)運(yùn)行效率,以此來(lái)實(shí)現(xiàn)辦公自動(dòng)化系統(tǒng)安全、運(yùn)行效率和兼容性方面的提升改造。
隨著互聯(lián)網(wǎng)在信息化社會(huì)中的廣泛應(yīng)用,網(wǎng)絡(luò)安全越發(fā)成為企業(yè)信息化項(xiàng)目后期的維護(hù)重點(diǎn),本單位信息化系統(tǒng)也不例外。近兩年來(lái),集團(tuán)網(wǎng)絡(luò)安全事件發(fā)生率逐年上升,盡管每次在故障發(fā)生時(shí)都能做到及時(shí)處理,減少宕機(jī)時(shí)間,但都沒(méi)能從根本上解決問(wèn)題。
辦公信息化系統(tǒng)存在的問(wèn)題如下:
(1)開(kāi)發(fā)應(yīng)用平臺(tái)處于2001年時(shí)的軟件水平。
(2)系統(tǒng)開(kāi)發(fā)語(yǔ)言與現(xiàn)如今使用的高版本瀏覽器存在不兼容性。
(3)操作系統(tǒng)為了保持信息化系統(tǒng)的正常運(yùn)行,不能更新安全補(bǔ)丁。
這些問(wèn)題綜合起來(lái),會(huì)導(dǎo)致集團(tuán)信息化系統(tǒng)頻繁遭到黑客攻擊和入侵,同時(shí)在辦公計(jì)算機(jī)不斷更新的形勢(shì)下,使用新版本瀏覽器瀏覽系統(tǒng)時(shí)會(huì)導(dǎo)致部分功能無(wú)法正常運(yùn)行。
對(duì)于以上問(wèn)題,筆者進(jìn)行了長(zhǎng)期地觀(guān)察、記錄、測(cè)試等工作,分別找到了這些問(wèn)題產(chǎn)生的原因,并制定了相對(duì)應(yīng)的解決方案。
項(xiàng)目實(shí)施之初,對(duì)于以上問(wèn)題,提出了第一套解決方案:
在網(wǎng)絡(luò)安全方面,計(jì)劃購(gòu)買(mǎi)企業(yè)級(jí)安全防火墻,解決黑客入侵的問(wèn)題。在辦公系統(tǒng)方面,聯(lián)系了當(dāng)時(shí)的開(kāi)發(fā)人員,計(jì)劃與其共同研究重寫(xiě)符合高版本平臺(tái)的代碼,安裝現(xiàn)今最高版本的操作系統(tǒng),從整體上解決所存在的問(wèn)題。但是經(jīng)過(guò)研究分析之后,此方案存在以下問(wèn)題:設(shè)備及軟件花費(fèi)數(shù)額巨大;系統(tǒng)代碼重寫(xiě)難度太高??傮w的解決成本過(guò)高,不符合現(xiàn)實(shí)情況,所以轉(zhuǎn)變思路著手定制第二套解決方案。
現(xiàn)有的整套系統(tǒng)在功能使用上并不存在硬傷,系統(tǒng)功能和性能完全可以滿(mǎn)足目前的辦公自動(dòng)化的需求,若將其棄用將非常可惜,同時(shí)會(huì)造成多次開(kāi)發(fā),浪費(fèi)人力和物力。第二套解決方案以實(shí)用為本,減少改造經(jīng)費(fèi)的原則,進(jìn)行了大量的技術(shù)資料查閱及測(cè)試工作。針對(duì)各個(gè)系統(tǒng)缺陷,最終將方案確定為:在現(xiàn)有服務(wù)器上進(jìn)行虛擬化云部署,把原有的操作系統(tǒng)及信息系統(tǒng)部署到現(xiàn)有服務(wù)器的高版本操作系統(tǒng)上,使原有系統(tǒng)能夠安全地被包裹在一個(gè)瘦服務(wù)器的外殼之中。實(shí)現(xiàn)此項(xiàng)技術(shù)使用了“V Mware”虛擬化軟件[1],此項(xiàng)技術(shù)目前為世界上較為先進(jìn)的虛擬化解決方案之一。經(jīng)過(guò)測(cè)試,原服務(wù)器可以滿(mǎn)足虛擬化系統(tǒng)的運(yùn)行,節(jié)省了購(gòu)買(mǎi)設(shè)備和重寫(xiě)代碼的兩項(xiàng)費(fèi)用。在原代碼不能滿(mǎn)足高版本瀏覽器的問(wèn)題上,對(duì)原代碼進(jìn)行了部分重寫(xiě),縮小了修改范圍,最終的重寫(xiě)行數(shù)大約為300行,涉及7個(gè)程序文檔。
在對(duì)系統(tǒng)進(jìn)行部署前,要對(duì)現(xiàn)有系統(tǒng)進(jìn)行完全的數(shù)據(jù)備份,包括數(shù)據(jù)庫(kù)、文檔、源碼等系統(tǒng)必要數(shù)據(jù)。在對(duì)數(shù)據(jù)進(jìn)行備份時(shí)使用GHOST軟件,可對(duì)現(xiàn)有硬盤(pán)分區(qū)做完全鏡像,生成G H O的鏡像文件,便于保存和提取,待系統(tǒng)恢復(fù)時(shí)可完全復(fù)原原有數(shù)據(jù)。
對(duì)于SQLServer的數(shù)據(jù)庫(kù)文件,采取的是系統(tǒng)自帶的維護(hù)計(jì)劃進(jìn)行完全備份。備份之后把數(shù)據(jù)文件一同鏡像到GHOST的備份文件當(dāng)中。同時(shí)復(fù)制出現(xiàn)有的MDF和LDF數(shù)據(jù)庫(kù)文件[2],這兩個(gè)文件在系統(tǒng)恢復(fù)時(shí)可以直接使用SQLServer中的附加數(shù)據(jù)庫(kù)的操作進(jìn)行數(shù)據(jù)恢復(fù)。
在安裝虛擬化系統(tǒng)之前,需要對(duì)服務(wù)器的硬盤(pán)空間進(jìn)行重新分配。至少需要規(guī)劃出3個(gè)存儲(chǔ)區(qū)域,分別是:物理主機(jī)的系統(tǒng)分區(qū)、虛擬主機(jī)數(shù)據(jù)文件的存儲(chǔ)分區(qū)、數(shù)據(jù)庫(kù)以及辦公系統(tǒng)數(shù)據(jù)的存儲(chǔ)區(qū)域。其中需要注意的是,物理主機(jī)能夠滿(mǎn)足Wi ndowsServer2003sp4的運(yùn)行即可,虛擬主機(jī)的存儲(chǔ)分區(qū)需要預(yù)留出一定的賦予空間,因?yàn)樘摂M主機(jī)在運(yùn)行過(guò)程中需要一定的多余空間來(lái)進(jìn)行系統(tǒng)緩存,同時(shí)虛擬主機(jī)的物理內(nèi)存也是建立在物理主機(jī)的磁盤(pán)空間上的,所以要預(yù)留出一定的空間。
規(guī)劃好存儲(chǔ)空間后進(jìn)行系統(tǒng)的安裝,安裝和部署[3]按照?qǐng)D1的順序進(jìn)行。
項(xiàng)目在進(jìn)行當(dāng)中也遇到了不少的技術(shù)難題。
首先是虛擬化系統(tǒng)的部署問(wèn)題,方案中需要應(yīng)用物理磁盤(pán)共享功能,原因是辦公系統(tǒng)的程序以及數(shù)據(jù)文件存放在物理主機(jī)的磁盤(pán)分區(qū)中??紤]到數(shù)據(jù)的安全性,沒(méi)有放入到虛擬主機(jī)的磁盤(pán)中,當(dāng)虛擬主機(jī)崩潰時(shí)數(shù)據(jù)能夠及時(shí)導(dǎo)出或讓備用主機(jī)使用。因此在虛擬主機(jī)上就需要配置物理主機(jī)的物理磁盤(pán)。在最初項(xiàng)目選型時(shí),還考慮了其他幾個(gè)虛擬化軟件,包括Microsoft Virtual PC和Virtual Box。由于必須啟用虛擬機(jī)下掛載物理磁盤(pán),所以最終選定了V Mware軟件。目前,只支持在Windows 7以下的服務(wù)器系統(tǒng)上啟用掛載物理磁盤(pán),如果操作系統(tǒng)不符合,在配置V Mware時(shí)報(bào)錯(cuò),無(wú)法正常運(yùn)行虛擬機(jī)系統(tǒng)。
其次是信息系統(tǒng)代碼的重寫(xiě),由于辦公系統(tǒng)開(kāi)發(fā)較早,但其所具備的功能非常符合集團(tuán)辦公的需求,為了節(jié)約開(kāi)發(fā)費(fèi)用,只能實(shí)行部分重寫(xiě)的方案,這就需要通讀、分析系統(tǒng)的全部1000多個(gè)程序文檔代碼,找到存在問(wèn)題的文檔,分析出有問(wèn)題的代碼行。同時(shí),原有的代碼開(kāi)發(fā)較早,存在著格式不規(guī)范、多種腳本語(yǔ)言交錯(cuò)編寫(xiě)的問(wèn)題,加大了讀代碼的難度。筆者分析之后,找到了問(wèn)題所在,最終完成了代碼的升級(jí)改寫(xiě)。
圖1 系統(tǒng)部署流程圖
被重寫(xiě)的部分關(guān)鍵代碼如下:
其中多個(gè)程序文檔的在線(xiàn)文本編輯器在I E 7版本瀏覽器以上無(wú)法正常顯示,只顯示出白頁(yè)。根據(jù)記錄分析出在線(xiàn)文本編輯器的部分J S代碼使用的語(yǔ)法過(guò)于陳舊,致使新版本瀏覽器無(wú)法運(yùn)行。針對(duì)此處問(wèn)題,對(duì)原有代碼進(jìn)行了重寫(xiě),順利地解決了該問(wèn)題。
此項(xiàng)目涉及技術(shù)范圍廣,解決難度大,歷時(shí)3個(gè)月完成了所有的軟件部署、代碼重寫(xiě)及測(cè)試等工作。目前已經(jīng)實(shí)施應(yīng)用,暫無(wú)部門(mén)反映存在問(wèn)題,順利地完成了該項(xiàng)目。
同時(shí),項(xiàng)目也存在著一定的不足,本次的提升改造是在原有網(wǎng)絡(luò)、設(shè)備的基礎(chǔ)之上進(jìn)行的,在老服務(wù)器上安裝運(yùn)行虛擬機(jī)雖解決了安全、兼容性的問(wèn)題,但一定程度上加重了服務(wù)器的負(fù)載,在工作的高峰時(shí)段會(huì)出現(xiàn)間斷性響應(yīng)慢的情況。針對(duì)這個(gè)現(xiàn)象,進(jìn)行了服務(wù)器系統(tǒng)以及I I S的配置優(yōu)化,使該問(wèn)題得到了一定的緩解。要想徹底解決該問(wèn)題,還需提升服務(wù)器的運(yùn)行性能,這需要在以后的改造中繼續(xù)進(jìn)行。
此次技術(shù)提升改造實(shí)現(xiàn)了“零花費(fèi)”,共為集團(tuán)節(jié)約了設(shè)備及開(kāi)發(fā)費(fèi)用近30萬(wàn)元。同時(shí),此項(xiàng)目為今后集團(tuán)的信息化指出了“虛擬化”的發(fā)展道路。
[1]360百科.V Mware[E B/O L].http://baike.so.com/doc/3037074.html.
[2]微軟Technet.在SQLServer中備份和還原數(shù)據(jù)庫(kù)[E B/O L].http://technet.micros of tcomzhcn/library/ms187048(S Q L.90).aspx.
[3]V Mware架構(gòu)及虛擬機(jī)系統(tǒng)安裝的實(shí)現(xiàn)[J].電腦編程技巧與維護(hù),2008(15):103-104.