Linux系统中虚拟化的管理(包括虚拟机的多种创建方式)

一、虚拟机管理

virt-manager                  ##开启虚拟机管理器
在这里插入图片描述
virsh list                      ##显示正在运行的虚拟机
在这里插入图片描述
virsh list --all           ##查看所有虚拟机(运行的和未运行的)
在这里插入图片描述
virsh start desktop      ##打开虚拟机
在这里插入图片描述
virsh shutdown desktop ##正常关闭虚拟机(正常关机,有等待过程)
virsh destroy desktop   ##强行关闭虚拟机
在这里插入图片描述
virt-viewer desktop       ##显示虚拟机

二、自动安装虚拟机脚本的编写

mkdir scripts           ##新建一个目录,在/mnt/(目录存放位置自己设定)
vim vm_create.sh      ##新建文件(文件名自定),编写脚本
在这里插入图片描述

vim vm_create.sh
#!/bin/bash                   ##在什么环境下运行
virt-install \                ##安装虚拟机命令
--cdrom /home/kiosk/Desktop/rhel-server-7.3-x86_64-dvd.iso \     ##设置安装镜像路径
--memory 1000 \               ##内存大小
--vcpus 1 \                   ##cpu核数
--disk /var/lib/libvirt/images/$1.qcow2,size=8,bus=virtio \     ##硬盘设置(存放路径,大小,类型是虚拟化输入输出)
--network bridge=br0,model=virtio \     ##网络模式(桥接,虚拟化输入输出)
--name=$1 &>/dev/null &                    ##虚拟机名称,(打入后台,且将报错信息扔进垃圾箱)

注意: " \ " 为换行符号,前面用空格隔开
在这里插入图片描述
测试:
sh vm_create.sh node1     ##建立虚拟机
在这里插入图片描述

三、虚拟机的迁移

虚拟机两部分

client.qcow2 硬盘文件
client.xml 硬盘信息文件

注意:硬盘信息文件修改后 systemctl restart libvirtd

第一步:
从另一个主机上发现一个已经安装好的虚拟机

克隆步骤:

假设别人主机中存在已经安装好的虚拟机client

第二步:
复制虚拟机所需的两个文件
cd /mnt

scp root@172.25.254.10:/var/lib/libvirt/images/client.qcow2

scp root@172.25.254.10:/etc/libvirt/qemu/uc.xml /mnt/client.xml

ls /mnt/        ##查看获取的两个文件是否存在

virsh create client.xml        ##创建虚拟机

注意

client.qcow2移到绝对路径:/var/lib/libvirt/images下,否则会报错

虚拟机的恢复:
virsh create /mnt/client.xml    ##用虚拟机硬件文件一次性打开虚拟机,关闭消失

virsh define /mnt/client.xml    ##永久恢复

注意:
1.只拷硬盘文件的话,在自己主机点击创建一个虚拟机,选择"import existing disk image",关闭后虚拟机消失
2.硬盘文件client.qcow2最终必须在/var/lib/libvirt/images/
3.硬件信息client.xml可以在自己设定目录

四、虚拟机的快照

注意

当用快照时,原始的虚拟机就不要动,否则快照失效

当快照错乱崩溃时,删除,重新对client.qcw2进行快照,与desktop的reset原理类似
操作
1.qemu-img create -f qcow2 -b /var/lib/libvirt/images/client.qcow2 /var/lib/libvirt/images/node1.qcow2
2.把生成的快照导入到虚拟机图形控制器中
3.快照虚拟机可以使用
4.快照虚拟机损坏,那么删除快照重新制作快照
5.当使用快照后请不要对母作任何操作
   当使用快照后请不要对母盘作任何操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

自动安装虚拟机快照脚本的编写

mkdir scripts           ##新建一个目录,在/mnt/(目录存放位置自己设定)
vim vm_snapshot.sh   ##新建文件(文件名自定),编写脚本
在这里插入图片描述
注意:$1表示母盘名称,$2表示快照名称

   #!/bin/bash
   qemu-img create -f qcow2 -b \
   /var/lib/libvirt/images/$1.qcow2 \
   /var/lib/libvirt/images/$2.qcow2 &> /dev/null
   
   virt-install \
   --name $2 \
   --memory 1000 \
   --vcpus 1 \
   --disk /var/lib/libvirt/images/$2.qcow2,bus=virtio \
   --network bridge=br0,model=virtio \
   --import &> /dev/null &

在这里插入图片描述
测试:
sh vm_snapshot.sh client node2

五、命令删除虚拟机

两步操作:
virsh undefine 虚拟机名称
rm -rf /var/lib/libvirt/images/虚拟机硬盘.qcow2

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值