一台主机的虚拟机更换主机向另一台迁移,提示不兼容,要怎么解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一台主机的虚拟机更换主机向另一台迁移,提示不兼容,要怎么解决相关的知识,希望对你有一定的参考价值。

参考技术A 按照提示,尝试一下启用EVC特性。
具体操作:选中集群,右键,编辑设置。
了解 VMware 增强型 vMotion 兼容性 (EVC)
可以使用 VMware 增强型 vMotion 兼容性 (EVC) 功能,帮助确保群集内主机的 vMotion 兼容性。EVC 可以确保群集内的所有主机向虚拟机提供相同的 CPU 功能集,即使这些主机上的实际 CPU 不同也是如此。这样可以避免因 CPU 不兼容而导致通过 vMotion 迁移失败。
EVC 要求应用程序遵循 CPU 供应商针对 CPU 功能检测提出的建议。未遵循 CPU 供应商建议的应用程序将不受 EVC 支持。
有关 vMotion 兼容性及 EVC 要求和限制的详细信息,请参见vCenter Server 和主机管理文档。本回答被提问者采纳
参考技术B 重新安装虚拟机解决问题

玩转KVM:一招完成vm在线迁移

下篇预告: 玩转KVM:浅谈虚拟机lifecycle

前言

上篇一招打开vm的console口,让你轻轻松松管理vm。下面讲虚拟机是如何在kvm集群中来去自如。

为什么要迁移

迁移描述了将虚拟机从一台主机物理机移动到另一台主机的过程。
虚拟机迁移可以分为:冷迁移(offline migration)和热迁移(live migration/online migration)

为什么要迁移呢?

1.负载平衡 - 当主机物理机器过载或其他主机物理机器未充分利用时,可将客户机虚拟机移动到主机物理机器,使用率较低。
2.硬件独立性 - 当我们需要在主机物理机上升级,添加或删除硬件设备时,我们可以安全地将虚拟机重定位到其他主机物理机。这意味着虚拟机不会遇到硬件改进的停机时间。
3.节能 - 客户虚拟机可以重新分配到其他主机物理机器,因此可以关闭电源以节省能源并在低使用率期间降低成本。
4.地理迁移 - 可以将虚拟机移动到其他位置,以降低延迟或在严重情况下使用。

迁移的要求

共享存储

虚拟机迁移要求是虚拟机存放在KVM集群的共享存储中。
如下:
基于光纤通道的LUN
iSCSI的
FCoE的
NFS
GFS2
CEPH RBD
SCSI RDMA协议(SCSI RCP):Infiniband和10GbE iWARP适配器中使用的块导出协议
技术图片

# 虚拟机的管理工具

KVM 仅仅是 Linux 内核的一个模块。管理和创建完整的 KVM 虚拟机,需要更多的辅助工具。

QEMU-KVM:在 Linux 系统中,首先我们可以用 modprobe 系统工具去加载 KVM 模块,如果用 RPM 安装 KVM 软件包,系统会在启动时自动加载模块。加载了模块后,才能进一步通过其他工具创建虚拟机。

Libvirt、virsh、virt-manager:尽管 QEMU-KVM 工具可以创建和管理 KVM 虚拟机,RedHat 为 KVM 开发了更多的辅助工具,比如 libvirt、libguestfs 等。原因是 QEMU 工具效率不高,不易于使用。使用 libvirt,你只需要通过 libvirt 提供的函数连接到 KVM 或 Xen 宿主机,便可以用同样的命令控制不同的虚拟机了。Libvirt自带一套基于文本的管理虚拟机的命令—— virsh,你可以通过使用 virsh 命令来使用 libvirt 的全部功能。 virt-manager是一套用 python 编写的虚拟机管理图形界面,用户可以通过它直观地操作不同的虚拟机。

迁移实战

虚拟机冷迁移:

源物理主机:

确定虚拟机关闭状态
[[email protected] ~]# virsh list --all

准备迁移test虚拟机,查看该虚拟机的磁盘文件
[[email protected] ~]# virsh domblklist test

导入虚拟机配置文件
[[email protected] ~]# virsh dumpxml test > /root/test.xml

拷贝配置文件到目标虚拟主机上。
[[email protected] ~]# scp /root/test.yml 10.10.10.10:/etc/libvirt/qemu/test.yml

目标物理主机:

查看目标主机KVM环境
[[email protected] ~]# virsh list

查看虚拟机描述文件
[[email protected] ~]# ls -l /root

查看虚拟机磁盘文件,目录结构与源虚拟主机一致。
[[email protected] ~]# virsh domblklist test --输出需要与源主机一样

定义注册虚拟主机
[[email protected] ~]# virsh define /etc/libvirt/qemu/test.yml

启动虚拟主机并确认
[[email protected] ~]# virsh start test
[[email protected] ~]# virsh list

# 虚拟机热迁移:
共享存储可以用以上罗列的方式

准备NFS存储,全部节点挂载nfs目录
[[email protected] ~]# mount -t nfs 10.10.10.200:/data /data -o rw,rsize=12768,wsize=12768,hard

节点1虚拟机状态,test虚拟机开机状态
[[email protected] ~]# virsh list

节点2虚拟机状态,无虚拟机运行
[[email protected] ~]# virsh list
在主机1上执行迁移命令
[[email protected]~]#virsh migrate --live --verbose test? qemu+ssh://10.10.10.10/system tcp://10.10.10.10br/>[email protected]‘spassword:
Migration:[100%]

迁移过程:客户机一直ping查看迁移,可以看到中间有两个包的中断,基本上没有太大影响。

节点2上,可以看到虚拟机test已经启动了,进入虚拟机观察
[[email protected] ~]# virsh list
[[email protected] ~]# virsh console test
技术图片


以上是关于一台主机的虚拟机更换主机向另一台迁移,提示不兼容,要怎么解决的主要内容,如果未能解决你的问题,请参考以下文章

vSphere 通过 vMotion 实现虚拟机热迁移

KVM热迁移虚拟机

虚拟机的迁移和资源分配

VMWare之——宿主机与虚拟机互相ping通,宿主机ping通另一台机器的虚拟机

玩转KVM:一招完成vm在线迁移

VMware 虚拟机迁移