在实验环境或生产环境中,可能会用KVM创建较多数量的虚拟机,如果每一台都去通过光盘安装,必然会耗费巨大的时间成本。为了解决这一问题,我们可以借鉴VMware Workstation中的操作方法,以一个已经安装好、并且做了一些初始化工作的虚拟机为模板来进行其它虚拟机的快速创建。

    快速创建虚拟机的方法主要有三种:

    ①克隆模板虚拟机;

    ②复制模板虚拟机的磁盘,使用命令行来进行快速创建;

    ③复制模板虚拟机的磁盘,通过virt-manager进行导入。

    在实验或生产环境中,我们一般会选择磁盘格式为qcow2、网络为Bridge的虚拟机作为模板,模板虚拟机做好初始化工作,包括关闭防火墙、关闭SELinux、时间同步、静态网卡的设置、国内镜像站点的yum源设置和一些基本常用软件包的安装。刚好笔者在之前的实验中,有个名为centos-test2的虚拟机是符合要求的,笔者就该虚拟机来演示相关操作。


  1. 克隆模板虚拟机

    克隆虚拟机时,要保证模板虚拟机处于关机状态。在宿主机上执行virt-manager命令进行VMM管理界面,在模板虚拟机上点击右键,选择“clone”弹出克隆虚拟机界面,克隆虚拟机界面中只需修改新的虚拟机名称,一般建议改为虚拟机主要提供的服务名以方便管理。设置好虚拟机名称,点击右下角“clone”,稍等片刻即可克隆完成。

使用KVM快速创建虚拟机_虚拟化

使用KVM快速创建虚拟机_虚拟化_02

使用KVM快速创建虚拟机_虚拟化_03

    与光盘安装好虚拟机重启相同,克隆虚拟机首次启动需点击QEMU/KVM界面的开始按钮才可进入登录加载页面,因为模板虚拟机已经做好了初始化工作,并且克隆后的虚拟机mac地址会自动与模板虚拟机区别开,所以克隆后的虚拟机只需修改IP地址。

使用KVM快速创建虚拟机_kvm_04

使用KVM快速创建虚拟机_虚拟机_05

    修改IP地址后,例如笔者这台克隆虚拟机是准备安装Nginx提供web服务,能成功安装Nginx,也能通过Linux主机和电脑浏览器访问,则说明克隆机是可用的。

使用KVM快速创建虚拟机_虚拟化_06

使用KVM快速创建虚拟机_虚拟机_07

使用KVM快速创建虚拟机_虚拟化_08


  1. 复制磁盘,命令行创建

    使用复制模板磁盘并通过命令行来创建时,可以进行到虚拟机磁盘存放路径下,拷贝想要使用的模板磁盘。KVM安装虚拟机后,会自动在/etc/libvirt/qemu/目录下生成各个虚拟机的xml文件,我们在复制磁盘并使用命令行创建时,虽然命令行的操作与光盘安装相同,但通过virt-manager进入安装界面后要直接强制关闭虚拟机的安装,让宿主机能在/etc/libvirt/qemu/目录下生成新的虚拟机xml文件即可。然后点击虚拟机QEMU/KVM页面的启动按钮,则可自动进入加载登录页面。

使用KVM快速创建虚拟机_虚拟机_09

使用KVM快速创建虚拟机_虚拟化_10

使用KVM快速创建虚拟机_kvm_11

使用KVM快速创建虚拟机_kvm_12

    登录虚拟机后,我们同样要修改IP地址,笔者安装并启动Apache服务,Linux主机和电脑浏览器也能访问,说明该种方式进行虚拟机的快速创建也是可行的。

使用KVM快速创建虚拟机_命令行_13

使用KVM快速创建虚拟机_虚拟机_14

使用KVM快速创建虚拟机_虚拟化_15

使用KVM快速创建虚拟机_虚拟机_16


  1. 复制磁盘,virt-manager导入

    如果觉得以上复制磁盘,再使用命令行创建的方法比较麻烦,也可改用virt-manager导入的方式。使用该方法时,我们也需要先复制模板虚拟机的磁盘,然后执行virt-manager命令进入管理界面,选择“File”—“New Virtual Machine”。

使用KVM快速创建虚拟机_命令行_17

    如何安装操作系统部分选择“Import existing disk image”从已经存在的磁盘镜像进行导入;选择路径部分点击“brows...”选择想要使用的磁盘,并要设置系统类型和版本;内存和CPU设置方面,可根据要使用的虚拟机用途进行合理配置。

使用KVM快速创建虚拟机_虚拟化_18

使用KVM快速创建虚拟机_虚拟化_19

使用KVM快速创建虚拟机_命令行_20

    准备安装环节主要是设置虚拟机的名称,以及要使用的网络类型,点击finish进入到加载登录界面。

使用KVM快速创建虚拟机_kvm_21

使用KVM快速创建虚拟机_kvm_22

    与以上的两种快速创建虚拟机方式相同,我们要先修改默认IP,可以ping通外网的话就说明该种方式快速创建的虚拟机也是可用的。

使用KVM快速创建虚拟机_虚拟机_23

使用KVM快速创建虚拟机_虚拟机_24