快建新虚拟机

    xiaoxiao2022-07-07  141

    快建新虚拟机

    问题

    本案例要求利用LVM逻辑卷来提供虚拟机磁盘,并用来构建模板虚拟机,其中创建并安装RHEL6虚拟机的操作要从命令行来实现。主要任务如下: 1)新建模板虚拟机muban1,名称为muban1,磁盘类型qcow2、大小20G,并配置出厂初始化 2)快建两台新虚拟机,作为后续练习环境,其中一台为svr5.tarena.com、另一台为pc205.tarena.com,完成配置后将新虚拟机关机,做快照备份

    方案

    新建的qcow2格式磁盘可以直接作为KVM虚拟机的磁盘来使用,不需要格式化。 而从命令行创建并安装虚拟机的操作需要使用virt-install命令,基本用法如下: virt-install –name 虚拟机名称 --vcpus=CPU核心数 --ram=内存大小 –disk path=虚拟机磁盘文件路径,format=格式 –network network=网络接口名称 --pxe 如果采用的虚拟机磁盘是默认的RAW格式,则上述操作中的format=可以省略;另外–pxe表示采用PXE方式来装系统,对于非PXE安装来说,应把 --pxe改成 --location=安装源URL。关于virt-install命令的更多用法,可参考man手册页。

    步骤

    实现此案例需要按照如下步骤进行。 步骤一:为模板虚拟机准备磁盘 新建一个qcow2格式的磁盘镜像文件muban1.qcow2,容量大小设为20G:

    [root@kvmsvr ~]# mkdir -p /data/images [root@kvmsvr ~]# cd /data/images/ [root@kvmsvr images]# qemu-img create -f qcow2 muban1.qcow2 20G .. .. [root@kvmsvr images]# qemu-img info muban1.qcow2 .. .. virtual size: 20G (21474836480 bytes) disk size: 136K

    步骤二:为模板虚拟机安装RHEL6操作系统 将虚拟机的名称设为muban1,配单颗CPU、内存1024MB,使用的磁盘为步骤一新建的muban1.qcow2,同时通过PXE的方式安装操作系统:

    [root@kvmsvr ~]# virt-install --name muban1 \ --vcpus=1 --ram=1024 \ --disk path=/data/images/muban1.qcow2,format=qcow2 \ --network network=network1 --pxe 开始安装...... 创建域...... | 0 B 00:00 .. ..

    注意:此处将虚拟机的网卡类型设为隔离的network1,若要设为桥接方式,应该将上述操作中的network=network1改成bridge=br0。 成功新建虚拟机以后,会自动弹出virt-viewer窗口,启动新虚拟机进行装机,如图所示。 后续过程与正常的PXE选择装机一样,此处不再赘述。 步骤三:模板机的出厂设置 为虚拟机muban1装好RHEL6系统以后,可以根据实际需要做一些应用或服务配置方面的调整,最后将其关机作为模板虚拟机(平时应关闭不启用),以便用来快速创建装配好的新虚拟机。比如,建议清空网卡的udev规则文件、删除网卡配置文件中的MAC地址及UUID设置语句。

    [root@localhost ~]# > /etc/udev/rules.d/70-persistent-net.rules [root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 EVICE=eth0 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=no #UUID=5db61050-18d7-423a-b478-95ddc99584e0 //移除此行 #HWADDR=00:0C:29:65:21:3C //移除此行

    在实际应用当中,根据模板建立的虚拟机会要求管理员做一些基本设置,比如选择键盘类型、设置系统时区、重设root口令、配置网络等相关信息。要达到这个效果的话,只需要在模板虚拟机的根目录下建立一个.unconfigured隐藏文件即可:

    [root@localhost ~]# touch /.unconfigured //先标记为未配置 [root@localhost ~]# shutdown -h now //再关闭系统

    步骤四:快建新虚拟机 由于模板虚拟机是已经装配好系统的,因此可以利用qcow2增量盘方式来快速生成新虚拟机的磁盘,这个时间是非常短的;然后只要为新虚拟机建立相应的XML描述文件,一台装配好系统的新虚拟机就迅速诞生了。 1)模板机的处理 在使用增量盘作为新虚拟机的磁盘时,为了减少COW带来的负担,最好不要对模板机的磁盘再有所更改。因此,可以先导出muban1的XML配置,然后删除此模板机的定义。

    [root@kvmsvr ~]# virsh dumpxml muban1 > /root/muban1.xml [root@kvmsvr ~]# virsh undefine muban1 域 muban1 已经被取消定义

    2)从模板机的磁盘建立两个qcow2增量盘

    [root@kvmsvr ~]# cd /data/images/ [root@kvmsvr images]# qemu-img create -f qcow2 -b muban1.qcow2 svr5.qcow2 .. .. [root@kvmsvr images]# qemu-img create -f qcow2 -b muban1.qcow2 pc205.qcow2 .. ..

    3)建立新虚拟机svr5

    [root@kvmsvr images]# vim /root/muban1.xml .. .. //注意修改name、uuid、disk、mac <domain type='qemu'> <name>svr5</name> <uuid>9d00dfd7-9070-b891-7f86-640e2c15d555</uuid> .. .. <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='none'/> <source file='/data/images/svr5.qcow2'/> .. .. <interface type='network'> <mac address='52:54:00:d1:bc:55'/> .. .. [root@kvmsvr images]# virsh define /root/muban1.xml 定义域 svr5(从 /root/muban1.xml)

    4)建立新虚拟机pc205

    [root@kvmsvr images]# vim /root/muban1.xml .. .. //注意修改name、uuid、disk、mac <domain type='qemu'> <name>pc205</name> <uuid>9d00dfd7-9070-b891-7f86-640e2c15d666</uuid> .. .. <disk type='file' device='disk'> <driver name='qemu' type='qcow2' cache='none'/> <source file='/data/images/pc205.qcow2'/> .. .. <interface type='network'> <mac address='52:54:00:d1:bc:66'/> .. .. [root@kvmsvr images]# virsh define /root/muban1.xml 定义域 pc205(从 /root/muban1.xml)

    5)新虚拟机的设置及备份 将新建的两台虚拟机svr5、pc205开机,并登入系统,按照网络服务实验环境的要求进行设置,其中svr5.tarena.com的IP地址设为192.168.4.5、pc205.tarena.com的IP地址设为192.168.4.205,并配置好YUM仓库,然后将这两台虚拟机关机。 为虚拟机svr5、pc205的磁盘制作好快照备份:

    [root@svr5 images]# qemu-img snapshot -c snap1 svr5.qcow2 [root@svr5 images]# qemu-img snapshot -l svr5.qcow2 Snapshot list: ID TAG VM SIZE DATE VM CLOCK 1 snap1 0 2015-12-17 02:54:45 00:00:00.000 [root@svr5 images]# qemu-img snapshot -c snap1 pc205.qcow2 [root@svr5 images]# qemu-img snapshot -l pc205.qcow2 Snapshot list: ID TAG VM SIZE DATE VM CLOCK 1 snap1 0 2015-12-17 02:54:50 00:00:00.000
    最新回复(0)