web client service crashes java.lang.OutOfMemoryError: PermGen space and java.lang.OutOfMemoryError

vSphere web client refused to start with memory errors

log location:
Windows: c:\programdata\VMware\vCenter\Logs\vsphere-client
Appliance: /var/log/vmware/vsphere-client

 

wrapper.log

INFO | jvm 1 | 2018/04/03 15:34:25 | Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread “org.springframework.scheduling.timer.TimerFactoryBean#0”
INFO | jvm 1 | 2018/04/03 15:34:33 |
INFO | jvm 1 | 2018/04/03 15:34:33 | Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread “http-bio-9443-exec-10”
INFO | jvm 1 | 2018/04/03 15:35:12 |
INFO | jvm 1 | 2018/04/03 15:35:12 | Exception: java.lang.OutOfMemoryError thrown from the UncaughtExceptionHandler in thread “http-bio-9443-exec-6”

vsphere_client_virgo.log

[2018-04-03T15:28:45.855-04:00] [ERROR] http-bio-9090-exec-2 com.vmware.vise.util.concurrent.WorkerThread http-bio-9090-exec-2 terminated with exception: java.lang.OutOfMemoryError: PermGen space
[2018-04-03T15:28:46.773-04:00] [ERROR] http-bio-9090-exec-5 com.vmware.vise.util.concurrent.WorkerThread http-bio-9090-exec-5 terminated with exception: java.lang.OutOfMemoryError: PermGen space

 

Cause: insufficient  Web-client heap size/Insufficient PermGen space?configuration change

 

Scenario 1:  Heap-size

Resolution:

  • Ensure there is sufficient free memory on the vCenter

free -m

  • Review and Increase (double) the heap size of the web client

Appliance: cloudvm-ram-size -l vsphere-client
windows: C:\Program Files\VMware\vCenter Server\visl-integration\usr\sbin\cloudvm-ram-size.bat -l

cloudvm-ram-size.bat -C XXX 

  • start vsphere-client and observe if this still crashes.

Scenario 2: PermGen

  • Take a copy of the file service-layout.mfx as service-layout.mfx.bak
    Appliance path: /etc/vmware/
    Windows Path: C:\ProgramData\VMware\vCenterServer\cfg\
  • Edit service-layout.mfx with a text editor
  •  Change MaxPermMB size from 256 to 512 for the row vspherewebclientsvc. (increase accordingly depending on the number of plugins configured with vCenter_webclient)
  • start vsphere-client service

Scenario 3: Problem persists even after increasing/maxing out scenario 1 and scenario 2.

  • backup configuration file before you proceed

    cp /usr/lib/vmware-vsphere-client/server/wrapper/bin/vsphere-client /usr/lib/vmware-vsphere-client/server/wrapper/bin/vsphereclient.bak

  • Edit the file using a text editor

vi /usr/lib/vmware-vsphere-client/server/wrapper/bin/vsphere-client

  • Look for the line  “RUN_AS_USER=vsphere-client” and hash this
    vi vsphere-client
  • Start vsphere-client service.
Related Posts
%d bloggers like this: