vMotion失败,如果是网络或配置方面的问题,一般我们可以看到类似下面的报错:
- The vMotion migrations failed because the ESX hosts were not able to connect over the vMotion network.
- The ESX hosts failed to connect over the VMotion network
- vob.migrate.net.connect.failed.status.addrs
- Migration [mid] failed to connect to remote host <10.xx.xx.xx> from host <10.xx.xx.xx>: Host is down.
- Migration to hostHost_IP failed with error Connection closed by remote host, possibly due to timeout.
- Timed out waiting for migration data.
1. 检查vMotion的vmk配置(VMkernel Port)
我们先确认vmk是配置了vMotion服务,路径为:
- vCenter选择ESXi主机 -> 配置 -> 网络 -> VMkernel适配器 -> vmk
再去确认vmk1是已经添加在一个虚拟交换机vSwitch上,路径为:
- vCenter选择ESXi主机 -> 配置 -> 网络 -> 虚拟交换机 -> vSwitch*
也可以通过命令行:esxcfg-vmknic -l和esxcfg-vswitch -l
以上显示正常的话,至少说明配置方面的问题可能性不大
2.排查vMotion网络(通过vmkping和nc 8000端口)
- 检查两个主机网络连通性,vmkping类似ping,-I表示选择本机的vmk1去ping
- 可以在源主机和目标主机之间互相vmkping
#vmkping -I vmk1 10.xx.xx.xx
- 检查对端8000端口是否开通,8000端口为vMotion专用端口
#nc -zv 10.xx.xx.xx 8000
- 检查ESXi防火墙是否有允许vmotion模块,是否有监听8000
#esxcli network firewall ruleset list | grep -i vmotion
#esxcli network ip connection list | grep 8000
- 最后检查migrate模块是否启用
#esxcli system module list | grep migrate
3. 确保网卡固件和驱动的兼容性
下面命令是查看vmnic0的固件和驱动的版本。
然后我们再去VMware官网的VCG兼容列表,搜索该网卡的型号,对比版本,确保网卡固件和驱动时兼容的
https://www.vmware.com/resources/compatibility/search.php
#esxcli network nic list
#esxcli network nic get -n vmnic0
以上动作都做完,基本可以排查到vMotion网络故障或者网络配置方面的问题,欢迎留言或者联系我们。