文章目录
第一:虚拟机磁盘格式相互转换
磁盘格式可以相互转换,建议在离线(关机)状态,进行操作
qemu-img convert -f raw /kvm-hosts/kvm-web01.raw -O qcow2 /kvm-hosts/kvm-web01.qcow2
#解释:-f指定要转换的文件格式,-O指定要转化的目标格式,转换后将生产一个新的映像文件,原文件仍保存
第二:使用转换后的磁盘镜像启动虚拟机
注意: /etc/libvirt/qemu/kvm-web01.xml这个文件只能通过virsh edit 以及libvirt API来修改才会生效,使用vim 修改无效
#第一:编辑/etc/libvirt/qemu目录下对应的xml文件
virsh edit kvm-web01 #后面直接跟虚拟机名字,修改如下图所示两个位置的内容
#第二:启动虚拟机
virsh start kvm-web01
#第三:查看虚拟机的运行参数,看运行磁盘是否是转换后的qcow2格式
ps -ef |grep kvm
#题外话:
辣条在运行状态,转换磁盘格式,并且使用virsh edit修改xml,然后关闭虚拟机,然后重新启动虚拟机;
发现更改生效了,虚拟机正常启动,参数也是更改后的,实验成功了,但是不建议业务上这样使用
第三:KVM快照管理
注意:需要qcow2格式的磁盘支持
#虚拟机安装组件(与宿主机通信的管道)
若虚拟机是windows系统,可以选择去virtio-win项目里找这个软件
yum install qemu-guest-agent -y
开机自启动(在centos7系统里面,安装后,默认设置为开机自启动)
systemctl enable qmeu-ga
#使用virtual-manager查看,虚拟机配置上是否有通道支持:
宿主机上的通道软件默认就是有的,并且是使用的,作用是:创建快照时通知虚拟机将内存数据写入磁盘,再进行创建,保证数据一致性
#创建快照
#方法1:使用xml创建快照,会根据当前时间戳生成快照名
virsh snapshot-create kvm-web01
#方法2:为kvm-web01创建一个名为web01-kz的快照
virsh snapshot-create-as kvm-web01 web01-kz
#方法3:先生成一个xml文件,再根据这个xml文件来生成快照。(其中快照的名称,在生成xml文件已设定)
virsh snapshot-create-as web01 web01-kz --print-xml > snapshot2.xml
virsh snapshot-create web01 ./snapshot2.xml
#注意:快照配置文件在/var/lib/libvirt/qemu/snapshot/虚拟机名字下面(里面都是xml文件)
#查看虚拟机镜像快照版本
virsh snapshot-list kvm-web01
#恢复到某个指定快照(建议在关机状态)
virsh snapshot-revert kvm-web01 1495939786
#将虚拟机恢复到名为1495939786的快照版本
#经过测试,发现可以不关机恢复快照,而且远程vnc远程不会掉
#删除快照
virsh snapshot-delete kvm-web01 1495939786
#删除快照版本不会影响虚拟机的使用(就好比原本就是没有快照的)
第四:KVM磁盘快照的其他常见管理方式
#查看虚拟机磁盘
virsh domblklist web01
#查看磁盘信息(有无快照,多大)
qemu-img info /kvm-hosts/web01.qcow2
#查看磁盘快照
qemu-img snapshot -l /kvm-hosts/web01.qcow2
#创建多个快照后,查看快照之间的依赖关系
virsh snapshot-list --parent web01
#查看快照之间的树形依赖关系
virsh snapshot-list --tree web01
#virtual-manager可以在虚拟机关机状态创建快照
注意
删除最后一个快照,不会删除数据
删除,中间的快照,依赖关系会发生改变,也不回丢失数据
如果文章对你有帮助,欢迎点击上方按钮打赏作者
暂无评论