Quantcast
Channel: VMware Communities : Discussion List - ESXi
Viewing all articles
Browse latest Browse all 8132

Deploying OVF Template fails with mixed ESXi version in cluster

$
0
0

I am attempting to deploy an OVA to my cluster with mixed ESXi versions, and encountering errors on the "Select Resource" page depending on which host I choose. I'm hoping someone can provide feedback about the behavior I'm seeing.

 

OVA: VMware Integrated OpenStack 2.5.0, also tried 3.1.0

vCenter: Tried with both 6.5 GA  (Version 6.5.0 Build 4602587) and 6.5 a (Version 6.5.0 Build 4944578), and I have verified the behavior occurs both with the Appliance as well as Windows vCenter

ESXi host versions in cluster:

  • 6.5.0 4564106 (6.5 GA)
  • 6.5.0 4887370 (6.5 a)
  • 6.0.0 3620759 (6.0 U2)

 

I am able to successfully deploy the OVA if I select the cluster as the resource in Step #3.

I am also able to successfully deploy the OVA if I select the ESXi host with 6.0 U2.

However, if I select either of the 6.5 hosts, I encounter an error, after the "Validating..." modal goes away.

The given OVF descriptor is invalid: The operation is not allowed in the current state of the host.;

Untitled.png

When this happens there is no error present in the Events or Tasks. Although it is interesting to note that if I cancel the Deploy OVF template wizard, there is an "Import OVF package" task that is stuck at 0% in tasks, until I cancel it. This happens whether or not I receive the error.

The error above also appears in the Virgo log:

 

vsphere.client.provisioning.spec.DeployOnResourcePoolValidationSpec {

  commonContext = java.lang.Object[]:[

    com.vmware.vsphere.client.provisioning.ovf.impl.ResourcePoolDeploySession {

      host = ManagedObjectReference: type = HostSystem, value = host-27, serverGuid = c5f54088-c0f1-47b6-b2cc-ba6032954eae

      folder = null

      source = file://VMware-OpenStack-2.5.0.0-3955000_OVF10.ova

      provisioningTarget = ManagedObjectReference: type = ResourcePool, value = resgroup-8, serverGuid = c5f54088-c0f1-47b6-b2cc-ba6032954eae

      sourceType = PUSH_SOURCE

      pushContentType = OVF_SOURCE

      pushOvfOption = MANIFEST_CERTIFICATE

      sessionId = aeae6954-f03d-4d06-ba0a-5b156dc9f4a9:c5f54088-c0f1-47b6-b2cc-ba6032954eae

      clientToken = 27b55e40-e94e-4820-8acc-c9b47f31af8c

    },

    com.vmware.vsphere.client.provisioning.workflow.Workflow {

      id = deployOvfOnResourcePool

      contextObject = ManagedObjectReference: type = ClusterComputeResource, value = domain-c7, serverGuid = c5f54088-c0f1-47b6-b2cc-ba6032954eae

    },

    recursion@home,

  ]

  name = VMware-OpenStack-2.5.0.0-3955000_OVF10

  template = file://VMware-OpenStack-2.5.0.0-3955000_OVF10.ova

  provisioningTarget = ManagedObjectReference: type = ResourcePool, value = resgroup-8, serverGuid = c5f54088-c0f1-47b6-b2cc-ba6032954eae

  host = ManagedObjectReference: type = HostSystem, value = host-27, serverGuid = c5f54088-c0f1-47b6-b2cc-ba6032954eae

  folder = null

  sourceType = PUSH_SOURCE

  pushContentType = OVF_SOURCE

  pushOvfOption = MANIFEST_CERTIFICATE

} com.vmware.vim.binding.vmodl.MethodFault: The given OVF descriptor is invalid: The operation is not allowed in the current state of the host.;

        at com.vmware.vsphere.client.provisioning.impl.ProvisioningResourcePoolMutationProvider.validate(ProvisioningResourcePoolMutationProvider.java:317)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:498)

        at com.vmware.vise.data.provider.DelegatingServiceBase.invokeProviderInternal(DelegatingServiceBase.java:400)

        at com.vmware.vise.data.provider.DelegatingServiceBase.delegate(DelegatingServiceBase.java:115)

        at com.vmware.vise.data.mutation.impl.MutationServiceImpl.validate(MutationServiceImpl.java:303)

        at sun.reflect.GeneratedMethodAccessor723.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:498)

        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:319)

        at org.eclipse.gemini.blueprint.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:56)

        at org.eclipse.gemini.blueprint.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:60)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

        at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)

        at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

        at org.eclipse.gemini.blueprint.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:57)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

        at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)

        at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)

        at com.sun.proxy.$Proxy220.validate(Unknown Source)

        at sun.reflect.GeneratedMethodAccessor722.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:498)

        at flex.messaging.services.remoting.adapters.JavaAdapter.invoke(JavaAdapter.java:418)

        at com.vmware.vise.messaging.remoting.JavaAdapterEx.invoke(JavaAdapterEx.java:72)

        at flex.messaging.services.RemotingService.serviceMessage(RemotingService.java:183)

        at flex.messaging.MessageBroker.routeMessageToService(MessageBroker.java:1400)

        at flex.messaging.endpoints.AbstractEndpoint.serviceMessage(AbstractEndpoint.java:1011)

        at flex.messaging.endpoints.AbstractEndpoint$$FastClassByCGLIB$$1a3ef066.invoke(<generated>)

        at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)

        at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)

        at org.springframework.flex.core.MessageInterceptionAdvice.invoke(MessageInterceptionAdvice.java:66)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

        at org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invoke(ThrowsAdviceInterceptor.java:124)

        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

        at org.springframework.aop.framework.Cglib2AopProxy$FixedChainStaticTargetInterceptor.intercept(Cglib2AopProxy.java:573)

        at com.vmware.vise.messaging.endpoints.AMFEndpoint$$EnhancerByCGLIB$$25b86fa6.serviceMessage(<generated>)

        at flex.messaging.endpoints.amf.MessageBrokerFilter.invoke(MessageBrokerFilter.java:103)

        at flex.messaging.endpoints.amf.LegacyFilter.invoke(LegacyFilter.java:158)

        at flex.messaging.endpoints.amf.SessionFilter.invoke(SessionFilter.java:44)

        at flex.messaging.endpoints.amf.BatchProcessFilter.invoke(BatchProcessFilter.java:67)

        at flex.messaging.endpoints.amf.SerializationFilter.invoke(SerializationFilter.java:166)

        at flex.messaging.endpoints.BaseHTTPEndpoint.service(BaseHTTPEndpoint.java:291)

        at com.vmware.vise.messaging.endpoints.AMFEndpoint$$EnhancerByCGLIB$$25b86fa6.service(<generated>)

        at org.springframework.flex.servlet.MessageBrokerHandlerAdapter.handle(MessageBrokerHandlerAdapter.java:109)

        at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)

        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)

        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)

        at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:789)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)

        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

        at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

        at com.vmware.vise.security.SessionManagementFilter.doFilterInternal(SessionManagementFilter.java:82)

        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

        at com.vmware.vsphere.client.logging.MDCLogFilter.doFilterInternal(MDCLogFilter.java:41)

        at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)

        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)

        at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)

        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)

        at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)

        at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:683)

        at org.eclipse.virgo.web.tomcat.support.ApplicationNameTrackingValve.invoke(ApplicationNameTrackingValve.java:33)

        at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)

        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

        at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)

        at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)

        at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)

        at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)

        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

        at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

        at java.lang.Thread.run(Thread.java:745)

 

 

What is more interesting is that I am able to deploy to different hosts in the cluster by removing certain combinations of other hosts.


As mentioned above, when all 3 versions of hosts are present in the host, I can only deploy to the 6.0U2 host selected as the resource.

When I remove the 6.0U2 host from inventory, I can only deploy to the 6.5 GA host selected as the resource.

And finally, when I remove all other versions from the cluster, I can deploy to the 6.5a host selected as the resource.


Can anyone confirm this behavior, or provide some details why I am able to select some hosts as the resource but not others? It appears that I can only select the lowest version of ESXi in the cluster as the resource. If you can point me to somewhere in the documentation that may explain this behavior I would appreciate it!


Viewing all articles
Browse latest Browse all 8132

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>