【虚拟化无代理】【云平台】NSX环境重新部署NSVM失败,报ovf/vib URL路径及格式有误

戴红昌发表于:2020年09月17日 15:27:44更新于:2020年11月03日 17:01:35

现象:在虚拟化安全无代理NSX环境中,重新部署NSVM时出现失败。VMware客户端无任何deploy虚拟机的任务显示。 VMware web client 安装部署页面报下面错误:

image.png


原理介绍:无代理NSX环境部署NSVM,基础操作等同于从ovf模板部署虚拟机。NSVM的模板存放于管理中心download路径下,可通过http进行访问。进行部署时, ESXi会从相应路径下载ovf模板并使用相关配置自动进行虚拟机部署,此时在vmware client上能够看到deploy虚拟机的任务。 若ESXi无法从相关路径获取ovf模板,会出现上述报警并且部署失败。


排查步骤:

1, 确认管理中心ovf文件存在: 在管理中心 /opt/nubosh/vmsec-ctrl/tomcat/webapps/ROOT/download/NSVM/ 目录下查询是否有以下3个文件存在:

image.png

若文件不存在,需要从其他管理中心拷贝此文件。

注意: 请特别注意ovf模板版本号,截图中为“1568”。


2, 确认vCenter上配置的ovf下载地址:

     a), 使用管理员权限登录vCenter web client, 依次进入“网络与安全” - “服务定义”。 在管理中心已经添加该VC的前提下,服务定义中会有NSVM的相关服务定义“NSVM Security Service”

image.png


    b), 双击”NSVM Security Service“, 在打开的服务实例中依次进入”管理“ - ”部署“, 在“部署规范”中可以看到当前vCenter上配置的ovf下载地址,格式为https://<管理中心IP>:8443/download/NSVM/NSVM-XXXX.ovf。

image.png

确认此处的下载地址及版本号能够与管理中心的地址及版本号对应。若不相同,点击铅笔状“编辑”按钮进行重新配置并保存。


    c), 修改下载地址后重新尝试部署NSVM。


常见故障:在管理中心进行过升级操作的环境中,升级后的管理中心可能包含更新过的ovf模板文件(可从ovf文件名中的版本号进行识别),但vCenter上的下载地址不会改变。所以当客户存在“安装管理中心-部署NSVM-升级管理中心-删除原有NSVM并且重新部署”的情况时,会出现上述ovf 地址格式有误报错(如上图中,管理中心ovf模板已经更新为1568版本,但vCenter上下载地址仍然为较老的1561版本)。需要手动修改vCenter上的下载地址。


注意:在多集群部署模式中,NSVM需要一个集群一个集群地安装,否则会出现OVF文件被占用从而导致无法调用OVF的情况,同样会造成此类错误。