新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 遷移Xen虛擬機(jī)到KVM的六大步驟

遷移Xen虛擬機(jī)到KVM的六大步驟

作者: 時(shí)間:2012-08-10 來源:網(wǎng)絡(luò) 收藏

如果是在Linux上使用化技術(shù)的話,就會(huì)有基于 Hypervisor部署一個(gè)系統(tǒng)的機(jī)會(huì)。因?yàn)榛趦?nèi)核的機(jī)(:Kernel-Based Virtual Machine)已經(jīng)逐漸成為Linux上面化的主流,用戶也有可能會(huì)希望把基于Linux的虛擬化工作環(huán)境從轉(zhuǎn)換到。本篇文章給出了把基于的虛擬機(jī)上的六步方針。

本文引用地址:http://butianyuan.cn/article/148631.htm

到目前為止,還沒有成熟的管理產(chǎn)品可以自動(dòng)地把Xen虛擬機(jī)轉(zhuǎn)換為KVM。但是現(xiàn)在卻有一項(xiàng)技術(shù)解決方案可以輔助把Xen上面安裝的虛擬機(jī)轉(zhuǎn)換到KVM上。下面的幾個(gè)將會(huì)介紹針對(duì)Linux虛擬機(jī)需要如何實(shí)施。我盡可能從不基于任何發(fā)行版的高度來描述這個(gè)流程,但是需要注意的是對(duì)于特定,所有的工具是和Linux發(fā)行版相關(guān)的。

1. 確保在宿主工作環(huán)境(即可以看做是Dom0工作環(huán)境)中安裝了parted和kpartx實(shí)用程序。Parted可以輔助分區(qū);kpartx完成掛載分區(qū),這個(gè)分區(qū)在虛擬機(jī)內(nèi)定義。

2. 啟動(dòng)要的虛擬機(jī),安裝GRUB引導(dǎo)裝載程序。默認(rèn)情況下,Xen虛擬機(jī)內(nèi)沒有安裝引導(dǎo)裝載程序,因?yàn)樵摮绦蛴蒟en虛擬工作環(huán)境自身提供。因此需要在之前確保該程序已經(jīng)安裝。

3. 關(guān)閉Xen虛擬機(jī),把整個(gè)虛擬機(jī)復(fù)制到一個(gè)鏡像文件。開始之前需要確保系統(tǒng)有足夠的磁盤空間,這里需要很多GB的空間;同時(shí)確保使用的是正確的流程。例如,Xen后端虛擬存儲(chǔ)可以已經(jīng)是一個(gè)鏡像文件,但是也可以是使用設(shè)備安裝的,如一個(gè)分區(qū)或者一個(gè)邏輯卷管理器(LVM:Logic Volume Manager)卷作為一個(gè)后端存儲(chǔ)設(shè)備。例如,如果使用“/dev/images/xenvm1” LVM邏輯卷作為Xen后端存儲(chǔ)設(shè)備的話,可以使用下面的這個(gè)命令寫入鏡像文件:

dd if=/dev/images/xevvm1 f=xen.img bs=1M

注意:如果在虛擬機(jī)內(nèi)有復(fù)雜的分區(qū),就需要為每一個(gè)分區(qū)創(chuàng)建一個(gè)鏡像文件。該流程假定虛擬機(jī)內(nèi)的一切信息都位于一個(gè)大根分區(qū)中。

4. 為KVM虛擬機(jī)創(chuàng)建一個(gè)新鏡像文件。該鏡像文件應(yīng)該和為要遷移的虛擬機(jī)所創(chuàng)建的鏡像文件一樣大小。在下面的例子中,我將會(huì)假定使用的是一個(gè)10GB的Xen鏡像;在實(shí)際部署中注意把這個(gè)值調(diào)整為虛擬機(jī)實(shí)際占用的空間大?。?/p>

dd if=/dev/zero f=kvm.img bs=1M count=10240

5. 在上述所創(chuàng)建的KVM鏡像文件中創(chuàng)建分區(qū)。創(chuàng)建分區(qū)的唯一方法就是使用parted命令行實(shí)用程序。下面這幾個(gè)步驟將會(huì)創(chuàng)建一個(gè)9GB的根分區(qū)和一個(gè)1GB的交換分區(qū)。需要在根特權(quán)下才可以執(zhí)行這幾個(gè)命令:

parted kvm.img mklabel msdos

parted kvm.img mkpart primary ext2 0 9000

parted kvm.img mkpart primary linux-swap 9000 10000

parted kvm.img set 1 boot on

6. 把Xen鏡像文件拷貝到KVM鏡像文件中。以根權(quán)限執(zhí)行下述命令:

following commands:

modprobe dm-mod

losetup /dev/loop kvm.img

kpartx -a /dev/loop0

dd if=xen.img f=/dev/mapper/loop0p1 bs=1M

fsck.ext3 -f /dev/mapper/loop0p1

到此為止,就已經(jīng)把原來鏡像中的所有文件拷貝到了新鏡像中。接下來需要進(jìn)行測試,使用下面的這個(gè)命令:

qemu kvm.img

小結(jié)

目前,還沒有工具可以很好地完成從Xen虛擬機(jī)到KVM虛擬機(jī)的轉(zhuǎn)換。但是如果虛擬機(jī)使用Linux的話,可以使用命令行實(shí)用程序完成該轉(zhuǎn)換。本文雖然介紹了如何實(shí)施,但是也存在一些局限性,如主要問題是該方法僅僅適用于Linux虛擬機(jī)。鑒于當(dāng)前Linux工作環(huán)境中到KVM虛擬化的轉(zhuǎn)換,更多適用工具的問世只是一個(gè)時(shí)間上的問題了。

linux相關(guān)文章:linux教程




關(guān)鍵詞: 六大 步驟 KVM 虛擬 Xen 遷移

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉