Configuring the OpsCenter JVM
Configure the JVM parameters for the OpsCenter JVM.
opscenterd.log
The location of the opscenterd.log file depends on the type of installation:- Package installations: /var/log/opscenter/opscenterd.log
- Tarball installations: install_location/log/opscenterd.log
The OpsCenter JVM has been tuned to handle both large and small clusters with initial memory and garbage collection JVM parameters. These default values should be sufficient for most users. However, certain scenarios might arise that might require users to further tune these parameters.
There is an environmental variable
OPSC_JVM_OPTS
that can be set to override
the default parameters. Here are some parameters you might consider tuning:-Xmx
: The maximum amount of heap space available foropscenterd
to use. This default is1024m
(1GB), which should be enough for most installations. If you are managing multiple clusters or otherwise see OutOfMemory errors in opscenterd.log, try doubling the heap to2048m
(2GB). If memory-related issues continue, please contact DataStax Support for assistance.-Xms
: The initial amount of heap space that the opscenterd process uses on startup. Lower this value if opscenterd is having trouble starting.- Garbage Collection parameters (
-XX:+UseConcMarkSweepGC
,-XX:+CMSParallelRemarkEnabled
,-XX:+ScavengeBeforeFullGC
,-XX:+CMSScavengeBeforeRemark
) are not recommended for modification. However, if there is a need to modify and tune other garbage collection parameters, follow this guide https://docs.oracle.com/javase/8/docs/technotes/guides/vm/gctuning/. -Djava.io.tmpdir=/path/to/dir
: The directory that Jython uses to load and execute dynamic classes (default is the system tmp directory). Change this to another directory if you are having trouble loading OpsCenter due to permissions on the default directory.
To modify these parameters, you can simply set the environment variable
OPSC_JVM_OPTS
prior to starting
OpsCenter. Note: If OpsCenter is running while these parameters are set, a restart is
required.
Update the maximum heap size JVM argument for a tarball installation using the environment
variable:
$ export OPSC_JVM_OPTS=-Xmx2048m $ sudo service opscenterd restart
Update the maximum heap size JVM argument for a package installation in
bin/opscenter:
$ OPSC_JVM_OPTS="-server Xmx2048m -Xms1024m -Dpython.cachedir.skip=false -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$OPSC_LOG_PATH -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+ScavengeBeforeFullGC -XX:+CMSScavengeBeforeRemark -verbose:gc -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:+PrintGCCause -XX:+PrintTenuringDistribution -XX:+PrintGCApplicationStoppedTime -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=1M -Xloggc:$OPSC_LOG_PATH/gc.log $OPSC_JVM_OPTS" $ sudo service opscenterd restart