a84771225 发表于 2015-10-10 12:22:32

实现将VirtualBox 虚拟机转换为KVM虚拟机的步骤

  原来在桌面上一直使用virtualbox虚拟机管理程序(VMM)构建虚拟机安装不同的操作系统,现在
  研究linux下的KVM,能否将已经建立的virtualBox虚拟客户机(guest)转换为KVM虚拟机呢?经过查找
  资料,还真可以。下面说明一下步骤:
  1、将virtualbox虚拟机的虚拟磁盘文件(VDI)转换成raw格式的文件
     此步骤使用virtualbox的命令行工具vboxmanage,这个工具对于通过编制脚本生成虚拟机很有帮助,
  其提供的功能比virtualbox图形配置提供的功能要强大的多。具体命令如下:
     vboxmanage clonehd --format raw centos.vdi centos.img
     说明:将名为centos.vdi 的虚拟磁盘文件转换为raw格式的虚拟磁盘文件,raw格式的文件可以说是
  不同格式虚拟磁盘文件之间转换的桥梁,其他格式的虚拟磁盘文件都可以先转换成此格式,然后在转换为
  其他目标格式。转换完成后,生成的raw格式文件大小是在配置虚拟机时指定的大小,实际vdi文件只占用
  实际应用的大小,如配置时虽然指定为20G,但安装完操作系统及相关软件后,可能只需要8G,那么实际
  的虚拟磁盘文件(vdi格式)只占用8G,但是在用上面的命令转换后,则转换后的文件大小就是在建立虚拟
  机时指定磁盘空间的大小,在这里就是20G,因此在转换前需要查看一下磁盘空间是否足够。
     命令参数: clonehd   --克隆虚拟磁盘
                       --format raw    --指定转换格式
     clone这个此在虚拟化技术中用的很多,诸如备份、迁移等很多都是通过这个技术实现。
  2、将转换后的raw格式文件转换为kvm使用的qcow2格式文件
     此步骤使用qemu-img工具实现,如果机器上没有,可以通过rpm或yum进行安装,包名为qemu-img。
     qemu-img是专门虚拟磁盘映像文件的qemu命令行工具。
     具体命令如下:
     qemu-img convert -f raw centos.img -O qcow2 centos.qcow2
     参数说明:convert   将磁盘文件转换为指定格式的文件
                       -f   指定需要转换文件的文件格式
                    -O指定要转换的目标格式
     转换完成后,将新生产一个目标映像文件,原文件仍保存。
  3、利用qemu-kvm命令基于转换后的虚拟磁盘镜像启动虚拟机
        在生成kvm支持的文件格式后,即可以使用qemu-kvm基于已转换的磁盘文件启动虚拟机了,语法
  如下:
        qemu-kvm -m 1024 -M pc -smp 2 -hda /opt/images/centos.qcow2 -boot c -name centos \
        -k en-us vnc :0 -usb -usbdevice tablet
     启动后,将生产一个单独的qemu-kvm进程,利用vnc工具可以连接到这个虚拟机,在本例中vnc端口为
     5900,连接后,可以在客户机中进行各种操作。
        参数说明: -m 1024    指定内存大小
                          -Mpc      真的机器类型,这里为RHEL 5.4.0 PC
                          -smp      使用2个虚拟cpu仿真对称多处理器系统
                          -hda         指定虚拟磁盘文件名称
                          -boot       指定引导设备 c 为硬盘,d为光驱
                          -name      指定虚拟机名字
                          -k             指定键盘layout
                           vnc :0   指定vnc连接端口,最终端口为后面的数字+5900
                          -usb         使usb设备有效
                          -usbdevice tablet   加入把设备,tablet是指使用绝对坐标的指针设备,如鼠标
  4、其他说明
        使用第三步生成的虚拟机只是临时的,在此进程被关闭后,此虚拟机也不存在。可以手工编制一个
  配置文件,保护虚拟机的各类参数保存在/etc/libvirt/qemu目录下,这样就能够被virsh进行管理,可以
  方便的启动和关闭。配置文件可以使用已有虚拟机的配置文件作为模板。
     在用virtualbox生成的虚拟机中,如果安装了virtualbox的VBoxGuestAdditions(主要用来控制鼠标
  捕获等功能),则需要先在虚拟机中卸载,因此kvm不支持。
         版权声明:本文为博主原创文章,未经博主允许不得转载。
页: [1]
查看完整版本: 实现将VirtualBox 虚拟机转换为KVM虚拟机的步骤