新聞中心

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

遷移Xen虛擬機到KVM的六大步驟

作者: 時間:2012-08-10 來源:網絡 收藏

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

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

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

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

2. 啟動要的虛擬機,安裝GRUB引導裝載程序。默認情況下,Xen虛擬機內沒有安裝引導裝載程序,因為該程序由Xen虛擬工作環(huán)境自身提供。因此需要在之前確保該程序已經安裝。

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

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

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

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

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

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

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鏡像文件中。以根權限執(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

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

qemu kvm.img

小結

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

linux相關文章:linux教程




評論


相關推薦

技術專區(qū)

關閉