使用开源Xen实现高性价比P2V转换
2009-10-9
【TechTarget中国原创】虚拟化的优点——包括减少硬件和电力费用、最小化数据中心占地面积、最大化数据中心的灵活性——已经得到了充分证明。然而合适的虚拟化软件启动成本非常高。这些成本可以通过使用开源Xen实施物理到虚拟(P2V)转换而减少。
P2V转换的基本原则非常容易理解。首先需要把物理机的内容转换为镜像文件,转换之后需要能够从该镜像文件启动系统。要启动系统,需要保证使用恰当的内核。TechTarget中国的特约虚拟化专家Sander van Vugt将在这篇文章中详细介绍这个过程。
【TechTarget中国原创】虚拟化的优点——包括减少硬件和电力费用、最小化数据中心占地面积、最大化数据中心的灵活性——已经得到了充分证明。然而合适的虚拟化软件启动成本非常高。这些成本可以通过使用开源Xen实施物理到虚拟(P2V)转换而减少。
P2V转换的基本原则非常容易理解。首先需要把物理机的内容转换为镜像文件,转换之后需要能够从该镜像文件启动系统。要启动系统,需要保证使用恰当的内核。TechTarget中国的特约虚拟化专家Sander van Vugt将在这篇文章中详细介绍这个过程。
从物理机到镜像文件
首先把物理服务器的内容写入镜像文件。我喜欢使用一一对应的方法:一个磁盘对应一个镜像文件。例如,如果准备转换的服务器有四个磁盘,就需要重复这一步骤四次。
从Linux实时系统重启服务器是克隆物理磁盘内容到镜像磁盘的最简单方法,可以使用一个发行版的安装光盘或者使用另外一个实时系统,如Knoppix。从实时光盘启动系统之后,找到准备克隆磁盘的名称。在很多实例中,使用命令fdisk –l就可以提供相关信息。通常都是一个Linux硬盘使用一个设备文件,如/dev/sda。
在找到物理磁盘的名称之后,需要创建准备保存镜像文件的存储设备,另外附加一块硬驱动是一种比较简单的方法。附加上之后,挂载在当前文件系统的某个位置以便于把镜像文件写入该位置。此处我们假定挂载在/mnt目录下。
到目前为止准备工作已经完成,可以使用dd命令开始克隆磁盘了。使用如下命令把整个/dev/sda的内容写入到/mnt目录下的文件sda.img:
dd if=/dev/sda of=/mnt/sda.img bs=4096
这一步非常耗时,例如一个300GB的磁盘需要几个小时是很正常的。这个时候可以去做别的工作了,到晚上再回来处理就可以。
把磁盘镜像文件包括在Xen配置范围内
创建磁盘文件之后,必须把磁盘文件包括在Xen配置范围内。使用virt-manager应用程序的导入向导是最简单的方法。在虚拟机管理器主界面,点击“新建”创建虚拟机。接下来点击“下一步”,从创建虚拟机窗口选择“已有一个有安装的操作系统的磁盘或者磁盘镜像”。

选择“已有一个有安装的操作系统的磁盘或者磁盘镜像”
选择物理服务器上的操作系统之后,虚拟机管理器显示概要界面。在该界面中,找到以前克隆的磁盘文件,选择合适的内核。最后一步非常关键:默认情况下一些操作系统选择的是准虚拟化。在使用P2V克隆的机器上,默认设置没有安装转虚拟化内核,因此需要确保选择全虚拟化作为虚拟化类型,然后就可以在Xen上启动转换后的虚拟机。