Host Issues
On this page
Logs Display java.lang.OutOfMemoryError
If your logs display java.lang.OutOfMemoryError: Java heap space
,
adjust the Java Heap memory settings.
To adjust the Java Heap memory settings, repeat the following steps for every host running an Ops Manager instance except dedicated Backup Daemon hosts:
Open
mms.conf
in your preferred text editor.Find this line:
JAVA_MMS_UI_OPTS="${JAVA_MMS_UI_OPTS} -Xss228k -Xmx8096m -Xms8096m -XX:NewSize=600m -XX:ReservedCodeCacheSize=128m -XX:-OmitStackTraceInFastThrow" KeyValueDefault-Xmx
Java Heap Maximum Memory8,096 MB (8096m
)-Xms
Java Heap Starting Memory8,096 MB (8096m
)Warning
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. Starting with Ops Manager 7.0, Ops Manager adopted a Garbage-First Garbage Collector (G1GC) method for the JVM. Don't use-Xmn
to set the size of the heap for the young generation.Change the
-Xmx
and-Xms
values:Change the
-Xmx
and-Xms
values to a larger value. You should set both parameters to the same value to remove any performance impact from the VM constantly reclaiming memory from the heap.
Specify the values as
#k|m|g
: a number followed by:k
(kilobytes),m
(megabytes), org
(gigabytes)
Example
To set the Java Heap to 12 GB, set the values to:
-Xmx12g -Xms12g
.Restart each host running an Ops Manager instance on which you made these changes.
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
Consider the co-located MongoDB processes running on the host and
do not set your Java Heap size to a value greater than the amount of
physical memory in the Ops Manager host or less than the default value
of 8096m
(8,096 MB).
Logs Display java.lang.StackOverflowError
If your logs display java.lang.StackOverflowError
, adjust the
Java stack memory settings.
To adjust the Java stack memory settings, repeat the following steps for every host running an Ops Manager instance except dedicated Backup Daemon hosts:
Open
mms.conf
in your preferred text editor.Find this line:
JAVA_MMS_UI_OPTS="${JAVA_MMS_UI_OPTS} -Xss228k -Xmx8096m -Xms8096m -XX:NewSize=600m -XX:ReservedCodeCacheSize=128m -XX:-OmitStackTraceInFastThrow" The key values in this line are:
KeyValue-Xss
Java Stack SizeBy default, this value is set to 228 KB (
228k
).Warning
Do not change other Java options
Changing any option value other than
-Xss
could have an unexpected impact on the Ops Manager Application. Do not change other values without consulting MongoDB Support.Change
-Xss228k
to-Xss1m
(1 MB).
Important
Consider the co-located MongoDB processes running on the host and
do not set your Java stack size to a value greater than the amount of
physical memory in the Ops Manager host or less than the default value
of 228k
(228 KB).
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.
To learn about 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.
Expired Hosts in Admin Console
The Overview page of the Admin Console displays the hosts that serve Ops Manager. Each host should respond to regular pings that Ops Manager sends as part of monitoring.
Ops Manager marks a host that doesn't respond to pings after 30 minutes as expired. Processes on an expired host display in red. When the hostname for a monitored host changes, Ops Manager lists the host twice: once with its current hostname and once with its prior hostname. The hostname changes for one of two reasons:
This occurs when the hostname for a monitored host changes. The hostname changes for one of two reasons:
A cloud service provider returns an external hostname instead of an internal hostname for the same host.
A user may have changed the hostname on the host.
To remove the expired host:
Hover over the process in Servers tab of the Overview page.
Click the icon that displays.
The host remains in the host list using its new hostname.