版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、遷移VMware虛擬機(jī)到KVM 日期:2011-11-14瀏覽次數(shù):1344出處:舊M簡介:目前x86平臺上最流行的虛擬化軟件是VMware公司的系列產(chǎn)品,而基于開源技術(shù)的KVM虛擬化軟件也得到了廣泛的應(yīng)用。本文是虛擬化遷移技術(shù)系列文章的第三部分,詳細(xì)介紹了如何使用 virt-v2v開源工具或者手動(dòng)方法遷移創(chuàng)建在VMware軟件上的Window及Linux虛擬機(jī)到基于KVM的虛擬機(jī),并且從功能上比較了虛擬機(jī)系統(tǒng)遷移前后的變化, 最后總結(jié)了 VMware虛擬機(jī)到KVM遷移的不足和注意事項(xiàng)。前言隨著虛擬化技術(shù)的不斷發(fā)展,虛擬機(jī)的應(yīng)用也越來越廣泛。日常應(yīng)用中可能出現(xiàn)資源不足, 系統(tǒng)管理調(diào)整或者系統(tǒng)備
2、份等原因,希望將某一虛擬機(jī)從原來物理主機(jī)遷移到另一個(gè)物理主 機(jī)上,即 V2V (Virtual-to-Virtual )遷移。虛擬機(jī)的遷移需要物理主機(jī)上VMM ( VirtualMachine Monitor )的支持。相同類型 VMM之間,使用相同的 API接口,通常具有強(qiáng)大的 遷移能力。例如本系列第二篇文章介紹的KVM虛擬機(jī)之間的遷移,它支持三種遷移方式:離線遷移、在線共享存儲遷移和在線塊遷移。而不同的VMM之間,由于虛擬化實(shí)現(xiàn)技術(shù)的不同、開發(fā)廠商的不同、API接口的不同,使虛擬機(jī)遷移困難重重。本文分別介紹如何靜態(tài)遷移 VMware ESX/ESXi、VMwareWorkstation 及
3、 VMware Player 上的虛擬機(jī)到 KVM 主機(jī)。VMware虛擬機(jī)遷移到KVM的方式虛擬機(jī)V2V (Virtual-to-Virtual )遷移是在虛擬機(jī)之間移動(dòng)操作系統(tǒng)和數(shù)據(jù),照顧主機(jī)級別的差異和處理不同的虛擬硬件。V2V的遷移方法有兩種, 靜態(tài)遷移和在線遷移。靜態(tài)遷移(offline migration )也叫做常規(guī)遷移、離線遷移。在遷移之前將虛擬機(jī)暫停,同時(shí)拷 貝虛擬機(jī)鏡像和狀態(tài)到目的主機(jī)。相比較于在線遷移( online migration ),其缺點(diǎn)是靜態(tài) 遷移方式的過程需要顯式的停止虛擬機(jī)的運(yùn)行,而在線遷移的過程僅有非常短暫的停機(jī)時(shí)間,保證遷移過程中虛擬機(jī)服務(wù)的持續(xù)可用;
4、優(yōu)點(diǎn)是兼容性強(qiáng),不需要VMM的有統(tǒng)一的API接口,可以借助第三方工具輔助遷移。由于目前VMM的開發(fā)沒有統(tǒng)一的標(biāo)準(zhǔn),不同的虛擬化廠商,尤其是閉源的商業(yè)廠商開發(fā)的VMM各成一套,靜態(tài)遷移是解決不同類型虛擬機(jī)之間遷移的有效辦法。本文采用V2V靜態(tài)遷移的方法實(shí)現(xiàn) VMware虛擬機(jī)到KVM的遷移,同時(shí) 介紹開源遷移工具 virt-v2v的使用。VMware虛擬化產(chǎn)品及虛擬機(jī)文件VMware產(chǎn)品簡介VMware是全球虛擬化解決方案的領(lǐng)導(dǎo)廠商,提供了一套虛擬機(jī)解決方案,按產(chǎn)品特點(diǎn)可分 為如下四類。VMware ESX/ESXi:這個(gè)產(chǎn)品不需要安裝任何操作系統(tǒng),它本身就是一個(gè)用來管理硬件資源 的特殊的操作系
5、統(tǒng),所有的虛擬機(jī)都安裝在它的上面。ESXServer帶有遠(yuǎn)程web管理和客戶端管理功能。VMware Server、Workstation 和Fusion :與ESX相比,這三個(gè)產(chǎn)品都是要安裝在操作系 統(tǒng)上的。Server 和 Workstation 運(yùn)行在 Windows和Linux 上,F(xiàn)usion 運(yùn)行在蘋果的 MacOS上。VMwareVMotion :是VMware開發(fā)出的一項(xiàng)獨(dú)特技術(shù),它將服務(wù)器、存儲和網(wǎng)絡(luò)設(shè)備完全虛 擬化,使得正在運(yùn)行的整個(gè)虛擬機(jī)能夠在瞬間從一臺服務(wù)器移到另一臺服務(wù)器上。Virtual Center、Importer、Convertor、P2U Player :這
6、些是為了配合 VMware 虛擬引擎, 主要是為了配合 ESX開發(fā)的管理軟件和工具,這些工具中很多是免費(fèi)的。本文主要遷移創(chuàng)建在 VMware ESX/ESXi、VMware Workstation 和 VMware Player 上的虛擬機(jī)到KVM主機(jī)上,遷移后的虛擬機(jī)可以被開源的libvirt 軟件管理。VMware虛擬機(jī)文件介紹成功遷移虛擬機(jī)的一個(gè)重要的驗(yàn)證標(biāo)準(zhǔn)就是文件的正確性和完整性。下圖中列出與VMware虛擬機(jī)相關(guān)的文件,但是遷移 VMware虛擬機(jī)到KVM并不需要用到所有的文件。IVMware 虛擬機(jī)的文件主要包括 .nvram 文件,.vmx文件,vmdk 文件,.vswp 文件
7、,.vmss 文件,.vmsd 文件,.vmsn文件,.log文件,.vmxf文件。與遷移相關(guān)的最主要的是.vmx文件和.vmdk 文件。 .vmx文件:包括虛擬機(jī)所有配置信息與硬件設(shè)置。不管你對虛擬機(jī)的設(shè)置做了何種編輯,所有的信息都會以文本形式保存在這個(gè)文件里。如特殊硬件配置(例如 RAM大小,網(wǎng)絡(luò)接口信息,硬 盤驅(qū)動(dòng)信息,串行與并行信息),高級能源與資源配置、VMware工具選項(xiàng)及能源管理選項(xiàng)。遷移虛擬機(jī)時(shí),需要更改這個(gè)文件的格式到KVM支持的xml文件,并且重新確認(rèn)文件信息的有效性。 .vmdk文件:包含虛擬磁盤的信息。虛擬機(jī)的文件系統(tǒng)就建立在.vmdk文件上。遷移時(shí)需要拷貝這個(gè)文件到
8、KVM主機(jī),并且轉(zhuǎn)換成能夠被libvirt識別的文件格式。以下的虛擬機(jī)文件有些只在虛擬機(jī)處于的某種狀態(tài)時(shí)出現(xiàn),遷移過程中不會用到。例如當(dāng)虛擬機(jī)開啟時(shí)出 現(xiàn).vswp 文件,當(dāng)虛擬機(jī)暫停時(shí)出現(xiàn) .vmss文件。 .nvram 文件:包括虛擬機(jī)啟動(dòng)過程一部分的Phoenix BIOS。它類似于擁有 BIOS芯片的物理服務(wù)器,能夠設(shè)置硬件配置選項(xiàng)。如果刪除的話,在虛擬機(jī)啟動(dòng)時(shí)會自動(dòng)地重新創(chuàng)建。 .vswp file :這些文件的大小等于分配給虛擬機(jī)的內(nèi)存大小,再減去任何內(nèi)存預(yù)留(默認(rèn)是0)。這些文件通常創(chuàng)建在虛擬機(jī)里,但是只有當(dāng)ESX主機(jī)耗盡所有物理內(nèi)存時(shí)才使用。當(dāng)虛擬機(jī)關(guān)閉或暫停時(shí),這些文件將刪除
9、。 .vmss文件:這個(gè)文件用于虛擬機(jī)暫停時(shí),保存虛擬機(jī)的存儲內(nèi)容,以便在重新開始時(shí)繼續(xù)運(yùn)行。 .vmsd文件:這個(gè)文件與快照一起使用,用于存儲元數(shù)據(jù)和其他活動(dòng)在虛擬機(jī)里的每個(gè)快照的信息。這個(gè)文本文件在創(chuàng)建快照之前的初始大小是0字節(jié),并在每次創(chuàng)建或刪除快照時(shí)更新信息。 .vmsn文件:這個(gè)文件與快照一起使用,用于存儲虛擬機(jī)在進(jìn)行快照時(shí)的狀態(tài)。每在虛擬機(jī)上創(chuàng) 建一個(gè)快照就會生成一個(gè) .vmsn 文件,在刪除快照時(shí),文件自動(dòng)刪除。 .log文件:這些文件創(chuàng)建來用于存儲虛擬機(jī)的日志信息,并常常用于故障檢查。在虛擬機(jī)目錄里,有大量的這樣的文件。當(dāng)前的日志文件通常命名為vmware.log。 .vmxf
10、文件:這是一個(gè)附加配置文件,不用于 ESX,用于與 Workstation 兼容的目的。這個(gè)文 件是文本格式, Workstation用來聚合虛擬機(jī)(VM teaming ),將多個(gè)虛擬機(jī)分配成一組,作為 一個(gè)單一對象開啟或關(guān)閉、暫停或恢復(fù)它們?;仨撌譾irt-v2v 遷移 VMware ESX 虛擬機(jī)從 RHEL6 (Red Hat Enterprise Linux 6 )開始,RHEL 發(fā)行版中包含了 Red Hat 公司開發(fā)的 virt-v2v 工 具。它是由perl語言編寫的腳本,可以自動(dòng)化的將創(chuàng)建在Xen, KVM和VMware ESX 上的虛擬機(jī)拷貝到virt-v2v的主機(jī),并且自
11、動(dòng)的更改配置,使之能夠被 libvirt進(jìn)行管理。目前,virt-v2v支持靜態(tài)遷移下 列虛擬機(jī):RHEL4、RHEL5, RHEL6 , Windows XP , Windows Vista, Windows 7, Windows Server 2003 和 Windows Server 2008 。圖2. virt-v2v 遷移VMware/Xen/KVM虛擬機(jī)示意圖本節(jié)中,將分別介紹如何使用機(jī)到 KVM主機(jī)。遷移前的環(huán)境設(shè)置本文的KVM主機(jī)安裝最新的virt-v2v工具遷移 Vmware ESXi 上的RHEL虛擬機(jī)和Windows 7 虛擬RHEL6.1操作系統(tǒng)(發(fā)布于2011年持 K
12、VM 虛擬機(jī)的軟件 qemu-kvm、libvirt、virt-manager 和 virt-v2v5月19日)。這樣,最基本的支 工具都在發(fā)行版中安裝了。清單1.支持KVM 虛擬機(jī)的軟件包rootlocalhost # rpm -qa qemu-kvmqemu-kvm--2.160.el6.x86_64rootlocalhost # rpm -qa libvirtlibvirt-0.8.7-18.el6.x86_64rootlocalhost # rpm -qa virt-managervirt-manager-0.8.6-4.el6.noarchrootlocalhost
13、# rpm -qa virt-v2vvirt-v2v-0.7.1-3.el6.x86_64為了使virt-v2v工具能夠自動(dòng)化的遷移 VMware ESX 虛擬機(jī),盡量減少手動(dòng)干預(yù),還需要在KVM主機(jī)上做一些設(shè)置。1.安裝支持Windows 虛擬機(jī)遷移的軟件。對于Windows虛擬機(jī)的遷移需要安裝libguestfs-winsupport包來支持 NTFS文件系統(tǒng)和 virtio-win 包來支持Windows para-virtualized存儲和網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)。清單2.安裝 Windows 虛擬機(jī)遷移的支持包rootvictory4 v2v# rpm -ivhlibguestfs-winsu
14、pport-1.0-7.el6.x86_64.rpm virtio-win-1.2.0-1.el6.noarch.rpmPreparing.# 100%1:virtio-win # 50%2:libguestfs-winsupport # 100%2.創(chuàng)建KVM主機(jī)存儲域virt-v2v在遷移虛擬機(jī)的過程中,需要拷貝被遷移虛擬機(jī)到KVM主機(jī)預(yù)先定義的存儲池中。存儲池可以用libvirt工具創(chuàng)建。最簡單的方法就是使用virt-manager來創(chuàng)建新的存儲池。本文中創(chuàng)建了一個(gè)文件目錄類型的存儲池,位置在 KVM主機(jī)系統(tǒng)的 /home/images/migration 目錄。圖3.使用 virt-m
15、anager創(chuàng)建本地存儲域3.創(chuàng)建KVM 主機(jī)網(wǎng)絡(luò)接口虛擬機(jī)在遷移之后將連接KVM主機(jī)網(wǎng)絡(luò),因此主機(jī)必須有一個(gè)與之相匹配的網(wǎng)絡(luò)接口,比如說網(wǎng)橋。Linux系統(tǒng)上有很多工具可以創(chuàng)建網(wǎng)橋,其中 RHEL6.1發(fā)行版上的virt-manager已經(jīng)支持創(chuàng)建和管理網(wǎng)橋。 本文創(chuàng)建了網(wǎng)橋 br0,并且綁定在 eth0的接口上,具體配置如下圖。I圖4.使用virt-manager 創(chuàng)建網(wǎng)橋4.創(chuàng)建配置文件 virt-v2v.conf在virt-v2v.conf文件中設(shè)置 virt-v2v遷移的規(guī)則,包括網(wǎng)絡(luò)接口遷移后的映射,遷移的方式,存儲的位置, 輸出的格式等等。這些規(guī)則也能以命令行參數(shù)的方式輸入,如
16、-network , -o, -os, -of等。virt-v2v 遷移VMware虛擬機(jī)的步驟在KVM主機(jī)上完成上節(jié)的準(zhǔn)備工作后,可以正式開始遷移VMware ESX 上的虛擬機(jī)了。下面是遷移的具體步驟:1. 如果虛擬機(jī)上安裝了 VMware Tools,必須先卸載它。因?yàn)?KVM的虛擬機(jī)不支持 VMware Tools 里 面的虛擬驅(qū)動(dòng)。2. 在VMware ESX 上停止等待遷移的虛擬機(jī),因?yàn)?virt-v2v只支持靜態(tài)遷移。3. 為自動(dòng)登錄VMware ESX服務(wù)器創(chuàng)建.netrc文件。VMware ESX服務(wù)器的連接需要授權(quán),virt-v2v支 持密碼方式的授權(quán)連接,可以從$HOME
17、/.netrc 文件中讀取密碼并自動(dòng)登錄。如果主機(jī)系統(tǒng)沒有這個(gè)文件,就手動(dòng)創(chuàng)建它。并且.netrc 文件需要0600權(quán)限,使virt-v2v工具可以正確讀取它。清單3. .netrc文件的格式 machine login root password xxxxxx4.使用virt-v2v命令進(jìn)行遷移。VMware ESX 服務(wù)器采用 HTTPS連接方式,連接時(shí)需 要配置SSL證書。本文通過添加?no verify=1'至V VMware服務(wù)器的URI連接中,來 關(guān)閉證書檢查。清單4. virt-v2v 遷移命令及參數(shù)virt-v2v -ic esx:/ -os pool -bridge
18、brname vm-name -是 ESX 服務(wù)器主機(jī)名或 IP Addresspool -本地主機(jī)存儲池,用來保存鏡像brname -本地主機(jī)網(wǎng)橋名字,用來連接遷移后的虛擬機(jī)網(wǎng)絡(luò)vm-name -虛擬機(jī)的名字5. 遷移成功后,虛擬機(jī)出現(xiàn)在virt-manager 管理的虛擬機(jī)列表中。通過 virt-manager 工具啟動(dòng)虛擬機(jī)。6. 檢查遷移后的虛擬機(jī)的設(shè)備驅(qū)動(dòng)。如果需要,重新安裝虛擬設(shè)備驅(qū)動(dòng)。7. 驗(yàn)證遷移后的虛擬機(jī)的配置和系統(tǒng)是否和遷移之前一致。Zvirt-v2v遷移實(shí)例:Linux 虛擬機(jī) RHEL5.5本例將遷移創(chuàng)建在 VMWare ESXi服務(wù)器上的 RHEL5.5虛擬機(jī)到 KV
19、M主機(jī)上,并使遷 移后的虛擬機(jī)被 libvirt管理。本例的環(huán)境中,VMware ESXi服務(wù)器和KVM主機(jī)通過網(wǎng) 絡(luò)連接,虛擬機(jī)鏡像被各自的存儲管理。圖5. virt-v2v 遷移RHEL5虛擬機(jī)的環(huán)境下面就開始正式的遷移:1. 在 VMware ESXi 上檢測 RHEL5.5 虛擬機(jī),如果安裝了VMware Tools ,先卸載它。2. 在VMware ESXi 上關(guān)閉RHEL5.5 虛擬機(jī)。3. 在KVM主機(jī)上創(chuàng)建或修改$HOME/.netrc 文件,添加VMware ESXi 服務(wù)器的用戶名和密碼。清單5.修改.netrc 文件rootlocalhost home# cat /.ne
20、trcmachine 13 login root password xxxxxxrootlocalhost home# chmod 0600 /.netrc4.開始遷移虛擬機(jī)。KVM的存儲是遷移前準(zhǔn)備好的存儲域migration ,文件格式采用libvirt支持的qcow2,網(wǎng)絡(luò)連接方式與 VMware虛擬機(jī)相同,采用網(wǎng)橋。清單6.遷移RHEL5.5 虛擬機(jī)rootlocalhost # virt-v2v -ic esx:/93/?no_verify=1 -os migration -of qcow2 -bridge br0 RHEL5.5Using C
21、PU model "cpu64-rhel6"RHEL5.5_RHEL5.5: 100% =D 0h22m52sUsing CPU model "cpu64-rhel6"virt-v2v: RHEL5.5 configured with virtio drivers參數(shù)說明-os migration:遷移虛擬機(jī)的鏡像文件到主機(jī)上的存儲池-of qcow2 :轉(zhuǎn)換遷移后虛擬機(jī)的文件格式-bridge br0:設(shè)置遷移后虛擬機(jī)的網(wǎng)絡(luò)映射到網(wǎng)橋br0RHEL5.5:Vmware ESXi上虛擬機(jī)的名字,遷移后保持名字一致5.在KVM主機(jī)上啟動(dòng) virt-mana
22、ger軟件,就會發(fā)現(xiàn)遷移后的虛擬機(jī)已經(jīng)被libvirt管理了。圖6. virt-manager管理遷移后的 RHEL5.5 虛擬機(jī)6.深入比較遷移前在VMware ESXi上的虛擬機(jī)和遷移后在KVM上的虛擬機(jī)。表 1. RHEL5.5虛擬機(jī)遷移前后在 VMware ESXi 和KVM上的比較RHEL5.5VMware ESXiKVM/Libvirt結(jié)論CPUsIntel Xeon 5160 x2QEMU vCPU數(shù)量一致,類型和轉(zhuǎn)化為虛擬 CPU ,主頻和支持的flags(cpu64-rhel6)化Memory1384M1384M數(shù)量一致Hard Disk18GB ,18GB大小一致,總線接口
23、和文件系統(tǒng)轉(zhuǎn)換為適合libvirt的類型LSI Logic SCSIvirtio SCSIVMDKqcow2CDROMIDEIDE類型一致NetworkMACMACMac相同,網(wǎng)卡類型和連接方式轉(zhuǎn)換為適合libvirt的類型Adaptor00:0c:29:a9:7b:8300:0c:29:a9:7b:83Type: e1000Type: virtiovSwitch0bridge br0DHCPDHCPVideo CardVmware SVGAModel: Cirrus轉(zhuǎn)換為libvirt支持的類型4M Video RAM9M RAM系統(tǒng)用戶root/admin001root/admin001一
24、致磁盤分區(qū)VolGroup00VolGroup00邏輯卷一致,物理盤符有變化。/dev/sda/dev/vda從表中的比較看出,RHEL5.5從VMware ESXi服務(wù)器遷移到 KVM主機(jī)上后,由于Hypervisor的不同,硬件發(fā)生了很大的變化。但是virt-v2v工具很好的解決的這個(gè)問題,使用virtio虛擬設(shè)備驅(qū)動(dòng)使 RHEL5.5系統(tǒng)遷移后能夠流暢的運(yùn)行。除了 RHEL5 , virt-v2v還支持RHEL4及RHEL6版本的遷移。virt-v2v遷移實(shí)例: Windows 虛擬機(jī) WinXP, Win7本例中將介紹如何使用virt-v2v工具遷移創(chuàng)建在 VMware ESXi上的W
25、indows 虛擬機(jī),包括 Windows XP SP3 32bit 中文版和 Windows 7 Professional 32bit 中文版。本節(jié)的環(huán) 境中,KVM 主機(jī)上安裝了 virt-v2v 及相應(yīng)的支持包 libguestfs-winsupport 和virtio-win 。VMware ESXi服務(wù)器和KVM主機(jī)通過網(wǎng)絡(luò)連接,虛擬機(jī)鏡像被各自的存儲管理。圖7. virt-v2v 遷移Windows虛擬機(jī)的環(huán)境Ne衲巾I下面是正式的遷移步驟:1. 在 VMware ESXi 上檢測 WinXP 和 Win7虛擬機(jī),如果安裝了VMware Tools ,先卸載它。2. 在 VMwar
26、e ESXi 上關(guān)閉 WinXP 和 Win7 虛擬機(jī)。3. 在KVM主機(jī)上創(chuàng)建或修改 $HOME/.netrc 文件,添加VMware ESXi 服務(wù)器的用戶名 和密碼。4. 開始遷移虛擬機(jī)。KVM的存儲是遷移前準(zhǔn)備好的存儲域migration ,文件格式采用libvirt支持的qcow2,網(wǎng)絡(luò)連接方式與 VMware虛擬機(jī)相同,采用網(wǎng)橋。清單7.遷移 WinXP 虛擬機(jī)rootlocalhost # virt-v2v -ic esx:/93/?no_verify=1 -os migration -of qcow2 -bridge br0 WinXPUsing CPU m
27、odel "cpu64-rhel6"WinXP_WinXP: 100% =D0h11m13sUsing CPU model "cpu64-rhel6"virt-v2v: WARNING: There is no virtio net driver available in the directoryspecified for this version of Windows. The guest will be configured witha rtl8139 network adapter, but no driver will be installed
28、 for it.If the rtl8139 driver is not already installed in the guest, you must installit manually after conversion.virt-v2v: WinXP configured with virtio storage only.清單8.遷移Win7虛擬機(jī)rootlocalhost # virt-v2v -ic esx:/93/?no_verify=1 -os migration -of qcow2 -bridge br0 Win7Using CPU model "
29、;cpu64-rhel6"Win7_Win7: 100% = =D 0h35m41sUsing CPU model "cpu64-rhel6"virt-v2v: Win7 configured with virtio driversrootlocalhost #5.遷移完成后,在 KVM 主機(jī)上啟動(dòng) virt-manager 軟件,會發(fā)現(xiàn)遷移后的Windows虛擬機(jī)已經(jīng)被libvirt管理了。6.在KVM上啟動(dòng)虛擬機(jī)后,由于更新了一些虛擬硬件設(shè)備,可能需要重新安裝驅(qū)動(dòng)程序和重啟系統(tǒng)。7.深入比較遷移前在 VMware ESXi上的虛擬機(jī)和遷移后在KVM上的虛擬機(jī),
30、表2. WinXP 虛擬機(jī)遷移前后在VMware ESXi 和KVM 上的比較WinXPVMware ESXiKVM/Libvirt結(jié)論CPUsIntel Xeon 5160Intel Pentium II 處理器數(shù)量一致,類型和轉(zhuǎn)化為虛擬CPU ,主頻和支持的變化flagsMemory1256M1256M數(shù)量一致Hard Disk8GB ,Vmware Virtual IDEVMDK8GBVirtio SCSIqcow2大小一致,總線接口和文件系統(tǒng)轉(zhuǎn)換為適合libvirt的類型CDROMVMware IDEIDE類型一致NetworkAdaptorMAC 00:0c:29:83:86:d7T
31、ype: PCNETvSwitch0DHCPMAC 00:0c:29:83:86:d7Type: rtl8139bridge br0DHCPMac相同,網(wǎng)卡類型和連接方式轉(zhuǎn)換為適合libvirt的類型Video CardVmware SVGA4M Video RAMModel: Cirrus9M RAM轉(zhuǎn)換為libvirt支持的類型系統(tǒng)Administrator/admin001Administrator/admin001一致磁盤分區(qū)C:C:一致D:D:表3. Win7 虛擬機(jī)遷移前后在 VMware ESXi 和KVM 上的比較Win7VMware ESXiKVM/Libvirt結(jié)論CPUs
32、Intel Xeon 5160 x 2X86 family 6 x 2數(shù)量一致,類型和轉(zhuǎn)化為虛擬CPU,主頻和支持的flags變化Memory1024M1024M數(shù)量一致Hard Disk24GB ,24GB大小一致,總線接口和文件系統(tǒng)轉(zhuǎn)換為適合libvirt的類型LSI Logic SCSIVirtio SCSIVMDKqcow2CDROMVMware IDEIDE類型一致NetworkMAC 00:0c:29:64:de:6aMAC 00:0c:29:64:de:6aMac相同,網(wǎng)卡類型和連接方式轉(zhuǎn)換為適合libvirt的類型AdaptorType: e1000Type: virtiovS
33、witch0bridge br0DHCPDHCPVideo CardVmware SVGAModel: Cirrus轉(zhuǎn)換為libvirt支持的類型8M Video RAM9M RAM系統(tǒng)Administrator/admin001Administrator/admin001一致磁盤分區(qū)C:C:一致D:D:從表中的比較看出, Windows 虛擬機(jī)從 VMware ESXi服務(wù)器遷移到 KVM主機(jī)上后,由 于Hypervisor的不同,硬件發(fā)生了很大的變化。Virt-v2v工具盡量在 KVM虛擬機(jī)上使用Virtio虛擬設(shè)備加速系統(tǒng)的IO設(shè)備。WinXP虛擬機(jī)的遷移后,使用了磁盤的 virtio驅(qū)
34、動(dòng)而網(wǎng)絡(luò)設(shè)備使用默認(rèn)的rtl8139。 Win7虛擬機(jī)的遷移后磁盤和網(wǎng)絡(luò)全部使用virtio的驅(qū)動(dòng)。Virt-v2v 還支 Windows Vista , Win2003 , Win2008 虛擬機(jī)從 VMware ESX/ESXi 上的遷 移,步驟和 WinXP , Win7虛擬機(jī)類似。virt-v2v遷移小結(jié)virt-v2v工具自動(dòng)化的解決了VMware ESX/ESXi 服務(wù)器上的 RHEL虛擬機(jī)和 Windows虛擬機(jī)遷移到KVM主機(jī)的問題。而且在遷移的過程中盡量的使用virtio驅(qū)動(dòng)提高IO設(shè)備的性能。但是,virt-2v2工具也有一些局限性。比如只支持虛擬機(jī)關(guān)機(jī)情況下的靜態(tài)遷移;
35、只支持 RHEL虛擬機(jī)和 Windows虛擬機(jī)的遷移;不支持 VMware虛擬機(jī)快照的遷移。 對于創(chuàng)建在 VMware Workstation/Player 上的虛擬機(jī),目前 virt-v2v 還不支持自動(dòng)遷移。 但是我們可以用手動(dòng)遷移的方法完成到KVM主機(jī)的遷移。請看下節(jié):手動(dòng)遷移VMwareWorkstation/Player上的虛擬機(jī)到 KVM 。手動(dòng)遷移VMware Workstation/Player上的虛擬機(jī)到KVM從物理機(jī)的文件系統(tǒng)看,VMware虛擬機(jī)是由一組文件組成。這些文件可能集中存儲在存儲服務(wù)器上,如VMware ESX/ESXi ,也可能存儲在本地,如 VMware W
36、orkstation/Player 。關(guān)閉虛擬機(jī)的情況下,這些文 件內(nèi)容不會改變。所以我們可以用手動(dòng)遷移的方法,拷貝這些文件到KVM主機(jī)并且轉(zhuǎn)換這些文件的格式或內(nèi)容,使libvirt能夠管理和識別。這樣就完成了 VMware虛擬機(jī)的手動(dòng)遷移。手動(dòng)遷移的準(zhǔn)備工作在VMware虛擬機(jī)眾多的文件中,最重要的是虛擬機(jī)鏡像文件.vmdk和系統(tǒng)配置文件.xml。所以手動(dòng)遷移就是要分別處理這兩種文件。 合并分散的vmdk鏡像文件。在VMware Workstation上創(chuàng)建虛擬機(jī)的時(shí)候,可以選擇存儲虛擬磁盤為一個(gè)文件或多個(gè)文件。但是libvirt不能管理多個(gè)文件組成的磁盤鏡像,所以需要在遷移前合并這些文件為
37、一個(gè)單獨(dú)的文件。VMware Workstation自帶了離線的磁盤管理工具vmware-vdiskmanager.exe 來合并 vmdk 文件。圖8.多個(gè)文件存儲的 VMware虛擬機(jī) qemu-img 轉(zhuǎn)換 vmdk的文件格式。KVM 王機(jī)上女裝 qemu-img 包,可以祭看并轉(zhuǎn)換 vmdk 文 件到raw/qcow2 文件格式。 創(chuàng)建xml文件。VMware的系統(tǒng)配置文件是 vmx,必須轉(zhuǎn)換成libvirt能夠識別的xml格式。一種方法是根據(jù) VMware虛擬機(jī)的硬件信息,手動(dòng)創(chuàng)建一個(gè)新的xml文件;另一種方法是利用工具輔助轉(zhuǎn)換 vmx文件。比如 virt-goodies/vmwar
38、e2libvirt工具,可以從下面link下載安裝 virt-goodies : 下面我們以 VMware Workstations 上的 SUSE Linux Enterprise Server 11 SP1虛擬機(jī)和 VMwarePlayer上的 Windows 2008 R2虛擬機(jī)為例,詳細(xì)介紹遷移到KVM 主機(jī)的步驟。手動(dòng)遷移VMware Workstation 上的SLES11SP1虛擬機(jī)VMware Workstation軟件安裝在一個(gè) Windows XP 系統(tǒng)上,然后創(chuàng)建SLES11SP1 虛擬機(jī)。虛擬機(jī)的文件都存儲在本地。KVM主機(jī)通過網(wǎng)絡(luò)連接到Window XP 系統(tǒng)。圖9,
39、手動(dòng)遷移 SLES11SP1 虛擬機(jī)的環(huán)境Network.上檢查SLES11SP1虛擬機(jī),如果安裝了 卸載它。vmdk文件中,所以需要在遷移前合并他遷移的過程如下:1. 登錄宿主機(jī) Windows XP 系統(tǒng),在 VMware Workstation VMware Tools ,以 root 用戶運(yùn)行 vmware-uninstall-tools.pl2. 關(guān)閉SLES11SP1 虛擬機(jī)。3. 檢查虛擬機(jī)的鏡像文件。本例中,虛擬機(jī)的鏡像存儲在多個(gè) 們。I合并多個(gè)vmdk文件圖 10.用 vmware-vdiskmanager.exet:lkjCMfnehl-!; wml St tl insr&
40、amp;xAdiriliiit;trftt«p, 1 BH 3LC6714551EMy Ducumentuvlly Uwtiifll £SP1Vo lume inC Trnr; noUq lune Seri 就 J. NiLnbci' 土皆 68U&-RKBDPirectoi* fll C: <Dccnnertt z Ann SottmXflnan j;;t rjitor» i Bh JLC67J.4貝LExHy t sMc hin” ii、El*E£"l 1 史PJ.lak 7/tSy*2Btl7/1SZ20117/l&
41、#171;/2tT£lStt/HHl 1111132 z f ? 333 ijyu<D1B>一DIHH, 4眼714 4駐U 學(xué)膈 h IWtlA H Jc 心MIRLK7Z1S2B117/lSlftlll 7/i8Z28ii Tzieaoii 7/1HZ2011 7/1820117zlflz20i1 7/lfiz2BL 1 7/18PL 17/lMzatkLl 7/l«z20l1 ?«/齡113 3333 3 333 33 333 33 49 333UU&S.HSSUMR 翻tiBu&eRIS 打IjefiHHHHHrlHnHrlMr
42、lHH HHnrlHtlHlEz PFnrFPPFFFFPFPPPPFFPFPii 1 lut 1 lli xllnils 1 111 3 3m 3 132 33333533s J30b仲 4 £60 孫4,紐8 327.EJBB3 29奶可 327&83327.6S0 327.&RH :F.Wl 3 27680 327,&80S.S3G 4,右84 睥(D1B>DE盼?,&JZG3227Lautonsrtr , f Ip autoInst.ie SLEUllSri rundk gLEEHSPl 湖曜 NhdK KhFSI I J?P1 -sO0
43、3 . v ndl< SLE&11EP1 -iKH4. undk SLESllSri-cUldb. unrik Si.ESllPl -£«06.undh SLPSlf gpf 印.un4k SKEStiSFi -?eea村士 SLEE11&P1 stiE.unilk SLHSllEPl-HlW."£”gPl-*Eug SLES11&P1 ,mvi SLESllSPl.vndHSLES1ISPIlekSLESimPT .sM SLES11&P1 -g>: SLLUllSPl.-unM.Lck 3LESllSnTv
44、«Mf viiHjre _16«<hytesb vtes f 'c<iSfl-tt in<f= fr<lminx 3 fjrittiii'- T UH -SlCGllCSlEhv Dncumcnti; ptriHg L i t i«s>-SL"ES 11SFl > "C : SPi-tt g?'n F ; Iwii'UMqrfl rti'UblL,"Uui-kstr ion "trxf?" -r Sl.ES L1SFI Fvndk -t F
45、l S LES(. 1S Pl - s. yndli3j*9i*Cing d i-ck *SLES11SFL-e ingl#. unidk*Con vert: 1C( 成 ori#:XE'-fcuet 1. di = Jt c enu c ro Ion s uccessF u 1 .4,拷貝合并后的 vmdk文件到 KVM 主機(jī)上。本例中,拷貝文件SLESIISPI-single.vmdk至V KVM 主機(jī)的 /home/images/migration目錄下。并且使用 qemu-img 工具將 vmdk 文件轉(zhuǎn)換成 qcow2 格式的文件??梢钥闯觯D(zhuǎn)換后鏡像文件SLESIISPI-
46、single.img的實(shí)際大/J、3.9G和最大范圍20G沒有改變,僅僅是文件系統(tǒng)類型變化了。清單9.轉(zhuǎn)換 vmdk 文件到 qcow2 格式rootlocalhost migration# qemu-img info SLESIISPI-single.vmdkimage: SLESIISPI-single.vmdkfile format: vmdkvirtual size: 20G (21474836480 bytes)disk size: 3.9Grootlocalhost migration# qemu-img convert -f vmdk -O qcow2 SLESIISPI-sin
47、gle.vmdk SLESIISPI-single.imgrootlocalhost migration# qemu-img info SLESIISPI-single.imgimage: SLESIISPI-single.imgfile format: qcow2virtual size: 20G (21474836480 bytes)disk size: 3.9Gcluster_size: 655365.轉(zhuǎn)換vmx文件。本例介紹第一種方法,即手動(dòng)創(chuàng)建vmx文件。首先要找出 SLES11SP1虛擬機(jī)全部 虛擬設(shè)備信息,這些信息可以從VMware Workstation的管理界面和虛擬機(jī)系統(tǒng)的
48、系統(tǒng)信息獲得;然后在KVM 主機(jī)上的 virt-manager 中,以第 4步轉(zhuǎn)換完成的鏡像文件 SLES11SP1-single,img 為基礎(chǔ)創(chuàng)建一 個(gè)虛擬機(jī);最后添加與 VMware相同或類似的硬件,并且盡量保證數(shù)量、類型和配置的一致,包括 CPU 和MEM數(shù)量、系統(tǒng)構(gòu)架、網(wǎng)絡(luò)類型、 MAC地址等。圖 11. VMware Workstation上查看虛擬機(jī)的硬件信息VirtuMM就Irhn 咨:偵wne ctfcn;:Dei«5umyV Memory766 M3PtwcsScrsZDisk fileSLESHSPl.vmdkHardDisk(5t:5I) 20 GB:j 伽(
49、DC£) Auto detect 日 FloppyA 血 detectHttfflxkAdterfJAT僉 U5& CuntroFcrPresefi t:電丐 mnd CardAlin dataztQoisplayAufeo detectCapacityCurrent 岫 3.9GBSystcJrlFrfte: GUMaxtmuii 5i;B; NO 由Disk Inform IonDisk 叩dE K net preilloctcd for this h血 di#Hard diskonhen性日舊 stored ri mutjple files.Advanced.-圖12,
50、手動(dòng)配置 KVM虛擬機(jī)SLCSL13P1 VlrtuiJ MachineFite virtual MKhine MJew Send Key竺 M蛔virtual DltPerform jn( pprwewarMemory0-Dot Options-Tsrg-et device: l&E Disk 1&od憧色 path Ih.omfpm 犯&ym iy r ailon/S LK1 IS Pl-sing Ie JmgStorage sLse:FadtinrtjcSh #reabie!20 0& GBIOE CDFOM 11 Floppy 1F NC .5B:I6J
51、3* Mouse拜口 5l邱仆匚|f Sound K137O0 Eendll祀.如日詢時(shí)m vid+ctf Centre Iler IDE| Controiler Floppyp Advanced ofitions3匚he modeformatnoneDisk 旬5.'Tip; rrers to iraformotion seen frrn the hg OS, J' white 'targ et" refers tG infcrmwtroTi 5een frqin the guet 05Add 占般flemewert6.設(shè)置完成后,自動(dòng)創(chuàng)建 KVM 虛擬機(jī)的
52、配置文件 /etc/libvirt/qemu/SLES11SP1.xml ,并且 virt-manager 可以管理這個(gè) SLES虛擬機(jī)了。在libvirt上啟動(dòng)虛擬機(jī),手動(dòng)配置虛擬機(jī)系統(tǒng)以適應(yīng)新的硬件。7,深入比較遷移前在 VMware Workstation上的虛擬機(jī)和遷移后在KVM上的虛擬機(jī)。表4. SLES11SP1虛擬機(jī)遷移前后在VMware Workstation 和 KVM 上的比較SLES11SP1VMware WorkstationKVM/Libvirt結(jié)論CPUsIntel Core2 x 2QEMU vCPUx2數(shù)量一致, 化類型和轉(zhuǎn)化為虛擬CPU ,主頻和支持的flag
53、sMemory768M768M數(shù)量一致Hard Disk20GBLSI Logic SCSIVMDK20GBIDEqcow2大小一致,總線接口和文件系統(tǒng)轉(zhuǎn)換為適合libvirt的類型CDROMIDEIDE類型一致Floppy類型一致USB ControllerUSB 2.0Physical USB devicelibvirt 對USB的支持較弱NetworkAdaptorMAC00:0c:29:68:16:33Type: PCNetNATVirtual DHCPMAC00:0c:29:a9:7b:83Type: VirtioNATVirtual DHCPMac相同,網(wǎng)卡類型和連接方式轉(zhuǎn)換為適合libvirt的類型Video CardVmware SVGAModel: Cirrus9M RAM轉(zhuǎn)換為libvirt支持的類型Audio deviceES1371ES1370轉(zhuǎn)換為libvirt支持的類型系統(tǒng)用戶root/admin001root/admin001一致磁盤分區(qū)/dev/sda1/dev/sda2/dev/sda1/dev/sda2物理盤符及
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 通信架空鋼管施工方案
- 裝飾木板安裝施工方案
- 2025年中國工業(yè)控制軟件行業(yè)發(fā)展監(jiān)測及投資方向研究報(bào)告
- 2025年通風(fēng)過濾網(wǎng)組行業(yè)深度研究分析報(bào)告
- 2025-2030年重慶市數(shù)字政府市場全景調(diào)查及發(fā)展前景研判報(bào)告
- 2019-2025年中國卡那霉素市場供需格局及未來發(fā)展趨勢報(bào)告
- 2025年中國肌苷片行業(yè)市場全景評估及投資前景展望報(bào)告
- 乳化防銹油復(fù)合劑行業(yè)市場發(fā)展及發(fā)展趨勢與投資戰(zhàn)略研究報(bào)告
- 2025年度高校校長任期國際交流合作聘用合同3篇
- 2025年度新型肥料研發(fā)與應(yīng)用推廣合同范本3篇
- 經(jīng)方治療腦梗塞的體會
- 新版DFMEA基礎(chǔ)知識解析與運(yùn)用-培訓(xùn)教材
- 制氮機(jī)操作安全規(guī)程
- 衡水市出租車駕駛員從業(yè)資格區(qū)域科目考試題庫(全真題庫)
- 護(hù)理安全用氧培訓(xùn)課件
- 《三國演義》中人物性格探析研究性課題報(bào)告
- 注冊電氣工程師公共基礎(chǔ)高數(shù)輔導(dǎo)課件
- 土方勞務(wù)分包合同中鐵十一局
- 乳腺導(dǎo)管原位癌
- 冷庫管道應(yīng)急預(yù)案
- 司法考試必背大全(涵蓋所有法律考點(diǎn))
評論
0/150
提交評論