KVM虚拟机怎么从一台服务器迁移至另外一台服务器
参考:
https://www.cnblogs.com/lin-wang/p/15752834.html
KVM虚拟机需要从一台服务器迁移至另外一台服务器
- 查看磁盘位置并拷贝磁盘
源主机操作
磁盘位置需要和原始位置一致否则需要修改xml配置文件
需要关机否则复制磁盘后主机可能无法启动
# virsh domblklist centos_template
virsh domblklist centos_template
目标 源
------------------------------------
hda /kvm/centos_template.qcow2
hdb -
# scp /kvm/centos_template.qcow2 root@192.168.3.201:/kvm
- 查看xml配置文件并拷贝
源主机操作
# virsh dumpxml centos_template > centos_template.xml
# scp centos_template.xml root@192.168.3.201:/etc/libvirt/qemu
- 定义虚拟机
目标主机操作
# virsh define /etc/libvirt/qemu/centos_template.xml
- 启动虚拟机
目标主机操作
需要和源主机有相同的网络配置,例如配置了相同的虚拟桥接网卡br0,否则无法启动会报以下错误
# virsh start centos_template
错误:开始域 centos_template 失败
错误:无法在 'br0' 获取接口 MTU: 没有那个设备
启动
# virsh start centos_template
排错:在迁一台CentOSSteam主机启动后无法进入系统而是进入救援模式
原因: 设备不一致导致
解决方法,编辑xml文件把usb设备删除后重启
# virsh edit xxx
2024-08-13补充开始
如果是把磁盘文件移动位置则直接修改xml文件把磁盘目录修改一下然后重新定义即可
# virsh define xxx
修改之前记得备份原xml配置文件,因为取消定义后会删除该xml文件
# virsh undefine xxx
如果没有备份xml文件又不小undefine了也不要紧,随意复制一份其他主机的xml文件修改一下名称以及磁盘位置即可
2024-08-13补充结束