想要快速安装多台虚拟机,可以对原有虚拟机硬盘文件做一个快照,使用快找安装多个虚拟速度是相当快的,那么接下来我将介绍如何创建快照以及编写简单的shell命令安装虚拟机的方法。

一、安装虚拟机

(1)用shell脚本安装(2)得到一个虚拟机的全端管理及硬盘文件(3)创建虚拟机快照安装

  1. 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 &    安装源指定

    \ 换行  & 放入后台,不占用终端

    298447fc90589fee506dc3ea19e949e3.png-wh_90472e0c13d398e5e9cabde1f4b96dce.png-wh_

     

  05cf2ffbbcc13c7c1e0112b0f22d30a1.png-wh_

执行/mnt/Create_Vm node2 node2是创建的虚拟机的名字

虚拟机node2创建成功

6acf171fffa3c72cb6d0601ca39ef4fa.png-wh_

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 

3e8a6ae6df0a81c033cc0e177d8a4852.png-wh_

2.virsh list --all 列出所有vm

830896076affaf744044654c9b1a61c8.png-wh_

3.virsh shutdown node2 正常关闭node2

02052b13f6ec24d8f6352f48d6a02c05.png-wh_

4.virsh start node2 运行node2

8fabd26a6f55863eb816fc40d3cb59fe.png-wh_

5.virsh destroy node2 强行关闭node2

dde039e92f8f3d92552cebd89901f4a8.png-wh_

6.virsh create node2 临时恢复node2

2f85a3021472b1021ef7f61b616f74a2.png-wh_

7.virsh undefine node2 删除前端管理

c4fcee9bd08c84d19f544d93a732f0fe.png-wh_

f2c71facbd5f5daf167bf38bc5ce9894.png-wh_

a3b595705e54751c44e0f60fd59bfe93.png-wh_

77e9cf432adc0ee52d30ce9a948f563f.png-wh_

8.virsh define node2.xml 永久恢复

632f1a4ece6f4d66d30634b629891114.png-wh_

三、创建快照

  1. 快照就像复制文件,所有的操作都是在复制的文件上做的,不会对原文件产生影响。

  2. 两个重要文件

    (1)硬盘文件:/var/lib/libvirt/p_w_picpaths/

    (2)前端管理文件:/etc/libvirt/qemu/(记录虚拟的前段图形,数据,信息)

  3. 创建快照

    (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指快照文件名称   

9669305fdae431e97a509b9a99f1d3a0.png-wh_

4.利用快照安装虚拟机

快照文件很小

9c94b30545c5bf347ccbb865bace625d.png-wh_

输入virt-manager 

654a02062c4be138ff7fe1ffed26851e.png-wh_

点击左上角小电视,选择最后一项导入,Forward

a120857946931b17fc385662b4bd287b.png-wh_

点击Browse,Forward

6ffd73fe1554ba86a37d2c9b27501d56.png-wh_

选择default,刚才创建的快照文件,点击chose volume

19946457bbbffd6c8e1f413a94c929bb.png-wh_

点击Forward

99c4e8bae57880d0ebda15576167de5f.png-wh_

c1b7325b08f0be85853832d39037db6c.png-wh_

finish

cc4eb04cebc37c439d76b0cece8c495a.png-wh_

node2安装成功

213e333233f29315a7596a640b9fa1e8.png-wh_

利用快照安装虚拟机速度很快

四、利用快照,编写脚本安装虚拟机

  1. 编写文件

    efd5d32ff81b057edf6a0bba0bf2cb94.png-wh_

b67f84a0dd2463acdaa42986251b7aa0.png-wh_

  1. node1.qcow是快照名称

    2.chmod +x Cratevm.sh 给该文件添加可执行权限

    695bcdce5df1f50a9682a6fed5b3fae0.png-wh_

    3.安装

    de7937d44f7a04084b9f93c60a41ea2f.png-wh_

    如图

    57c1c94be9e2945c4abcbdd5bf72b6c8.png-wh_

    安装成功

    545a835751c9d0bec0af8060de9eceb9.png-wh_

    五、重置虚拟机快照

    当一个虚拟机快照损坏时,可以调用脚本重置

    1.编辑脚本文件 vim Resetvm.sh

    & 后台运行,\ 换行

    c8913ca25302ca0f7be16972da4db365.png-wh_

    7a297c91a8efdb970bcc6e0fe45d7483.png-wh_

    d6d4ddb23c9d610e6d89d57d86a623db.png-wh_

  2. chmod +x /mnt/Resetvm.sh 赋予文件可执行能力

    e9d4d114c988aef2e4b96506ebae2159.png-wh_

  3. 安装

    8db872a964ed63222c4f248a493584a7.png-wh_

  4. 安装成功

    4e002a8f0c419c8a694fe78a8d8ee8dd.png-wh_

  5. 继续编辑这个文件 &> /dev/null 不显示安装过程的信息

    90ba9c219932056c8d793bdb6f99410f.png-wh_

    b60b8d225aa92b11d9609d8a5a4b3602.png-wh_

    执行

    0e33c087be7f68d26dcb1ad4ca673adc.png-wh_

    安装成功

    5c9c1490ed60fc9bc62a70451bf462ca.png-wh_

6.sh -x Resetvm.sh 显示安装过程是否正常,+正常

  eaa738052cba107da3ad505ac878f09d.png-wh_