vCenter Server 的 CPU 兼容性检查可比较源主机上可用的 CPU 功能、虚拟机可访问的功能子集以及目标主机上可用的功能。不使用 EVC 时,不管虚拟机是否能够访问这些功能,两个主机的用户级功能之间存在任何不匹配都会阻止迁移。仅当虚拟机可以访问目标主机未提供的功能时,这两个主机的内核级功能间的不匹配才会阻止迁移。

用户级功能是虚拟机应用程序使用的非特权指令。这些指令包括 SSE3、SSSE3、SSE4.1、SSE4.2 和 AES。因为它们属于跳过虚拟化层的用户级指令,如果在通过 vMotion 迁移后出现不匹配,这些指令可能会导致应用程序不稳定。

内核级功能是虚拟机操作系统使用的特权指令。这些指令包括 AMD No eXecute (NX) 和 Intel eXecute Disable (XD) 安全功能。

尝试通过 vMotion 迁移虚拟机时,会出现以下情况之一:

  • 目标主机功能集与虚拟机的 CPU 功能集匹配。满足 CPU 兼容性要求,可继续通过 vMotion 迁移。

  • 虚拟机的 CPU 功能集包含目标主机不支持的功能。不满足 CPU 兼容性要求,无法继续通过 vMotion 迁移。

    注:

    通过为群集中运行的所有虚拟机提供“基准”功能集,EVC 解决了这些不兼容问题。此基准功能集会向虚拟机隐藏群集主机 CPU 之间的差异。

  • 目标主机支持虚拟机的功能集以及虚拟机功能集中没有的其他用户级功能(例如 SSE4.1)。不满足 CPU 兼容性要求,无法继续通过 vMotion 迁移。

    注:

    对于 EVC 群集中主机之间的迁移,将忽略此类不兼容情况。

  • 目标主机支持虚拟机的功能集以及虚拟机的功能集中没有的其他内核级功能(例如 NX 或 XD)。满足 CPU 兼容性要求,可继续通过 vMotion 迁移。虚拟机保持启动状态时会保留其 CPU 功能集,从而可以自由迁移回原始主机。但是,如果重新引导虚拟机,它将从新主机中获取新的功能集。如果尝试将该虚拟机迁移回原始主机,此过程可能会导致 vMotion 不兼容。