Navigation

Host Issues

Logs Display OutOfMemoryError

If your logs display OutOfMemoryError, ensure you are running with sufficient user limits and RAM.

Increase User Limits

For the recommended User Limit (ulimit) setting, see the FAQ on Receive “Host has low open file limits” or “Too many open files” error messages.

Ops Manager infers the host’s ulimit setting using the total number of available and current connections. To learn more about ulimit in MongoDB, see the UNIX ulimit Settings reference page in the MongoDB manual.

Ensure Sufficient RAM for All Components

Ensure that each server has enough RAM for the components it runs. If a server runs multiple components, its RAM must be at least the sum of the required amount of RAM for each component.

For the individual RAM requirements for the Ops Manager Application server, Ops Manager Application Database, Backup Daemon server, and Backup Database, see Ops Manager System Requirements.

Obsolete Config Settings

Ops Manager fails to start if there are obsolete configuration settings set in the conf-mms.properties file. If there is an obsolete setting, the log lists an Obsolete Setting error as in the following:

Warning

[OBSOLETE SETTING] Remove mms.multiFactorAuth.require or replace mms.multiFactorAuth.require with mms.multiFactorAuth.level.

You will need to remove or replace the obsolete property in the conf-mms.properties file before you can start Ops Manager.

Logs Display java.lang.OutOfMemoryError

If your logs display java.lang.OutOfMemoryError: Java heap space, you can adjust the Java Heap memory settings. Repeat the following steps for every host running an Ops Manager instance except dedicated Backup Daemon hosts.

  1. Open mms.conf in your preferred text editor.

  2. Find this line:

    JAVA_MMS_UI_OPTS="${JAVA_MMS_UI_OPTS} -d64 -Xss228k -Xmx4352m -Xms4352m -XX:NewSize=600m -Xmn1500m -XX:ReservedCodeCacheSize=128m -XX:-OmitStackTraceInFastThrow"
    

    The key values in this line are:

    -Xmx Java Heap Maximum Memory
    -Xms Java Heap Starting Memory

    By default, these values are both set to 4,352 MB (4352m).

    Do not change other Java options

    Changing any option values other than -Xmx and -Xms could have an unexpected impact on the Ops Manager Application. Do not change other values without consulting MongoDB Support.

  3. Change the -Xmx and -Xms values to a larger value. Both parameters should be set to the same value to remove any performance impact from the VM constantly reclaiming memory from the heap.

    The value is specified as #k|m|g: a number followed by

    • k (kilobytes),
    • m (megabytes), or
    • g (gigabytes)

    Example

    To set the Java heap to 10 GB, set this value to: -Xmx10g -Xms10g

  1. Click Run from the Start menu.

  2. Type regedit.

  3. Click OK.

  4. If User Access Control asks Do you want to allow this app to make changes to your device?, click Yes.

  5. Edit the following registry value:

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Procrun 2.0\MMS\Parameters\Java\Options
    
  6. Change the -Xmx and -Xms values in the Options multi-line registry key to a larger value. Both parameters should be set to the same value to remove any performance impact from the VM constantly reclaiming memory from the heap. The value of the Options key should include the following:

    -d64
    -Xss228k
    -Xmx4352m
    -Xms4352m
    -XX:NewSize=600m
    -Xmn1500m
    -XX:ReservedCodeCacheSize=128m
    -XX:-OmitStackTraceInFastThrow"
    

    The key values in this block are:

    -Xmx Java Heap Maximum Memory
    -Xms Java Heap Starting Memory

    By default, these values are both set to 4,352 MB (4352m).

    Do not change other Java options

    Changing any option values other than -Xmx and -Xms could have an unexpected impact on the Ops Manager Application. Do not change other values without consulting MongoDB Support.

    The value is specified as #k|m|g: a number followed by

    • k (kilobytes),
    • m (megabytes), or
    • g (gigabytes)

    Example

    To set the Java heap to 10 GB, set this value to: -Xmx10g -Xms10g

The optimal value for your Ops Manager installation depends upon your Ops Manager hosts’ architecture: platform, physical memory, etc. The goal of heap tuning is to balance the time the JVM spends reclaiming memory from objects that are no longer running, also known as garbage collection, and the frequency of garbage collection.

  • Large heap sizes mean less frequent and slower garbage collection.
  • Small heap sizes mean more frequent and faster garbage collection.

Important

Your Java heap size must not be set to a value greater than the amount of physical memory in the Ops Manager host or less than the default value of 4352m (4,352 MB).