Why is Java on vCenter using most of the Memory? and How to fix it

So after installing a new 2008 R2 vCenter 5.5 I look at the memory usage and found it was using 88% of the memory.  I open up task manager and find Java running with 7 processes using as high as 1.2GBs of memory.  So like always I did a google search and found this vmware article.

Why?Configuring Tomcat server settings in VMware vCenter Server 5.1 and 5.5 (2021302)

Purpose

This article provides information on configuring Tomcat server settings in vCenter Server 5.1 and 5.5.Note: This is a not a comprehensive guide. For more information, see the vSphere 5.x documentation. If there is a discrepancy between the documentation and this article, assume that the documentation is correct.

Resolution

Starting with vCenter Server 5.1, VMware Tomcat Server settings can no longer be configured through the Windows user interface at Start > Programs > VMware > VMware Tomcat.vCenter Server 5.1 uses VMware vFabric tc Server, an enterprise version of Apache Tomcat 7. Unlike Tomcat version 6, which is used with earlier versions of vCenter Server, Tomcat version 7 does not provide a control panel in the Windows user interface. Instead, you configure Tomcat by editing configuration files manually.You can adjust the JVM maximum heap size for vCenter Server, vCenter Single Sign-On, vCenter Inventory Service, and Profile-Driven Storage Service.

This table provides the JVM heap size recommendations:

vCenter Server 5.1:

vCenter Server Inventory VMware VirtualCenter Management Webservices (tc Server) Inventory Service Profile-Driven Storage Service
Small inventory (1-100 hosts or 1-1000 virtual machines) 1 GB 3 GB 512 MB
Medium inventory (100-400 hosts or 1000-4000 virtual machines) 2 GB 6 GB 1 GB
Large inventory (More than 400 hosts or 4000 virtual machines) 3 GB 12 GB 2 GB

vCenter Server 5.5:

vCenter Server Inventory VMware VirtualCenter Management Webservices (tc Server) Inventory Service Profile-Driven Storage Service
Small inventory (1-100 hosts or 1-1000 virtual machines) 512 MB 3 GB 1 GB
Medium inventory (100-400 hosts or 1000-4000 virtual machines) 512 MB 6 GB 2 GB
Large inventory (More than 400 hosts or 4000 virtual machines) 1024 MB 12 GB 4 GB

Note:After adjusting the JVM heap size in the wrapper.conf file, VMware recommends restarting the VirtualCenter Management Web services. For more information, see Stopping, starting, or restarting vCenter services (1003895).

Java setting options and file locations for vSphere services

  • VirtualCenter Management WebServicesConfiguration file location:installation_directory\VMware\Infrastructure\tomcat\conf\wrapper.conf

    Heap size parameter:

    wrapper.java.additional.9="-Xmxheap_sizeM"

  • vCenter Single Sign-On (vSphere 5.1)Configuration file location:installation_directory\VMware\Infrastructure\SSOServer\conf\wrapper.conf

    Heap size parameter:

    wrapper.java.additional.9="-Xmxheap_sizeM"

  • vCenter Single Sign-On (vSphere 5.5)Configuration file location:installation_directory\ProgramData\VMware\CIS\runtime\VMwareSTS\conf\wrapper.conf

    Heap size parameter:

    wrapper.java.additional.9="-Xmxheap_sizeM"

  • vCenter Inventory ServiceConfiguration file location:installation_directory\VMware\Infrastructure\Inventory Service\conf\wrapper.conf

    Heap size parameter:

    # Maximum Java Heap Size (in MB)
    wrapper.java.maxmemory=heap_size

  • vSphere Profile-Driven StorageConfiguration file location:installation_directory\VMware\Infrastructure\Profile-Driven Storage\conf\wrapper.conf

    Heap size parameter:

    # Maximum Java Heap Size (in MB)
    wrapper.java.maxmemory=heap_size

  • vSphere Web ClientConfiguration file location:installation_directory\Program Files\VMware\Infrastructure\vSphereWebClient\server\bin\service\conf\wrapper.conf

    Heap size parameter:

    ########
    # JVM Memory
    ########
    wrapper.java.maxmemory=heap_size

  • VMware Log BrowserConfiguration file location:installation_directory\Program Files\VMware\Infrastructure\vSphereWebClient\logbrowser\conf\wrapper.conf

    Heap size parameter:

    ########
    # JVM Memory
    ########
    wrapper.java.maxmemory=heap_size

For more information, see the Configuring VMware Tomcat Server Settings in vCenter Server section in the vSphere Installation and Setup guide and vSphere 5.5 Documentation Center

Leave a Reply