vSphere 导入由VMware导出的OVF模板出错,条目无效SHA256,ESX主机不支持功能,硬件系列vmx-16不受支持,设备0配置无效 等解决方案

esxi版本6.7,VMware版本15.5。

在VMware上新建的一个Linux7.0 虚拟机,想导出OVF模板,再用esxiI导入内网服务器,结果出现各种报错(本质上就是由于版本不同,OVF的功能点不兼容导致):

第一次导入报错,hash值匹配错误
vSphere 导入由VMware导出的OVF模板出错,条目无效SHA256,ESX主机不支持功能,硬件系列vmx-16不受支持,设备0配置无效 等解决方案
这个问题是说OVF文件的hash值,与.mf文件中记录的hash值不同导致。解决方法简单,可以重新生成OVF文件的hash(256)值,也可以直接把.mf文件删掉。
vSphere 导入由VMware导出的OVF模板出错,条目无效SHA256,ESX主机不支持功能,硬件系列vmx-16不受支持,设备0配置无效 等解决方案
打开mf文件可以看到,里面记录的就分别是ovf、vmdk的hash值。这里的解决方案是,直接删掉.mf文件即可(不然一定ovf文件内容有变动,每次都要重新生成hash值很烦)

删掉.mf文件之后,再导入,出现不受支持的错误:
vSphere 导入由VMware导出的OVF模板出错,条目无效SHA256,ESX主机不支持功能,硬件系列vmx-16不受支持,设备0配置无效 等解决方案

这个错误的意思是说,用VWware导出的OVF文件中,有些功能设置在vSphere中无法找到,即功能模块不兼容的情况。这时就需要修改OVF文件,把用不上的功能设置点去掉。
vSphere 导入由VMware导出的OVF模板出错,条目无效SHA256,ESX主机不支持功能,硬件系列vmx-16不受支持,设备0配置无效 等解决方案
打开ovf文件,找到vmx-16的system项设置,这里意思是vmx输出的ovf模板兼容类型是16版本,而vSphere不支持这么高版本,所以只要把它降低就行了。由于不知道服务器上部署的是什么版本,所以这里可以逐个降低进行尝试,直到可以为止。我的最高兼容11版本。
vSphere 导入由VMware导出的OVF模板出错,条目无效SHA256,ESX主机不支持功能,硬件系列vmx-16不受支持,设备0配置无效 等解决方案
修改之后就可以了:
然后一路向下,根据提示进行部署。

然后又出现一个设备配置无效的错误;
vSphere 导入由VMware导出的OVF模板出错,条目无效SHA256,ESX主机不支持功能,硬件系列vmx-16不受支持,设备0配置无效 等解决方案

这个错误的意思是说,用VWware导出的OVF文件中,有些功能设置在vSphere中无法找到,即功能模块不兼容的情况。这时就需要修改OVF文件,把用不上的功能设置点去掉。

这里要注意一个点,就是仅靠这个错误提示:设备“0”的配置无效,是无法确切定位到哪个功能在vSphere中是不受支持的,所以还是要逐个尝试,直到找到为止。

vSphere 导入由VMware导出的OVF模板出错,条目无效SHA256,ESX主机不支持功能,硬件系列vmx-16不受支持,设备0配置无效 等解决方案

ovf里面的每个item都是一个功能点配置信息,逐个删除、恢复进行尝试,我这里是InstanceID=8这一项配置不兼容。
直接删掉,再导入,就成功了。