VMware Solutions Discussions

Feedback requested for Virtual Storage Console 2.0 Users

robertim

We're looking for feedback from  customers that have downloaded Virtual Storage Console and are using it. Any and all comments and feedback welcome.

128 REPLIES 128

BRYNOMON74

Hello,

We are a new NetApp customer and we are experiencing issues with using VSC in vcenter. I will be opening a case with netapp shortly but the problem has also been experienced by others. However I haven't found a solutin yet.

1. VSC does not update automatically. It is a manual process.

2. When updating discovery never completes.An event error is logged on the vcenter server

Log Name:      Application
Source:        SMVI
Date:          5/11/2011 10:54:07 AM
Event ID:      4096
Task Category: (4)
Level:         Warning
Keywords:      Classic
User:          N/A
Computer:      uselk1vim01.americas.research.global.loc
Description:
The description for Event ID 4096 from source SMVI cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.

If the event originated on another computer, the display information had to be saved with the event.

The following information was included with the event:

23417 [WrapperSimpleAppMain] WARN com.netapp.common.credentials.FileCredentialPersistenceManager - CPM-00305: Persistence file E:\Program Files\NetApp\Virtual Storage Console\smvi\server\etc\cred does not exist

3. Other EventLog Entries Such As:

Log Name:      Application
Source:        SMVI
Date:          5/10/2011 5:35:02 PM
Event ID:      4096
Task Category: (5)
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      uselk1vim01.americas.research.global.loc
Description:
The description for Event ID 4096 from source SMVI cannot be found. Either the component that raises this event is not installed on your local computer or the installation is corrupted. You can install or repair the component on the local computer.

If the event originated on another computer, the display information had to be saved with the event.

The following information was included with the event:

594559150 [update-job1 56e2aff274674c9f685221b79fab390d] ERROR com.netapp.smvi.task.schedule.ListJobAction - Failed to find identifier 2k8r2enttmp as a datacenter, datastore or virtual machine reference.

When this application works it is great but it has rarely worked as expected.

hlebodar2010

We are experiencing the same problem


Other EventLog Entries Such As:Log Name:      Application

Source:        SMVI

Date:          26.05.2011

Event ID:      4096

Task Category: (5)

Level:         Error

Keywords:      Classic

User:          N/A

Computer:      vapp

Description:

24172 [WrapperSimpleAppMain] ERROR com.netapp.smvi.security.authentication.vsphere.VSphereAuthenticator - Incorrect password

javax.xml.ws.soap.SOAPFaultException: Remote host closed connection during handshake    at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:147)    at $Proxy74.retrieveServiceContent(Unknown Source)    at com.netapp.smvi.VimClient.<init>(VimClient.java:68)    at com.netapp.smvi.VimClientFactory.getVimClient(VimClientFactory.java:105)    at com.netapp.smvi.security.authentication.vsphere.VSphereAuthenticator.isValidCredential(VSphereAuthenticator.java:68)    at com.netapp.smvi.security.authentication.vsphere.VSphereCredentialVimClientLoader.loadVimClient(VSphereCredentialVimClientLoader.java:36)    at com.netapp.smvi.security.authentication.vsphere.VSphereCredentialVimClientLoader.run(VSphereCredentialVimClientLoader.java:50)    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)    at java.lang.reflect.Method.invoke(Unknown Source)    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:297)    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:250)    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:144)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:350)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1330)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)    at java.security.AccessController.doPrivileged(Native Method)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221)    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)    at java.security.AccessController.doPrivileged(Native Method)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221)    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:287)    at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:126)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)    at java.security.AccessController.doPrivileged(Native Method)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221)    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)    at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:671)    at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:610)    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:412)    at org.springframework.beans.factory.annotation.InjectionMetadata.injectFields(InjectionMetadata.java:105)    at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessAfterInstantiation(AutowiredAnnotationBeanPostProcessor.java:240)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:959)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)    at java.security.AccessController.doPrivileged(Native Method)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:221)    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:429)    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729)    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381)    at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:255)    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:199)    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45)    at org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:540)    at org.mortbay.jetty.servlet.Context.startContext(Context.java:135)    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1220)    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:510)    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:448)    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)    at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)    at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)    at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)    at org.mortbay.jetty.Server.doStart(Server.java:222)    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:39)    at com.netapp.common.server.AbstractJettyServer.start(AbstractJettyServer.java:125)    at com.netapp.common.server.ServerFacade.start(ServerFacade.java:61)    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)    at java.lang.reflect.Method.invoke(Unknown Source)    at com.netapp.common.cli.binding.CommandBinding.execute(CommandBinding.java:97)    at com.netapp.common.server.ServerMain.execute(ServerMain.java:43)    at com.netapp.common.server.ServerMain.main(ServerMain.java:68)    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)    at java.lang.reflect.Method.invoke(Unknown Source)    at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:244)    at java.lang.Thread.run(Unknown Source)Caused by: com.ctc.wstx.exc.WstxIOException: Remote host closed connection during handshake    at com.ctc.wstx.sw.BaseStreamWriter.flush(BaseStreamWriter.java:313)    at org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(AbstractOutDatabindingInterceptor.java:94)    at org.apache.cxf.interceptor.BareOutInterceptor.handleMessage(BareOutInterceptor.java:68)    at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:472)    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:302)    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:254)    at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)    at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:127)    ... 102 moreCaused by: javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(Unknown Source)    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.performInitialHandshake(Unknown Source)    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)    at com.sun.net.ssl.internal.ssl.SSLSocketImpl.startHandshake(Unknown Source)    at sun.net.www.protocol.https.HttpsClient.afterConnect(Unknown Source)    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source)    at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(Unknown Source)    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(Unknown Source)    at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleHeadersTrustCaching(HTTPConduit.java:1913)    at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.onFirstWrite(HTTPConduit.java:1868)    at org.apache.cxf.io.AbstractWrappedOutputStream.write(AbstractWrappedOutputStream.java:42)    at org.apache.cxf.io.AbstractThresholdOutputStream.write(AbstractThresholdOutputStream.java:69)    at com.ctc.wstx.io.UTF8Writer.flush(UTF8Writer.java:96)    at com.ctc.wstx.sw.BufferingXmlWriter.flush(BufferingXmlWriter.java:214)    at com.ctc.wstx.sw.BaseStreamWriter.flush(BaseStreamWriter.java:311)    ... 110 moreCaused by: java.io.EOFException: SSL peer shut down incorrectly    at com.sun.net.ssl.internal.ssl.InputRecord.read(Unknown Source)    ... 125 more

glen_eustace

We are an N-Series shop and have been running SMVi for about 8 months now.  I am wanting to migrate to SVC but my progress today has not been encouraging.

After installing SVC on a vCentre server, it seesm to get really confused about the networking. All of our datastores are on a private unrouted network, initially they were discovered and I was prompted for appropriate IP addresses and credientials.  Entering the public network and user etc was accepted but on completion I just got into a loop with SVC rediscovering the private IPs and not using the public ones supplied.  My next attempt was to add the NFS network as a VM network and attach a 2nd NIC to the vCentre server.  This allowed the discovery to find the controllers but after having told me it had found 2 and finishing discovery, nothing appeared in the Overview and the Discover Status option tells me their are no controllers.  Using Update doesn't change the situation.

So at the moment I am stuffed.

I saw a posting saying that e0M might be chosen as a management address so I have added a 'null' route to prevent access to it.  The NFS vmkernel network is not the lowest numbered network on the controller, there are several other non-routable networks that are lower.

The svc.xml file has an empty <mgmtipaddress> for both datastores, not sure if this is normal.

forgette

Hi Glen, I'm sorry you're having issues with the 2.0 version.  Please stay tuned for announcements regarding the next release though...  It is coming soon (sorry, I'm not sure exactly when) and will support datastores on private unrouted networks.

glen_eustace

Its a pity we then need to add ~ 3 months before we see the N-Series incarnation out of IBM.

Is there any workaround to get this to work in the meantime ?

forgette

I'm sorry, I've only worked on the "next" release.  I'm not sure if there is a workaround in 2.0.  Have you opened a support case by any chance?

glen_eustace

Yes, through the IBM support channel which when it is escalated, which I am pretty sure it will be, will end up in with NetApp Engineering.

tom_maddox

It would be very nice if, when updating the Overview screen, the "Discovering Network Components..." screen gave an indication of how far along it was. It just says "Loading" and has done so for several minutes, so I have no idea if it's actually running or if it's hung up or waiting for something to time out.

forgette

Please stay tuned for announcements regarding the next release... 

tom_maddox

After installing VSC 2.1, vSphere is unable to discover my NetApps at all. Should these issues go into this thread, or will a new one be started? When can we expect VSC to come out of beta?

netappbd9

Did you ever resolve this Tom? I have just upgraded to 2.1 and the Update button does not work. Strangley the components show as updated but the VSC still shows as being on version 2.0.1. I have tried uninstalling and reinstalling to no effect

glen_eustace

For us unfortunate souls that don't have access to NOW ( IBM N-Series user ), can you put any of the info, new features, release notes doc etc somewhere where I can see them please.  I appreciate that I'll need to wait, probably 3 - 6 mths before IBM have rebadged VSC2.1 but I would be keen to see what improvements there may be.

Can you confirm that 2.1 will work in our environment where the Datastores are on a private network ?  This definitely does not work at 2.0 ( unless there is a work around we haven't been told about.)

forgette

I'm afraid I don't have the authority to repost something that is on the NOW site.

> Can you confirm that 2.1 will work in our environment where the Datastores are on a private network?

The answer is a qualified yes.  The "Discovery & Host Monitoring" as well as the "Provisioning and Cloning" features will now handle this properly in 2.1. 

The "Backup and Recovery" might as well, it depends on the configuration.

> This definitely does not work at 2.0 ( unless there is a work around we haven't been told about.)

You are correct.

glen_eustace

Thanks Eric.  I will pursue this through the IBM channels.

glen_eustace

OK, 2.1 VSC for N-Series noew installed.  An improvement but still no cigar   VSC discovered both of the filers but showed them as 'Unknown'.  I attempted to add them in by just doing a 'Add'.  This cause one of the unknowns to be replaced with the correct data.  I then tried adding in the 2nd and both the remaining Unknown and the one previously added dissappear and are replace by the new one.  No amount of mucking around seems to allow me to add and then get to see permanently both filers.  Surely this isn't how it is supposed to work so I must be doing something wrong

tom_maddox

Glen, I would not beat myself up if I were you. This software is clearly not ready for prime time. It is error-prone, unreliable, and cannot perform the tasks for which it seems to have been designed. Also, NetApp support personnel have apparently not received training on it, so you may be better off not using it until such time as it is production-ready.

keitha

Tom and Glen,

I'm sorry you are having these issues. One siggestion though is please start different threads for these types of issues, this thread has run it's course and I am going to ask to have it locked I think.

Tom,

You say the VSC can't discover the NetApp at all. Did it discover them ever before? Can the host that VSC is installed on contact the NFS network the ESX hosts are connected to the NetApp on or do you use FC? Any details about your network layout would really help.

Glen,

When you selected "ADD" how did you specify the NetApp controller? IP Hostname? Do you have VMware datastores on both of the controllers? I'm thinking it is getting confused by hostname resolution perhaps...

Do you have open cases for this problem? If so send me a direct message and I can look at the case notes...

Keith

keitha

I have asked for this thread to be locked. It's not that we don't want your feedback and suggestions. WE DO! but this thread has run off topic and we now have many different support issues mixed in with the feedback and suggestions. Ideally we should start new threads for a support type issue as that makes it easier for us NetApp folks but mor importantly easier for other customers who have the same issue to seach and find solutions. Feed back and suggestions are always welcome too, please just post it in a new thread. Thanks!

Keith

jabenedicic

The documentation/kb article regarding the Role Based Access Control for VSC 2.x needs to be updated for 2.1. The following API's have moved from being required within the Create Clones role to the VSC/Monitoring & Host Configuration role:

api-fcp-service-status

api-iscsi-service-status

I am also having issues adding controllers using the Destroy Storage role within RCU with the error of insufficient privileges. No messages are posted to the filer console so I am unsure if/which API's are missing at this stage, however I will continue to investigate and provide feedback when I know more.

EDIT: I noticed in the release notes that it says the requirements have changed and to visit the kb article, it doesn't mention what was changed and the article hasn't been updated yet.

Announcements
NetApp on Discord Image

We're on Discord, are you?

Live Chat, Watch Parties, and More!

Explore Banner

Meet Explore, NetApp’s digital sales platform

Engage digitally throughout the sales process, from product discovery to configuration, and handle all your post-purchase needs.

NetApp Insights to Action
I2A Banner
Public