首页 > 其他分享 >KVM虚拟机迁移

KVM虚拟机迁移

时间:2023-01-03 10:22:27浏览次数:35  
标签:虚拟机 KVM virsh win2019 服务器 迁移 硬盘

说明一下背景:本次迁移主要采取的是冷机迁移,热机迁移太复杂,这个可以根据自己实际业务选择相应的方案,我们可以短暂的宕机,所以以简单和不出错成为本此迁移的主要知道思想。

1、假定我们需要将A主机的虚拟机迁移到B主机上。虚拟机的名称为win2019.

2、进入到A主机

#关闭虚拟机,可以进入到虚拟机关闭,我这里就简单一点。直接在物理宿主机上关闭了。

virsh shutdown win2019

3、找到虚拟机文件。一个是配置文件,一个是虚拟机硬盘文件。配置文件一般在/etc/libvirt/qemu目录下,名称为:win2019.xml。我的虚拟机硬盘放在了/opt/kvm/win2019/目录下,名称sys.qcow2。

4、将这个连个文件复制到目标主机B上对应的目录下。

#利用scp命令,将本地文件复制到远端服务器B上,存放目录和A服务器保持一致,这个可以根据需要变更,配置文件目录是固定的,虚拟硬盘可以更改。

scp /etc/libvirt/qemu/win2019.xml root@B服务器的IP地址:etc/libvirt/qemu/

scp /opt/kvm/win2019/sys.qcow2 root@B服务器的IP地址:/opt/kvm/win2019/

5、登录到B主机上启动win2019虚拟机

# 定义虚拟机
virsh define win2019
# 启动虚拟机
virsh start win2010

 

 

 

 

以下是碰到的问题:

由于两台服务器硬盘配置不同,特别是cpu型号不同。导致出现莫名的错误,记录一下,少走弯路。最稳妥的办法是在B服务器上新建一个虚拟机,然后打开它的配置文件,找到如下几行

#利用dumpxml打开刚才新建的虚拟,找到cpu这个标签,并复制它。
virsh dumpxml 新建虚拟机的名称
<cpu mode='custom' match='exact' check='full'>
    <model fallback='forbid'>XXXX</model>
    <feature policy='require' name='XXXX'/>
    <feature policy='require' name='XXXXt'/>
</cpu>

替换win2019虚拟机配置文件中的cpu标签

virsh edit win2019
#输入 i 进入编辑模式,替换<cpu>****</cpu>内容,保存退出,重新定义虚拟机,并启动。
virsh define win2019
virsh start win2019

 

有个傻问题折腾了半天,原来是没有把硬盘文件复制完,导致无法启动。刚开始时,用U盘拷贝了sys.qcow2文件,没有想到系统已经增长的很大,并没有留意到,只用U盘拷贝半个文件,导致系统一直启动不起来,vnc可以连接上,页面停留在开机状态,最后查看了下sys.qcow2文件大小才发现这个弱智错误,铭记!!!

 

标签:虚拟机,KVM,virsh,win2019,服务器,迁移,硬盘
From: https://www.cnblogs.com/code8088/p/17021086.html

相关文章