薛 建 曲守寧
(濟(jì)南大學(xué)信息網(wǎng)絡(luò)中心,山東 濟(jì)南 250022)
將物理機(jī)遷移至VMware主機(jī)
薛 建 曲守寧
(濟(jì)南大學(xué)信息網(wǎng)絡(luò)中心,山東 濟(jì)南 250022)
虛擬化是數(shù)據(jù)中心架構(gòu)發(fā)展的必然趨勢(shì),而P2V(Physical to Virtual)又是實(shí)現(xiàn)虛擬化的第一步。P2V是指物理機(jī)到虛擬機(jī)的轉(zhuǎn)換。本文對(duì)P2V進(jìn)行簡(jiǎn)要闡述以后,又以實(shí)際工作經(jīng)驗(yàn)為背景,講述了如何完成Windows及Linux物理機(jī)遷移到VMware ESX虛擬機(jī)的方法。
虛擬化;P2V;遷移
虛擬化是服務(wù)器系統(tǒng)架構(gòu)發(fā)展的必然趨勢(shì),也是云計(jì)算的物理基礎(chǔ)。近年來(lái),虛擬化技術(shù)己經(jīng)進(jìn)入很多應(yīng)用領(lǐng)域,而且虛擬化技術(shù)也己經(jīng)慢慢被大眾所接受。服務(wù)器的虛擬化就是通過(guò)在硬件和軟件之間增加一個(gè)虛擬層的方法,將一臺(tái)物理服務(wù)器虛擬出多臺(tái)服務(wù)器,被虛擬出的服務(wù)器稱作虛擬機(jī),虛擬機(jī)是具有完整硬件功能的、運(yùn)行在一個(gè)隔離環(huán)境中的邏輯計(jì)算機(jī)系統(tǒng)。虛擬機(jī)上可以安裝不同類型的操作系統(tǒng)和應(yīng)用程序,以此來(lái)滿足不同的需求。
P2V是實(shí)現(xiàn)虛擬化的第一步,對(duì)于大中型數(shù)據(jù)中心來(lái)說(shuō),原來(lái)的物理服務(wù)器可能有幾十臺(tái)甚至上百臺(tái),如果全部服務(wù)器都重新安裝操作系統(tǒng)、數(shù)據(jù)庫(kù)、應(yīng)用軟件等,將是一件十分耗時(shí)耗力的工程。虛擬化技術(shù)的軟件方面,Vmware公司一直處在該行業(yè)的領(lǐng)先的地位,主要產(chǎn)品包括VMware workstation、VMware Server、ESX Server和Vsphere云操作系統(tǒng)等。本文根據(jù)作者單位的實(shí)際工作經(jīng)驗(yàn),講述如何完成物理機(jī)到VMware ESX虛擬機(jī)的轉(zhuǎn)換工作。
P2V是指遷移物理服務(wù)器上的操作系統(tǒng)及其上的應(yīng)用軟件和數(shù)據(jù)到虛擬機(jī)中的過(guò)程。主要是使用各種工具軟件,把物理服務(wù)器上的系統(tǒng)狀態(tài)和數(shù)據(jù)“鏡像”到虛擬機(jī)中,并且在虛擬機(jī)中“替換”物理服務(wù)器的存儲(chǔ)硬件與網(wǎng)卡驅(qū)動(dòng)程序。只要在虛擬服務(wù)器中安裝好相應(yīng)的驅(qū)動(dòng)程序并且設(shè)置與原來(lái)服務(wù)器相同的地址(如TCP/IP地址等),在重啟虛擬機(jī)服務(wù)器后,虛擬服務(wù)器即可以替代物理服務(wù)器進(jìn)行工作。
數(shù)據(jù)中心向虛擬化遷移,可以選擇在虛擬機(jī)上重新安裝服務(wù)器,這些工作將主要包括:操作系統(tǒng)安裝、數(shù)據(jù)庫(kù)安裝、應(yīng)用服務(wù)器安裝、應(yīng)用軟件安裝及系統(tǒng)環(huán)境配置、安裝完成后的測(cè)試等等。這些都是非常耗時(shí)耗力的工作,尤其是Linux或Unix的服務(wù)器,數(shù)據(jù)庫(kù)及應(yīng)用軟件安裝時(shí)要修改大量基于文本的配置文件,一旦有配置文件修改不到位,可能就影響系統(tǒng)正常運(yùn)行或系統(tǒng)無(wú)法在一個(gè)優(yōu)化的環(huán)境中運(yùn)行。還有,許多安裝了較早操作系統(tǒng)的服務(wù)器,重裝需要各種驅(qū)動(dòng)程序光盤(pán)等,這都增加了重新安裝系統(tǒng)的困難。
解決這個(gè)問(wèn)題的方法就是實(shí)行P2V遷移,即物理機(jī)向虛擬器的遷移,通過(guò)某種工具或方式,將物理機(jī)“克隆”到虛擬機(jī)上,這將大大降低遷移的工作量,并將系統(tǒng)停機(jī)時(shí)間降低到最短。
現(xiàn)在的P2V工具比較多,比較著名的有VMWare的VCenter Converter、Vizioncore的VConverter等,VMWare的VCenter Converter只適合Windows操作系統(tǒng)的P2V遷移,經(jīng)過(guò)我們的測(cè)試,其Linux P2V的成功率非常低。Vconvertor也是只支持windows的遷移,且是價(jià)格相對(duì)昂貴的產(chǎn)品。所以我們推薦VMWare公司免費(fèi)的VCenter Converter作為Windows系統(tǒng)的P2V工具。VCenter Converter也是虛擬機(jī)之間(V2V)進(jìn)行遷移的較好工具。
而Linux的P2V遷移歷來(lái)就是比較困難的,許多號(hào)稱可以完成Linux P2V的工具軟件,實(shí)際上因?yàn)槌晒β蕵O低、操作繁瑣,甚至對(duì)源服務(wù)器有風(fēng)險(xiǎn),實(shí)際的應(yīng)用價(jià)值不大。針對(duì)這種情況,經(jīng)過(guò)查閱資料,我們探索了一種通過(guò)Linux的nc工具和dd命令進(jìn)行Linux P2V的方法,在作者工作的單位已經(jīng)有多臺(tái)Linux服務(wù)器用此方法完成了P2V,遷移后虛擬器上的Linux系統(tǒng)運(yùn)行正常,原服務(wù)器上的各種進(jìn)程在新的虛擬機(jī)上也正常啟動(dòng),各種應(yīng)用也運(yùn)行正常。
P2V還有一種方式,即利用VMware的RDM(raw device mapping)功能,將原來(lái)安裝在FC SAN上的物理機(jī)轉(zhuǎn)換為VMware虛擬機(jī),這種方式遷移速度快,但只適用于原物理機(jī)是直接安裝在FC SAN上的情況。
支持Windows系統(tǒng)P2V的工具軟件主要有免費(fèi)的VMWare VCenter Converter和收費(fèi)的Vizioncore Vconverter。
VCenter Converter支持物理機(jī)、VMware和Microsoft虛擬機(jī)等格式的源進(jìn)行轉(zhuǎn)換。VMware vCenter Converter可以支持和識(shí)別大多數(shù)服務(wù)器硬件類型,并提供以下兩種遷移機(jī)制:熱遷移(實(shí)時(shí)遷移)和冷遷移(從WinPE啟動(dòng)光盤(pán)進(jìn)入,在不運(yùn)行操作系統(tǒng)的情況下遷移)。根據(jù)服務(wù)器上應(yīng)用的不同,可以選擇不同的遷移方式。
使用熱遷移時(shí),VMware vCenter Converter直接與源物理機(jī)上運(yùn)行的操作系統(tǒng)通信,因此沒(méi)有直接的硬件級(jí)依賴性。源物理機(jī)保持運(yùn)行,正常對(duì)外提供應(yīng)用服務(wù),這是熱遷移的優(yōu)勢(shì)。因?yàn)橐3謹(jǐn)?shù)據(jù)的一致性,所有熱切換適合那些數(shù)據(jù)修改相對(duì)不太頻繁的服務(wù)器,如web服務(wù)器、打印服務(wù)器、DNS和應(yīng)用服務(wù)器等,因?yàn)檫@些服務(wù)器的多數(shù)文件為靜態(tài)數(shù)據(jù)文件。
冷遷移可以更加有效地保證克隆過(guò)程成功,因?yàn)槔溥w移時(shí)操作系統(tǒng)是不運(yùn)行的,這樣保證了在轉(zhuǎn)化過(guò)程中沒(méi)有被打開(kāi)的文件,也就沒(méi)有數(shù)據(jù)修改發(fā)生。這種方式有效避免了壞數(shù)據(jù)塊的產(chǎn)生。對(duì)于那些數(shù)據(jù)交換頻繁的服務(wù)器來(lái)說(shuō)這是最佳的辦法(如數(shù)據(jù)庫(kù)、電子郵件服務(wù)器等),冷遷移的缺點(diǎn)就是要臨時(shí)中斷服務(wù)器的對(duì)外服務(wù)。
下面是使用VCenter Converter完成windows系統(tǒng)的P2V熱遷移的具體方法:
(1)從Vmware的官網(wǎng)下載并安裝好VCenter Converter并安裝在一臺(tái)windows的計(jì)算機(jī)上。
(2)確認(rèn)目標(biāo)ESX或ESXi服務(wù)器上有足夠的資源以完成P2V工作,主要是CPU、內(nèi)存和硬盤(pán),ESX或ESXi服務(wù)器上CPU內(nèi)核的空余數(shù)量要大于被遷移服務(wù)器的CPU數(shù)量。
(3)啟動(dòng)VCenter Converter,選擇源計(jì)算機(jī),選擇“已打開(kāi)電源的計(jì)算機(jī)”,就表示選擇物理機(jī),如圖1:
圖1 選擇并填寫(xiě)源計(jì)算機(jī)信息
(4)接下來(lái)以此選擇目標(biāo)虛擬機(jī)所屬的Vcenter服務(wù)器、目標(biāo)數(shù)據(jù)中心(DataCenter)、選擇目標(biāo)虛擬機(jī)名字、選擇ESX或ESXi服務(wù)器等。
(5)配置目標(biāo)虛擬機(jī)需要的資源,主要是選擇目標(biāo)服務(wù)器的VCPU核數(shù)、內(nèi)存大小、硬盤(pán)空間,VCPU和內(nèi)存可以根據(jù)應(yīng)用需求調(diào)整,硬盤(pán)空間選擇默認(rèn)即可。完成配置后啟動(dòng)P2V轉(zhuǎn)換.遷移完成以后要重啟轉(zhuǎn)換好的虛擬機(jī),調(diào)整系統(tǒng)設(shè)置(比如調(diào)整VCPU、內(nèi)存的大?。?,在虛擬機(jī)上安裝Vmware tools,檢查系統(tǒng)和應(yīng)用日志有無(wú)異常。
(6)檢測(cè)P2V是否成功,開(kāi)啟服務(wù),測(cè)試數(shù)據(jù)庫(kù)等、應(yīng)用軟件運(yùn)行是否正常運(yùn)行。
能完成Linux P2V的工具軟件相對(duì)較少,有許多號(hào)稱可以完成Linux P2V的工具軟件,實(shí)際上因?yàn)槌晒β蕵O低、操作繁瑣,甚至對(duì)源服務(wù)器有風(fēng)險(xiǎn),實(shí)際的應(yīng)用價(jià)值不大。這類軟件包括:EZP2V、Power Converter、Live view等。甚至使用VMWare的VCenter Converter進(jìn)行Linux的P2V時(shí)成功率都很低。
下面我們介紹利用NetCat工具結(jié)合Linux的dd命令,完成Linux服務(wù)器遷移的步驟?;驹砭褪抢胐d將源計(jì)算機(jī)的硬盤(pán)信息讀出后通過(guò)NetCat傳輸?shù)揭呀?jīng)建立好的虛擬機(jī)上,在虛擬機(jī)上用dd命令再輸出到硬盤(pán)。dd會(huì)隨著分區(qū)表拷貝所有的信息。
首先,在ESX server或ESXi server上建立好一個(gè)虛擬機(jī)備用,這個(gè)虛擬機(jī)的配置要和被遷移的服務(wù)器具有同樣的配置,如內(nèi)存大小、網(wǎng)卡數(shù)量,硬盤(pán)大小要稍大于被遷移的服務(wù)器的硬盤(pán)。
然后用Linux Live CD(如KNOPPIX等)重啟被遷移計(jì)算機(jī)(由于遷移最長(zhǎng)可能要用幾個(gè)小時(shí)的時(shí)間,所以應(yīng)在晚上進(jìn)行這項(xiàng)工作),等Live CD引導(dǎo)起來(lái)以后,用ifconfig配置網(wǎng)卡的IP地址。
同樣用Live CD啟動(dòng)虛擬機(jī)(通過(guò)在虛擬機(jī)上掛載LiveCD的ISO文件并重啟虛擬機(jī)實(shí)現(xiàn)),用ifconfig配置網(wǎng)卡地址,用ping測(cè)試被遷移計(jì)算機(jī)是否網(wǎng)絡(luò)可達(dá)。
接下來(lái),通過(guò)dd命令讀取物理機(jī)原始硬盤(pán)信息然后通過(guò)nc命令傳輸?shù)侥繕?biāo)虛擬機(jī)并再用dd命令寫(xiě)入虛擬機(jī)硬盤(pán):
在目標(biāo)虛擬機(jī)上運(yùn)行nc-l-p 9001|dd of=/dev/sda,其中sda是硬盤(pán)的設(shè)備名。
在源計(jì)算機(jī)上運(yùn)行dd if=/dev/sda|nc〈目標(biāo)虛擬機(jī)IP地址〉9001
根據(jù)硬盤(pán)大小和網(wǎng)絡(luò)環(huán)境不同,遷移進(jìn)行的時(shí)間會(huì)從幾十分鐘到幾個(gè)小時(shí),以300G硬盤(pán)為例,如果采用千兆以太網(wǎng),大概需2個(gè)小時(shí)。
做好P2V,就走出了虛擬化的第一步,相信將來(lái)會(huì)有更多好用的工具,幫助我們完成各種復(fù)雜系統(tǒng)的P2V工作。
[1]VMware英文站點(diǎn)[EB/OL].http://www.vmware.com/.
[2]Linux P2V[EB/OL]. http://conshell. net/wiki/index. php/ Linux_P2V.
[3]胡嘉璽.P2V,邁出虛擬化的第一步[J].程序員,2009,(10).
[4]李劍.P2V技術(shù)在校園信息化平臺(tái)中的引用[J].中國(guó)現(xiàn)代教育裝備,2011,(23).
[5]魯松.計(jì)算機(jī)虛擬化技術(shù)及應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2008.
The Convertion from Physical Machine to VMware Server
Xue Jian Qu Shouning
(Information Network Center of Jinan University,Jinan 250022,Shandong)
Virtualization is an inevitable trend for the data center architecture.P2V(Physical to Virtual)is the first step to achieve virtualization.P2V is the process of converting physical machines to virtual machine.First,this paper discusses P2V;then elaborates how to achieve the convertion from physical machine to VMware ESX server.
virtualization;P2V;Convertion
TP302
:A
:1008-66609(2015)04-0081-03
薛建,男,山東蒙陰人,本科,工程師,研究方向:計(jì)算機(jī)網(wǎng)絡(luò)。