笔者曾经遇到一个问题,一台宿主机单个vmotion网口,采用vmkping时存在丢包现象。虚拟机vmotion迁移到该台宿主机时,进度始终卡在20%,无法成功。经过不定的时长,该任务会失败超时。想咨询下vmware的失败超时机制是怎样的?
首先,根据VMware官方对VMotion过程的分析:vmotion整体进行的动作流程如下:
将虚拟机从一个 VMware vSphere ESXi 主机实时迁移到另一个主机时,VMware vMotion 包含以下步骤:
在 vMotion 过程中,如果源主机在 maxSwithoverSeconds(100 秒)的默认时间内无法向目标主机发送虚拟机和内存页面的检查点数据,则会发生此问题。
此问题是由网络相关带宽和延迟问题导致的。默认情况下,vmotion.maxSwitchoverSeconds 的超时值为 100 秒。
在 Storage vMotion 过程中,如果主机在 100 秒的默认时间内无法将虚拟机的交换文件活动从源数据存储复制到目标数据存储,则会发生此问题。如果源数据存储或目标数据存储由于繁重的 I/O 活动而出现了性能问题,也会发生此问题。
1、网络连通性问题
2、IO繁忙度
3、主机相关问题排查
具体可参考VMware官方KN
https://kb.vmware.com/s/article/1003734?lang=zh_CN
VMware vMotion是一项用于在虚拟化环境中迁移虚拟机的技术,它可以在不中断虚拟机运行的情况下将虚拟机从一个物理主机迁移到另一个物理主机。在vMotion过程中,虚拟机的内存、CPU状态和网络连接状态都会被迁移。
当vMotion任务失败时,VMware会根据超时机制进行处理。默认情况下,vMotion任务的超时时间为150秒,如果在这个时间内任务没有完成,则会被视为失败。在任务失败后,虚拟机将会停留在原来的物理主机上,不会被迁移。此时,可以通过重新尝试vMotion任务或者手动迁移虚拟机来解决问题。
在您遇到的问题中,可能是由于vmotion网口丢包导致vMotion任务无法成功。可以尝试以下方法来解决该问题:
总之,vMotion任务失败时,可以根据超时机制进行处理,并通过调整网络连接、超时时间等方法来解决问题。