Hi, Francois.  CloudStack needs admin rights at the vCenter server
level, not just at the datacenter level.  The "Unable to setup custom
field facility" error indicates a lack of needed permissions.

Best regards,
Kirk

On 03/26/2013 01:36 PM, Francois Gaudreault wrote:
> I should give a bit more details here.  Our vCenter contains other
> DataCenter, and we give administrative rights to the cloudstack user only
> to a specific DC.  Is that sufficient?  Do we need top-level privileges for
> adding custom fields?
> 
> Francois
> 
> 
> On Tue, Mar 26, 2013 at 4:17 PM, Francois Gaudreault <
> fgaudrea...@cloudops.com> wrote:
> 
>>  Hi,
>>
>> We compiled the 4.1 latest code today, and when we try to add a zone with
>> a VMWare cluster, we end up with this error:
>>
>> INFO  [network.vpc.VpcManagerImpl] (VpcChecker-1:) Found 0 removed VPCs to
>> cleanup
>> INFO  [hypervisor.vmware.VmwareServerDiscoverer] (catalina-exec-14:)
>> Discover host. dc: 2, pod: 2, cluster: 6, uri host: 10.0.22.12
>> INFO  [hypervisor.vmware.VmwareServerDiscoverer] (catalina-exec-14:)
>> Detected private network label : vSwitch0
>> Started
>> INFO  [vmware.manager.VmwareManagerImpl] (catalina-exec-14:) Preparing
>> network on host com.cloud.hypervisor.vmware.util.VmwareContext@184cdd35for 
>> vSwitch0
>> INFO  [vmware.mo.HypervisorHostHelper] (catalina-exec-14:) Network
>> cloud.private.untagged.0.1-vSwitch0 is ready on vSwitch vSwitch0
>> INFO  [vmware.manager.VmwareManagerImpl] (catalina-exec-14:) Preparing
>> network on host com.cloud.hypervisor.vmware.util.VmwareContext@184cdd35for 
>> vSwitch0
>> INFO  [vmware.mo.HypervisorHostHelper] (catalina-exec-14:) Network
>> cloud.private.untagged.0.1-vSwitch0 is ready on vSwitch vSwitch0
>> Started
>> ERROR [vmware.resource.VmwareResource] (catalina-exec-14:) Unexpected
>> Exception
>> java.lang.Exception: Unable to setup custom field facility for
>> Datastore:cloud.uuid
>>         at com.cloud.hypervisor.vmware.mo.CustomFieldsManagerMO.
>> ensureCustomFieldDef(CustomFieldsManagerMO.java:80)
>>         at com.cloud.hypervisor.vmware.resource.VmwareResource.
>> configure(VmwareResource.java:4804)
>>         at com.cloud.hypervisor.vmware.VmwareServerDiscoverer.find(
>> VmwareServerDiscoverer.java:268)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke(
>> NativeMethodAccessorImpl.java:57)
>>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:616)
>>         at org.springframework.aop.support.AopUtils.
>> invokeJoinpointUsingReflection(AopUtils.java:319)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:150)
>>         at org.springframework.aop.aspectj.MethodInvocationProceedingJoin
>> Point.proceed(MethodInvocationProceedingJoinPoint.java:80)
>>         at com.cloud.utils.db.TransactionContextBuilder.AroundAnyMethod(
>> TransactionContextBuilder.java:45)
>>         at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
>>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:616)
>>         at org.springframework.aop.aspectj.AbstractAspectJAdvice.
>> invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)
>>         at org.springframework.aop.aspectj.AbstractAspectJAdvice.
>> invokeAdviceMethod(AbstractAspectJAdvice.java:610)
>>         at org.springframework.aop.aspectj.AspectJAroundAdvice.
>> invoke(AspectJAroundAdvice.java:65)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:172)
>>         at org.springframework.aop.interceptor.
>> ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:172)
>>         at org.springframework.aop.framework.JdkDynamicAopProxy.
>> invoke(JdkDynamicAopProxy.java:202)
>>         at sun.proxy.$Proxy238.find(Unknown Source)
>>         at com.cloud.resource.ResourceManagerImpl.discoverCluster(
>> ResourceManagerImpl.java:521)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke(
>> NativeMethodAccessorImpl.java:57)
>>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:616)
>>         at org.springframework.aop.support.AopUtils.
>> invokeJoinpointUsingReflection(AopUtils.java:319)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:150)
>>         at org.springframework.aop.aspectj.MethodInvocationProceedingJoin
>> Point.proceed(MethodInvocationProceedingJoinPoint.java:80)
>>         at com.cloud.utils.db.TransactionContextBuilder.AroundAnyMethod(
>> TransactionContextBuilder.java:39)
>>         at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
>>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:616)
>>         at org.springframework.aop.aspectj.AbstractAspectJAdvice.
>> invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)
>>         at org.springframework.aop.aspectj.AbstractAspectJAdvice.
>> invokeAdviceMethod(AbstractAspectJAdvice.java:610)
>>         at org.springframework.aop.aspectj.AspectJAroundAdvice.
>> invoke(AspectJAroundAdvice.java:65)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:172)
>>         at org.springframework.aop.interceptor.
>> ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:172)
>>         at org.springframework.aop.framework.JdkDynamicAopProxy.
>> invoke(JdkDynamicAopProxy.java:202)
>>         at sun.proxy.$Proxy119.discoverCluster(Unknown Source)
>>         at org.apache.cloudstack.api.command.admin.cluster.
>> AddClusterCmd.execute(AddClusterCmd.java:153)
>>         at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:163)
>>         at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
>>         at org.springframework.aop.framework.Cglib2AopProxy$
>> CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:150)
>>         at org.springframework.aop.aspectj.MethodInvocationProceedingJoin
>> Point.proceed(MethodInvocationProceedingJoinPoint.java:80)
>>         at com.cloud.utils.db.TransactionContextBuilder.AroundAnyMethod(
>> TransactionContextBuilder.java:45)
>>         at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
>>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:616)
>>         at org.springframework.aop.aspectj.AbstractAspectJAdvice.
>> invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)
>>         at org.springframework.aop.aspectj.AbstractAspectJAdvice.
>> invokeAdviceMethod(AbstractAspectJAdvice.java:610)
>>         at org.springframework.aop.aspectj.AspectJAroundAdvice.
>> invoke(AspectJAroundAdvice.java:65)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:172)
>>         at org.springframework.aop.interceptor.
>> ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:172)
>>         at org.springframework.aop.framework.Cglib2AopProxy$
>> DynamicAdvisedInterceptor.intercept(Cglib2AopProxy.java:622)
>>         at com.cloud.api.ApiServer.queueCommand(ApiServer.java:500)
>>         at com.cloud.api.ApiServer.handleRequest(ApiServer.java:349)
>>         at sun.reflect.GeneratedMethodAccessor85.invoke(Unknown Source)
>>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:616)
>>         at org.springframework.aop.support.AopUtils.
>> invokeJoinpointUsingReflection(AopUtils.java:319)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> invokeJoinpoint(ReflectiveMethodInvocation.java:183)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:150)
>>         at org.springframework.aop.aspectj.MethodInvocationProceedingJoin
>> Point.proceed(MethodInvocationProceedingJoinPoint.java:80)
>>         at com.cloud.utils.db.TransactionContextBuilder.AroundAnyMethod(
>> TransactionContextBuilder.java:45)
>>         at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
>>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(
>> DelegatingMethodAccessorImpl.java:43)
>>         at java.lang.reflect.Method.invoke(Method.java:616)
>>         at org.springframework.aop.aspectj.AbstractAspectJAdvice.
>> invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:621)
>>         at org.springframework.aop.aspectj.AbstractAspectJAdvice.
>> invokeAdviceMethod(AbstractAspectJAdvice.java:610)
>>         at org.springframework.aop.aspectj.AspectJAroundAdvice.
>> invoke(AspectJAroundAdvice.java:65)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:172)
>>         at org.springframework.aop.interceptor.
>> ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:90)
>>         at org.springframework.aop.framework.ReflectiveMethodInvocation.
>> proceed(ReflectiveMethodInvocation.java:172)
>>         at org.springframework.aop.framework.JdkDynamicAopProxy.
>> invoke(JdkDynamicAopProxy.java:202)
>>         at sun.proxy.$Proxy389.handleRequest(Unknown Source)
>>         at com.cloud.api.ApiServlet.processRequest(ApiServlet.java:302)
>>         at com.cloud.api.ApiServlet.doGet(ApiServlet.java:66)
>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>         at org.apache.catalina.core.ApplicationFilterChain.
>> internalDoFilter(ApplicationFilterChain.java:290)
>>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(
>> ApplicationFilterChain.java:206)
>>         at org.apache.catalina.core.StandardWrapperValve.invoke(
>> StandardWrapperValve.java:233)
>>         at org.apache.catalina.core.StandardContextValve.invoke(
>> StandardContextValve.java:191)
>>         at org.apache.catalina.core.StandardHostValve.invoke(
>> StandardHostValve.java:127)
>>         at org.apache.catalina.valves.ErrorReportValve.invoke(
>> ErrorReportValve.java:102)
>>         at org.apache.catalina.valves.AccessLogValve.invoke(
>> AccessLogValve.java:555)
>>         at org.apache.catalina.core.StandardEngineValve.invoke(
>> StandardEngineValve.java:109)
>>         at org.apache.catalina.connector.CoyoteAdapter.service(
>> CoyoteAdapter.java:298)
>>         at org.apache.coyote.http11.Http11NioProcessor.process(
>> Http11NioProcessor.java:889)
>>         at org.apache.coyote.http11.Http11NioProtocol$
>> Http11ConnectionHandler.process(Http11NioProtocol.java:721)
>>         at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.
>> run(NioEndpoint.java:2274)
>>         at java.util.concurrent.ThreadPoolExecutor.runWorker(
>> ThreadPoolExecutor.java:1146)
>>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(
>> ThreadPoolExecutor.java:615)
>>         at java.lang.Thread.run(Thread.java:679)
>>
>> The cluster is being created, but we obviously see no hosts enabled.
>> Another interesting issue is about the vmWare network labels.  Even if we
>> use vSwitch2 for the Public network, CloudStack wants to use vSwitch0.
>>
>> INFO  [vmware.resource.VmwareResource] (catalina-exec-19:) VmwareResource
>> network configuration info. private vSwitch: vSwitch0, public vSwitch:
>> vSwitch0, guest network: vSwitch0
>> Started**
>>
>> Last time we tried this in our lab (1 mth ago) using vCenter 5.1, it was
>> working flawlessly. Any light?
>>
>> Thanks!
>>
>> --
>> Francois Gaudreault
>> Architecte de Solution Cloud | Cloud Solutions 
>> Architectfgaudreault@cloudops.com514-629-6775
>> - - -
>> CloudOps
>> 420 rue Guy
>> Montréal QC  H3J 1S6www.cloudops.com
>> @CloudOps_
>>
>>
> 

Reply via email to