想要快速安装多台虚拟机,可以对原有虚拟机硬盘文件做一个快照,使用快找安装多个虚拟速度是相当快的,那么接下来我将介绍如何创建快照以及编写简单的shell命令安装虚拟机的方法。
一、安装虚拟机
(1)用shell脚本安装(2)得到一个虚拟机的全端管理及硬盘文件(3)创建虚拟机快照安装shell脚本安装
切换到root用户
编辑脚本 vim /mnt/Creatre_Vm.sh ,Create_Vm.sh是脚本名称,sh是脚本的意思
#!/bin/bash 命令运行环境的指定
virt-install \ 安装虚拟机
--name $1 \ 虚拟机名称指定,$1表示脚本后的第一串字符
--ram 1000 \ 内存
--file /var/lib/libvirt/p_w_picpaths/$1.img \ 硬盘文件
--file-size 8 \ 硬盘文件大小
--cdrom /var/ftp/pub/iso/rhel-server-7.1-x86_64-dvd.iso & 安装源指定
\ 换行 & 放入后台,不占用终端
执行/mnt/Create_Vm node2 node2是创建的虚拟机的名字
虚拟机node2创建成功
2.得到一个前端文件和一个硬盘文件进行安装
(1)硬盘文件:/var/lib/libvirt/p_w_picpaths/ 下的vm.qcow(vm为虚拟机的名字)
(2)前端管理文件:/etc/libvirt/qemu/ 下的vm.xml
有上面两个文件即可完成虚拟机安装, 步骤如下
(1)得到了node1.qcow,node1.xml
(2)将硬盘文件移动到/var/lib/libvirt/p_w_picpaths/,将前端管理文件移动到、/etc/libvirt/qemu/
(3)显示虚拟机
暂时:virsh create vm.xml
永久:virsh define vm.xml
3.如下
二、虚拟机管理
virt-manager 开启图形管理工具
virt-viewer vmname 显示虚拟机,vmname表示虚拟机名称
virsh list 列出正在运行的vm
virsh list --all 列出所有vm
virsh start vmname 运行指定vm
virsh shutdown vmname 正常关闭指定vm
virsh destroy vmname 强行结束指定vm
virsh create vmname.xml 临时恢复指定vm,vmname表示前端管理文件
virsh define vmname.xml 永久恢复vm
virsh undefine vmname 删除vm的前端管理,不会删除存储
1.virt list 列出正在运行的vm
2.virsh list --all 列出所有vm
3.virsh shutdown node2 正常关闭node2
4.virsh start node2 运行node2
5.virsh destroy node2 强行关闭node2
6.virsh create node2 临时恢复node2
7.virsh undefine node2 删除前端管理
8.virsh define node2.xml 永久恢复
三、创建快照快照就像复制文件,所有的操作都是在复制的文件上做的,不会对原文件产生影响。
两个重要文件
(1)硬盘文件:/var/lib/libvirt/p_w_picpaths/
(2)前端管理文件:/etc/libvirt/qemu/(记录虚拟的前段图形,数据,信息)
创建快照
(1)制定快照对象:/var/lib/libvirt/p_w_picpaths/下的文件
(2)输入命令:qemu-img create -f qcow2 -b vm_storage.qcow2 node1-snap.qcow2
vm_storage.qcow2 指源文件名称 node1-snap.qcow2指快照文件名称
4.利用快照安装虚拟机
快照文件很小
输入virt-manager
点击左上角小电视,选择最后一项导入,Forward
点击Browse,Forward
选择default,刚才创建的快照文件,点击chose volume
点击Forward
finish
node2安装成功
利用快照安装虚拟机速度很快
四、利用快照,编写脚本安装虚拟机编写文件
node1.qcow是快照名称
2.chmod +x Cratevm.sh 给该文件添加可执行权限
3.安装
如图
安装成功
五、重置虚拟机快照
当一个虚拟机快照损坏时,可以调用脚本重置
1.编辑脚本文件 vim Resetvm.sh
& 后台运行,\ 换行
chmod +x /mnt/Resetvm.sh 赋予文件可执行能力
安装
安装成功
继续编辑这个文件 &> /dev/null 不显示安装过程的信息
执行
安装成功
6.sh -x Resetvm.sh 显示安装过程是否正常,+正常