...
vSAN plug-in is missing in the vSphere web client.The customer is unable to manage the vSAN cluster. vsphere_client_virgo.log [2023-11-13T09:01:38.054Z] [INFO ] async-task-executor-pool-230 com.vmware.vise.plugin.download.PluginDownloadServiceImpl Downloading plug-in package from https://xxxxx.xxxxxx.local:443/vsanHealth/plugins/vsan-h5-client.zip (no proxy defined) [2023-11-13T09:01:38.070Z] [ERROR] async-task-executor-pool-230 com.vmware.vise.plugin.download.PluginDownloadServiceImpl Downloading plug-in package: com.vmware.vsphere.client.h5vsan:7.0.2.200 has failed. Cannot connect to host: https://xxxxx.xxxxxx.local:443/vsanHealth/plugins/vsan-h5-client.zip java.io.IOException: Server returned HTTP response code: 500 for URL: https://xxxxx.xxxxxx.local:443/vsanHealth/plugins/vsan-h5-client.zip at sun.reflect.GeneratedConstructorAccessor312.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1950) at sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1945) at java.security.AccessController.doPrivileged(Native Method) at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1944) at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1514) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1498) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:268) at com.vmware.vise.util.http.ConnectionManager.getResponseBodyAsStream(ConnectionManager.java:341) at com.vmware.vise.util.http.SimpleHttpClient.executeMethodResponseAsStream(SimpleHttpClient.java:223) at com.vmware.vise.plugin.download.PluginDownloadServiceImpl.downloadPackageInfo(PluginDownloadServiceImpl.java:285) at com.vmware.vise.plugin.download.PluginDownloadServiceImpl.writeToFile(PluginDownloadServiceImpl.java:251) at com.vmware.vise.plugin.download.PluginDownloadServiceImpl.download(PluginDownloadServiceImpl.java:133) at com.vmware.vise.plugin.async.task.PluginDownloadTask.run(PluginDownloadTask.java:73) at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1640) at com.vmware.vise.util.concurrent.QueuingCachedThreadPool$2.call(QueuingCachedThreadPool.java:873) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at com.vmware.vise.util.concurrent.QueuingCachedThreadPool$QueueProcessor.run(QueuingCachedThreadPool.java:1271) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at com.vmware.vise.util.concurrent.WorkerThreadFactory$1.run(WorkerThreadFactory.java:64) at java.lang.Thread.run(Thread.java:748) Caused by: java.io.IOException: Server returned HTTP response code: 500 for URL: https://xxxxx.xxxxxx.local:443/vsanHealth/plugins/vsan-h5-client.zip at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1900) at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1498) at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:352) at com.vmware.vise.util.http.ConnectionManager.connect(ConnectionManager.java:284) at com.vmware.vise.util.http.SimpleHttpClient.connect(SimpleHttpClient.java:354) at com.vmware.vise.util.http.SimpleHttpClient.connect(SimpleHttpClient.java:324) at com.vmware.vise.util.http.SimpleHttpClient.executeMethodResponseAsStream(SimpleHttpClient.java:222) ... 14 common frames omitted
vSAN plug-in is missing in the path location: /usr/lib/vmware-vpx/vsan-health/ui-plugins/ When the vCenter server is rebooted, it loads the vSAN plug-in from the following folder: /etc/vmware/vsphere-ui/vc-packages/vsphere-client-serenity/ It extracts the vSAN html5 package to: /etc/vmware/vsphere-ui/vc-packages/vsphere-client-serenity/
To resolve this issue: Copy the vSAN plug-in from another vCenter server with the same build number. If a different vCenter build number is used, it will cause the vSAN plug-in to fail to load. root@vcsa01 [ ~ ]# mkdir -p /etc/vmware/vsphere-ui/vc-packages/vsphere-client-serenity/com.vmware.vsphere.client.h5vsan- mkdir -p /etc/vmware/vsphere-ui/vc-packages/vsphere-client-serenity/com.vmware.vsphere.client.h5vsan-7.0.2.200 root@vcsa01 [ ~ ]# unzip vsan-h5-client.zip -d /etc/vmware/vsphere-ui/vc-packages/vsphere-client-serenity/com.vmware.vsphere.client.h5vsan-6.7.0.13000 unzip vsan-h5-client.zip -d /etc/vmware/vsphere-ui/vc-packages/vsphere-client-serenity/com.vmware.vsphere.client.h5vsan-7.0.2.200 root@vcsa01 [ ~ ]# service-control --stop vsphere-ui root@vcsa01 [ ~ ]# service-control --start vsphere-ui Alternatively, deploy a temporary vCenter to the customer's environment and extract the plug-in from that VM.
Click on a version to see all relevant bugs
Dell Integration
Learn more about where this data comes from
Bug Scrub Advisor
Streamline upgrades with automated vendor bug scrubs
BugZero Enterprise
Wish you caught this bug sooner? Get proactive today.