When attempting to browse the Performance Charts of a cluster, the vCenter GUI becomes unavailable
search cancel

When attempting to browse the Performance Charts of a cluster, the vCenter GUI becomes unavailable

book

Article ID: 397224

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

When attempting to browse specific cluster Performance Charts, the vCenter becomes unavailable, and will not return to a functional state without restarting services, or rebooting the vCenter.

Environment

vCenter 7.x

vCenter 8.x

Cause

Vsphere-ui service crashes due to java attempting to pull more memory than is available to the vsphere-ui service in the cloudvm-ram-size configuration. In the vsphere_client_virgo.log there will be evidence of an OutOfMemoryError: Java Heap Space error like this:

[2025-04-15T12:55:20.629-05:00] [INFO ] vc-service-async-pool-108     c.v.v.v.e.propertycollector.SolutionInstallPropertyCollector      Scheduling re-subscription with delay of 5000 milliseconds.
[2025-04-15T12:55:20.674-05:00] [ERROR] VLSI-I/O dispatcher-4         com.vmware.vise.util.concurrent.WorkerThread                      VLSI-I/O dispatcher-4 terminated with exception:  java.lang.OutOfMemoryError: Java heap space

vsphere-ui logs may show the task taking a long time as well:

[2025-04-10T11:23:31.554-05:00] [WARN ] http-nio-5090-exec-6         70000075 100007 200003 com.vmware.vise.util.concurrent.ExecutorUtil                      Task 'Property provider com.vmware.opsmgmt.client.advperfcharts.impl.PerformanceCountersPropertyProvider' was still runing at interruption moment after 121194 ms.

Resolution

To resolve this issue, increase the vsphere-ui ram settings in the cloudvm-ram-size settings in the vCenter. The steps to do that are provided here: Manually increasing the heap memory of components in vCenter Server 7.x and 8.x

  1. Use SSH to connect to the VCSA as root and enter the Bash shell by typing shell and pressing Enter
  2. Run the following command to output memory assigned to each of the services:
    cloudvm-ram-size -l
  3. Increase the amount of memory assigned to the services by running the following command, using the vCenter HTML5 web client (or "vsphere-ui"), as an example:
    cloudvm-ram-size -C XXXX vsphere-ui
    Note: XXXX should be replaced with the desired amount of memory in MB.
    For example, this command would increase the memory of the vsphere-ui service from 768 MB to 2048 MB.
    cloudvm-ram-size -C 2048 vsphere-ui
  4. There is no "one size fits all" memory value to set in this scenario, however - as a guide, double the size of currently assigned memory of the service that has an issue. This may need to be repeated.
  5. Restart the service that has been altered, in this example - vsphere-ui:
    service-control --stop vsphere-ui;service-control --start vsphere-ui
  6. Confirm that the service has now been allocated the increased memory by using this command:
    cloudvm-ram-size -l

 

It is also advised to lower the Statistics Collection Intervals of the clusters or inventory items that cause the service to crash.  Investigate the current levels, and lower the levels if applicable via the steps provided here: Configuring Statistics Settings

  1. In the vSphere Client, navigate to the vCenter Server instance.
  2. Select the Configure tab.
  3. Under Settings, select General.
  4. Click Edit
  5. To enable or disable a statistics interval, check the box for that interval.
  6. To change a statistics interval attribute value, select a value from the drop-down menu.
    a. In Interval Duration, select the time interval in which statistics data is collected.
    b. In Save For, select for how long the archived statistics are kept in the database.
    c. In Statistics Level, select a new level for collecting statistics.
    The lower the level is, the fewer number of statistic counters are used. Level 4 uses all statistics counters. Use it only for debugging purposes.
    The statistics level must be less than or equal to the statistics level that is set for the preceding statistics interval. This requirement is a vCenter Server dependency.
  7. In Database Size, estimate the effect of the statistics settings on the database.
    a. Enter the number of Physical Hosts.
    b. Enter the number of Virtual Machines.
    The estimated space required and number of database rows required are calculated and displayed.
    c. If necessary, make changes to your statistics collection settings.
  8. Click Save.