这个快速部署的模式只适用于Linux的Guest OS,Windows等需要全虚拟化的Guest OS不在此讨论之列。

      通过xen-tools创建了虚拟机实例映像后,可以将映像挂载起来,并将其中的内容打成tar包,作为之后快速安装启动虚拟机实例之用。

      首先,需要挂载实例映像,并进入挂载点:

      # mount /home/xen/vm.img /mnt

      # cd /mnt

      接下来,需要删除原来安装虚拟机映像时生成的ssh各种key。这将有利于加快之后部署虚拟机的速度。因为在不删除这些key的情况下,xen-tools会花2-3分钟卡在判断是否重写ssh各种key的步骤上。

      # cd etc/ssh

      # rm -rf ssh_host_dsa_key* ssh_host_ecdsa_key* ssh_host_rsa_key*

      然后,将挂载点中的Linux根目录打包,可以打成gz包或者bz2包,后者有更好的压缩比,但是花费的时间也长,看不同的需求而定。

      打tar.gz包:

      # tar pcvzf /home/ostar/linux.tar.gz *

      或者,打tar.bz2包

      # tar pcvjf /home/ostar/linux.tar.bz2 *

     到此为止,系统模板制作的过程就结束了。我们可以对各个版本的linux都制作一个系统模板,以便于以后虚拟机的快速部署。

     接下来,我们就可以使用这些系统模板来安装启动虚拟机实例了。这个过程中还是利用到xen-tools,以Ubuntu 11.10为例:

     # xen-create-image --hostname=vm.example.com --install-method=tar --install-source=/home/ostar/linux.tar.gz --ip=192.168.0.101 --size=4G --memory=1G --swap=1G --dist=oneiric --role=udev

    2分钟左右会提示输入密码,完成后进入/etc/xen目录下启动虚拟机实例:

     # cd /etc/xen

     # xm create -c vm.example.com.cfg

    通过这种方法,还可以定制Guest OS,以为更多的用途。