VMware vCenter Server Appliance fails to reconfigure JVM settings when the memory size of the virtual machine on which it resides is modified
search cancel

VMware vCenter Server Appliance fails to reconfigure JVM settings when the memory size of the virtual machine on which it resides is modified

book

Article ID: 341108

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

Symptoms:
  • After modifying the memory size of the virtual machine on which the vCenter Server Appliance (VCSA) resides, the JVM settings are not reconfigured
  • The JVM settings are not automatically reconfigured after the memory size of the virtual machine on which the VCSA resides is reduced from the default size


Environment

VMware vCenter Server Appliance 5.1.x
VMware vCenter Server Appliance 5.0.x

Cause

After changing the memory size of the virtual machine containing the vCenter Server Appliance from the default 8GB to a lower size, swapping may occur in the operating system of VCSA. This occurs because the embedded components, including the vSphere Web Client, Inventory Service, and Profile Driven Storage service, do not automatically reconfigure their JVM heap settings proportional to the total memory available to the operating system after the memory size is reduced. Therefore, these components may over-consume memory and cause guest and host level swapping.

Resolution

To resolve this issue, after changing the memory size of the virtual machine, manually reconfigure the JVM heap size in the Virtual Appliance Management Interface (VAMI).
To manually reconfigure the JVM heap size:
  1. In a Web browser, navigate to https://VCSA_IP:5480.
  2. Click the vCenter Server tab.
  3. Click the Services tab.
  4. Click Inventory Size.
  5. Select one of these options depending on the size of the configured memory available to the virtual machine:

    • Small: Virtual machine RAM 4GB-8GB

      JVM Heap settings for the individual components

      • VMware VirtualCenter Management Webservices (tc Server): 1GB
      • Inventory Service: 3GB
      • Profile-Driver Storage service: 512MB

    • Medium: Virtual machine RAM 16GB

      JVM Heap settings for the individual components

      • VMware VirtualCenter Management Webservices (tc Server): 2GB
      • Inventory Service: 6GB
      • Profile-Driver Storage service: 1GB

    • Large: Virtual machine RAM 24GB

      JVM Heap settings for the individual components

      • VMware VirtualCenter Management Webservices (tc Server): 3GB
      • Inventory Service: 12GB
      • Profile-Driver Storage service: 2GB
For more information on JVM Heap settings, see Hardware Requirements for vCenter Server, vCenter Single Sign On, vSphere Client, and vSphere Web Client.


Additional Information

  • The configuration files and parameters related to JVM heap sizes are:
    • / usr/lib/vmware-vsphere-client/server/wrapper/conf/wrapper.conf

      wrapper.java.initmemory=512
      wrapper.java.maxmemory=2048

    • /usr/lib/vmware-vpx/inventoryservice/wrapper/conf/wrapper.conf

      wrapper.java.initmemory=256
      wrapper.java.maxmemory=3072

    • /usr/lib/vmware-vpx/sps/wrapper/conf/wrapper.conf

      wrapper.java.initmemory=256
      wrapper.java.maxmemory=1024

  • Run this command to view the JVM heap size:

    vpxd_servicecfg jvm-max-heap read

    You see output similar to:

    VC_MAX_HEAP_SIZE_QS=3072
    VC_MAX_HEAP_SIZE_SPS=1024
    VC_MAX_HEAP_SIZE_TOMCAT=512
    VC_CFG_RESULT=0
在修改 vCenter Server Appliance 所在虚拟机的内存大小后,vCenter Server Appliance 无法重新配置 JVM 设置